有个问题,有时候中断函数修改后,发现程序无法运行。经过研究发现,原来正常的程序,只是在中断程序的任意位置加上nop()语句,就不正常。
而且,更奇葩的是,加上nop()的个数为偶数,就正常,而奇数就不能运行。
然后我试试使用__attribute__((aligned(x))))将中断函数进行地址对齐,发现也能影响MCU的运行。
这个不能运行是指MCU上电后,不断复位。
请问下技术人员,这个问题是怎么回事,怎么避免?
2022-8-25 09:59:03
这个跟量多量少没什么必然的联系,理论上翻译到底层都是指令。
中断代码长,建议可以整理一下中断的执行逻辑,看看是不是有漏洞。还有如果使用Tmos,也要考虑中断对于Tmos任务的影响。
这个跟量多量少没什么必然的联系,理论上翻译到底层都是指令。
中断代码长,建议可以整理一下中断的执行逻辑,看看是不是有漏洞。还有如果使用Tmos,也要考虑中断对于Tmos任务的影响。
举报