中级会员
 
- 积分
- 331
- 金钱
- 331
- 注册时间
- 2019-5-5
- 在线时间
- 98 小时
|

楼主 |
发表于 2020-5-1 19:41:04
|
显示全部楼层
本帖最后由 charge 于 2020-5-1 20:08 编辑
在选择One ELF section per Function以及使用stlink烧录(设置已选择reset and run)的情况下,方法1,2可以让LED闪烁,不需要按复位。方法3点击Load按钮下载程序后,现象:延时了一会直接亮绿灯并保持在绿灯,按一下复位LED才开始闪烁。因为在调试模式下现象和数值都正常,所以无法使用watch来看tim2_flag的值,最后实测tim2_flag的数值变成了254。在不选择One ELF section per Function以及使用stlink烧录的情况下,方法123都可以让LED闪烁,不需要按复位
百度One ELF section per Function,和汇编相关了有点看不懂,说是为了冗余函数的优化
尝试解决:使用软件仿真和硬件仿真,打断点在51行和56均能够进入,无法通过仿真重现。
问题:为什么One ELF section per Function优化后,下载那一下,tim2_flag会变成254,导致现象不正确,而且复位后又正常了
|
|