

钢材质检
更多


VSCode CMake工作流
Foreword 之前看到CMake有这么多选项,感觉不简单,还是看下别人在这里设计了多少东西 CMake 整体来说CMake遵循这样一套结构 操作-操作预设(如果有的话)-操作目标(如果有的话) 比如 Configure-ConfigurePreset Build-BuildPreset-Build_Target Launch-Launch_Target Test-TestPreset Pack-PackPreset Workflow-WorkflowPreset Configure 这个不用多说,最基础的配置了 Kit Kit是作为configure中的一个环境,也就是编译工具链的配置 同时默认的CMake把工具链和生成配置类型,这个区分开了,实际我之前做的demo也区分..
更多

VSCode CMake Debug
Foreword VSCode CMake Debug 嵌入式MCU有好几种方案 Cortex-Debug OpenOCD https://elmagnifico.tech/2023/07/22/Vllink-DapLink-Debug/ OpenOCD,需要专门的调试工具,ST-Link或者这里的VLink,支持CMSIS-DAP的 增加而一个build做为前置任务,然后启动openodcd tasks.json { // See https://go.microsoft.com/fwlink/?LinkId=733558 // for the documentation about the tasks.json format "version": "..
更多正则获得国际电话前缀
2013年的时候喷过ITU这个国际电话号码,前缀是变长的问题 今天遇到问题,需要按国际区号初步分析归属地和供应商,stackoverflow和AI给的都很渣,写了个正则: re.compile(r"""\+ (1 # north america |(?: # 3 digits 21|22|23|24|25|26|29|35|37|38|42| 50|59|67|68|69|80|85|87|88|96|97|99)\d |[2-9]\d) # two digits """, re.VERBOSE) +1 开头的是北美,然后依次寻找3位的,再匹配2位的。 +7 本来是苏联的,现在给 哈萨克斯坦 和 俄罗斯 了,就当成两位的判定吧。
更多

Kconfig与CMake初步模块化工程3
Foreword 本篇解决一下CMake和VScode怎么整合到一起 VSCode 适配VSCode VSCode只需要一个CMake Tools,不需要安装其他CMake插件 Kconfig格式化和代码高亮,还是用nRF的好一些,另外那个Kconfig会识别出错 缺少 Select a Kit vscode cmake 缺少选择Select a Kit,主要原因是目录已经有了CMakePresets.json,有预设的情况下不会给你选kit,这个问题找了半天,发现官方文档就写了 但是你搜索的命令又有,只能说官方弄的有点乱,而且本身使用预设和可以选kit我觉得也不矛盾 CMake:Scan for compiles 去掉预设文件以后,这个kit果然就有了,就可以正常选择了..
更多

一日一技:如何实现临时密码?
我买的房子今天交房了。开发商配的门锁是某品牌的智能门锁,它可以使用指纹开锁,也可以使用密码开锁。在使用手机跟门锁配对以后,可以远程在手机上生成临时密码。临时密码只能使用1次,并且在生成的30分钟内有效。这个功能可以方便装修人员进出又不用担心泄露密码。因为新房子还没有通网,所以门锁肯定是无法连接互联网的。而装修人员给我打电话要临时密码时,我在公司,离家几十公里外,门锁也不可能跟手机通信。那么问题来了,门锁是怎么验证这个临时密码合法的?今天我一直在想这个问题,目前有一些思路,但无法确定。所以发出来跟大家一起讨论一下它的实现方法。已知:手机App只有第一次跟门锁配对时,会通信,之后就完全不会有任何通信门锁无法连接外网无论我在任何地方,手机上都能生成临时密码。门锁输入临时密码就能解锁临时密码只能使用一次,之后就会..
更多

Kconfig与CMake初步模块化工程2
Foreword 继续上篇,解决一些未完成的问题 遗留问题 模块化 Linux内有一些模块化的操作,但是如果直接模仿,会发现无效。 比如类型中的tristate是三状态,比如y、m、n,表示启用模块、动态加载 、禁用,三种情况,但是如果直接像下面这么写是无法启用的,你会看到怎么设都是启动和禁止,没有动态加载的选项 menu "New Module Configuration" config NewModule tristate "NewModule" choice prompt "Feature selection" tristate config Feature1 tristate "..
更多

Kconfig与CMake初步模块化工程
Foreword 使用CMkae+Kconfig最小化的创建一个可以模块化的工程,可以适用于大部分MCU类型的工程,并且有一定程度的扩展性。 需求环境 环境需要的东西比较多,要安装4个独立程序才行,对比IDE一键安装,是复杂了一些 Arm GNU Toolchain https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads Arm交叉编译的环境,这个是编译的必需品,选择10.3的经典版本,实际上选择最新版(13.3和14.2)也没问题 Version 10.3-2021.10 https://developer.arm.com/tools-and-software/open-source-softwar..
更多

openclash搭配cloudflare优选ip的方案
几年前我整了一个国外的垃圾VPS(没错,就是scaleway,详见https://blog.yunyuyuan.net/articles/6167),本来它连ipv4都没有,套上warp后成为了一个可用的中转机器,速度很顶: vps自身测速 我给它搭建了v2ray server,它自带ipv6可以直连,但是直连的速度惨不忍睹: 直连后测速 于是我又给它套上了cf的cdn(就是打开云朵),这时候速度时好时坏,虽然比直连好多了,但是依旧不够用: 打开cf云朵后测速 开始教程本着不折腾完美就不罢休的精神,我开始研究变本加厉地白嫖cf 已知cloudflare在全球都有线路入口,随便连上一个都能用,cf只是在dns上做文章。但是具体dns解析到哪个入口ip是不可控的,一种简单的方法就是手动找到速度最快的ip,然后..
更多分享一些平时我用到的常用命令, netstat、ffmpeg、rsync、mysqldump、dig、ip、iptables、
磁盘相关,挂载信息,格式化网络相关设置代理服务器查看网络连接情况, netstat,端口使用 lsof查看域名解析情况, dig nslookupip工具 查看网卡,查看路由表,代替ifconfig 和 routeiptales ip封禁和流量转发mysql 相关语句和命令语句,添加用户,设置权限,表空间mysqldump,备份bash 一些语法条件判断, if循环 while其他工具rsync同步文件,一般系统自带ffmpeg 视频剪辑,裁剪打码字幕倍速合并等,真神,这个需要额外安装进程信息查看, ps, pmap, lsofJAVA 内存分析, jcmd jstat jmap jhat分享一些我平时用到的常见命令都是系统自带命令,其实命令很简单,但是一般也不记,属于要用时也要查一下的也可能是年纪大了,..
更多