- 博客(15)
- 资源 (4)
- 收藏
- 关注
原创 Kconfig与CMake初步模块化工程3
默认的 status bar 实在是冗余太多了,从config,build,pack,ctest,cpack,workflow,很多用不上的我就给他隐藏了,而CMake Tools也支持自定义。的操作,这个会生成每个文件的编译命令,如果C++补全或者是高亮读取了这个文件,那么他就知道具体这个文件编译的时候使用了什么宏,那么对应宏是亮起还是灰掉,他就能智能识别。如果我们有多个配置,那就可以有多个配置不同的宏,然后通过右下角去切换C/C++的配置项,从而切换整体的宏定义。
2025-03-04 16:21:20
589
原创 Kconfig与CMake初步模块化工程2
是三状态,比如y、m、n,表示启用模块、动态加载 、禁用,三种情况,但是如果直接像下面这么写是无法启用的,你会看到怎么设都是启动和禁止,没有动态加载的选项。但是kconfiglib有拓展,它支持rsource,顾名思义,他就是相对路径,从当前kconfig路径开始算,上级路径会自动帮你引用。对应的模块内的NewModule.cmake,就可以写成这样,将自己内部的文件加入,如果还需要套娃,那么继续使用上面的方式即可。这样就有效解决了,未知新模块需要写所有路径的问题,只需要写好引用下层路径即可。
2025-03-04 16:20:03
835
原创 Kconfig与CMake初步模块化工程
Arm交叉编译的环境,这个是编译的必需品,选择10.3的经典版本,实际上选择最新版(13.3和14.2)也没问题14.2.Rel1 版本安装时勾选加入环境变量,省的手动添加。
2025-02-24 09:27:38
658
原创 宏管理工具之lite-manager
在不同的使用情景下,lite-manager带来的效果还是有一些差别的,假如你是一个对工程特别熟悉的人,那么对应的lm.cfg或者是proj.cfg中的宏都是可以随手改的。但是并不是每个做工程的人都对整个宏特别熟悉,此时就会出现给了一个不熟悉的人去修改,那么他就得一一对照整个lm.cfg里的约束关系和宏定义的可能,再去设置proj.cfg,如果只是几个宏,那随手就改了(几个宏为什么还要用lm?lite-manager 总体还是挺小的,显示也还凑活,代码是开放的,完全可以自定义一些。
2025-02-18 18:29:37
1116
原创 QEMU模拟运行FreeRTOS
挺简单的,只是问题QEMU支持的现成芯片、板子比较少,需要自己去找对应的开发板,甚至自己开发,有点麻烦。官方QEMU支持的STM32不是很多,而且用起来很麻烦,需要安装两个环境,而且很容易出问题。这个QEMU环境需要重新编译,耗时比较多,或者是从Ubuntu里调用,倒是不用打包成exe。同时RT-Thread,他们的IDE里也集成了专属的QEMU版本,也可以快捷完成模拟。所以有人打包了QEMU,并且加入了比较多的ST的开源板子,支持的型号比较多。添加新的环境变量,把刚才安装的路径加进去。
2025-02-18 18:28:51
761
原创 配置管理工具之kconfig
看了一眼nRF Kconfig,源码竟然还是python,也就是跑这个必须有对应的python环境,否则还跑不起来,怪不得那个工具链安装好久,原来在下python。实际把prj.conf直接复制到sample_2中,Kconfig就可以打开了,但是发现打开的还是untitled的config,而不是sample_2的。上面这个配置还少了一点,生成的都是同一个文件,同一个目录,互相覆盖,其实可以参考OpenWRT,每次不同配置生成都在不同文件夹里,然后对应文件名就更好了。
2025-02-13 09:56:40
925
原创 QEMU模拟运行FreeRTOS
挺简单的,只是问题QEMU支持的现成芯片、板子比较少,需要自己去找对应的开发板,甚至自己开发,有点麻烦。官方QEMU支持的STM32不是很多,而且用起来很麻烦,需要安装两个环境,而且很容易出问题。这个QEMU环境需要重新编译,耗时比较多,或者是从Ubuntu里调用,倒是不用打包成exe。同时RT-Thread,他们的IDE里也集成了专属的QEMU版本,也可以快捷完成模拟。所以有人打包了QEMU,并且加入了比较多的ST的开源板子,支持的型号比较多。添加新的环境变量,把刚才安装的路径加进去。
2025-02-13 09:55:03
774
原创 配置管理工具之kconfig
看了一眼nRF Kconfig,源码竟然还是python,也就是跑这个必须有对应的python环境,否则还跑不起来,怪不得那个工具链安装好久,原来在下python。实际把prj.conf直接复制到sample_2中,Kconfig就可以打开了,但是发现打开的还是untitled的config,而不是sample_2的。上面这个配置还少了一点,生成的都是同一个文件,同一个目录,互相覆盖,其实可以参考OpenWRT,每次不同配置生成都在不同文件夹里,然后对应文件名就更好了。
2025-02-07 15:47:20
752
原创 Zephyr build 架构
在untiled下面新建Kconfig文件,输入以下内容default nhelpdefault nhelpdefault nhelpdefault nhelpintendmenu# 注意一定要引用这个,不然加不进去,并且CMake不了重新build一下,然后打开Kconfig GUI就能看到对应显示了这里比较麻烦的地方就是这个工程每次重新打开,这个GUI就打不开了,必须要点开nRF Connect才能重新打开,非常难受。
2025-02-07 15:26:12
874
原创 SES Threads 自定义JS脚本
需要注意Threads Script用的是Java Script,而不是Jlink Script(前面查了半天发现不对),虽然都简称成了js,但是Jlink Script应该只有Jlink的一些批处理程序才会使用这种方式写脚本。虽然官方文档里有Echo,类似console.log,但是试了一下在js这里写这个内容是完全无效的,可以正常执行,但是结果不知道输出到哪里去了。最近又遇到了一些奇怪的bug,意外发现调试手段上还是有所欠缺,而SES的js脚本可以做更多自定义的工具,可以进一步改造方便疑难杂症使用。
2025-02-06 11:24:38
324
原创 VSCode Kconfig插件
深入调研以后发现,kconfig还有qt的版本,那理论上也有windows的版本,qt转windows还是比较简单的。kconfig-frontends似乎长年不更新,而KconfigLib里有一些新特性可以简化Kconfig。如果使用guiconfig,可以看到界面是类似QT的形式了,可以直接选择而不是嵌入在命令行中了。目前看到各个框架似乎都抛弃了kconfig-frontends,迎接KconfigLib去了。正常情况下可以通过这种方式调用menuconfig,从而显示kconfig内容。
2025-02-05 10:02:18
714
原创 5.8G各种类型的天线测试数据对比 增益和驻波比
天线1天线2天线3天线4天线5/6天线1天线2天线3天线4FreqEffiGainFreqEffiGainFreqEffiGainFreqEffiGain(MHz)(%)(dBi)(MHz)(%)(dBi)(MHz)(%)(dBi)(MHz)(%)(dBi)515077.43.65515044.06-0.49515037.73-2.39515058.680.4516073.873.37516040.65。
2024-12-03 17:40:54
1417
原创 穿越机通用调测作业指导书
V1.02024年11月27号首版目录A26调测指导书目的本作业指导书包括A26无人机的技术要求,成品与半成品调试方法,整机老化检验规则,是指导正确生产、调试、并作QC检验的依据。技术要求表 1产品外观示意图测试仪器设备表 2测试仪器清单序号名称规格数量备注1电脑1台2万用表1台3稳压电源1台仪表、仪器的安全性飞控和电调升级和参数配置提示:如未烧录成功请重复步骤“①-⑤”,或联系研发处理。每次飞行前,请擦除闪存。
2024-12-03 17:31:17
1841
原创 P70PRO执法仪固件升级流程
第一步:打开电脑安霸烧录工具,配置参数和升级固件,升级固件查找,选择bin文件第二步:执法仪处于关机状态,按着重点标记键不松手,通过USB连接执法仪,设备状态为就绪后点击箭头所指按钮。如下图:第三步:软件升级成功,等待重启界面停留10秒左右,断开USB,用顶针按一下复位键孔,长按电源键开启执法仪,查看是否升级成功,如果没有成功,请重新执行升级。备注:复位键位置图
2024-07-24 10:36:22
762
2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人