大家好
2025年04月29日
今天开始了 BMS 系统的软件代码部分的搭建,计划是分成三层:硬件驱动,AFE 层和系统应用层。
第一步肯定是先把底层的 IIC 通信调通,CG861xx 的 IIC 通信和 TI 的 BQ769X0 系列一样,IIC 里面有一个 CRC8 的校验,因此调试起来不是很直观,因此想先把调试打印的接口建立好。
2025年04月29日
2. 开发工具使用问题
2.1 jlink不能下载程序
2.2 GD32E103XX下载程序出现Invalid ROM Table问题?
2.2 the selected device "GD32E103C8" is unknown to this version of the jlink software,使用keil仿真jlink找不到型号?
2025年04月29日
说完位运算,再说说其他的运算符。+ - * / 不用多说,应该都比较清楚,但是还是要注意的就是使用 / 进行整型变量的计算时,它不像平常一样可以得到小数的,而只有整数部分,并没有小数。还有就是各个运算符的顺序,如果不确定哪个先运算,不如加上括号()吧,不用担心效率的问题,因为加了括号只是告诉编译器该如何处理这条语句而已。另外使用#define定义一些表达式的时候也最好加上括号,因为你不能确定你这个宏定义会在什么地方使用,为了安全起见还是加上比较好,这些内容在宏定义小节将进行更详细的说明。
2025年04月29日
工欲善其事,必先善其器。调试器在嵌入式开发调试中的重要性不言而喻,单步、断点和监察的效率远高于串口打印。但是,调试器对于一般开发人员往往是一个黑匣子。今天我们就来谈谈调试器的原理,顺便把自己的几类调试器接线和注意事项记录下来,以便查找。我常常要面对几个方案,而各个方案的调试器都不一样,接线有时连自己都记不住。所以这个帖子应值得嵌入式开发工程师收藏。
一、嵌入式调试多样性
我们先来回想调试的场景,思考一下这几个问题:
1. ARM开发环境有Keil、IAR、ADS等等,我们发现这几个平台都能用同一个调试器去调试ARM。
2025年04月29日
在单片机开发中,调试信息的打印通常依赖于串口,但若未预留串口,JLINK调试器的RTT(Real-Time Transfer)功能可以成为替代方案。RTT通过JLINK调试器实现目标设备与调试主机之间的实时通信,支持日志输出和数据采集,且对系统性能影响较小。