boot第一步:keil配置第二步:生产bin文件$K\ARM\ARMCC\bin\fromelf.exe --bin --output=.\out\bin@L.bin !L
起因,由于cx32l003没有DMA功能,所以采取软模串口空闲中断(定时器实现)。 每次串口空闲时,发送信号量给指定线程处理刚刚接收到数据。 处理数据时,需要经过以下操作:关闭串口中断,终止串口接收处理数据打开串口中断,打开串口接收经过压力测试,发送串口"失灵"了.通过仿真得知,串口接收中断标志位置1,导致一直进入中断服务,无法退出。 通过对官方sdk分析。CX32L003_HAL_Driver\
新建download.jlink,输入以下内容erase
通过keil ide 把编译换成AC6,发现flash写入失效了,通过仿真发现,栈数据全部异常了(错位)。于是找到了uint64_td导致的异常。先看看修复内容:
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号