基于瑞萨QzROM单片机的EFT抗干扰措施
3. 优化程序结构设计
•指令冗余:
(1)关键位置的多字节指令之后插入2个以上的单字节指令(NOP),避免后面的指令被当作操作数;
(2)跳转指令(JMP,JSR,BRA)和返回指令(RTI,RTS)前插入两条NOP,避免程序乱飞。
•软件陷阱:
(1)未用中断向量
指向一个错误处理程序,防止干扰激活未用中断使程序跑飞;
(2)在未使用的程序空间,ROM中存储表格后面,程序区重要的子程序之间加入跑飞处理程序:
Subroutine: ;子程序
RTS
NOP
NOP
B RunAway
RunAway: ;跑飞处理子程序
RTS
•结合软件使用看门狗,见图6:
(1)MCU正常工作时,定时给看门狗定时器初始化;(2)当MCU跑飞时,由于没有在看门狗定时周期内初始化,看门狗定时器计数溢出产生复位信号,使MCU复位;(3)看门狗初始化设置:①无中断使用时,主程序循环中初始化看门狗;②使用中断,在中断程序中刷新某一变量,主程序中判断此变量变化情况,进而执行初始化看门狗操作,并初始化此变量;③多个中断的情况,根据相互的关系任选一中断刷新变量,主程序作判断。
措施总结
• 优化PCB布线:提升抗干扰性能最有效的措施——设计开发优先考虑,优先级最高。
• I/O处理:MCU使用的推荐配置——使用推荐配置获得最佳性能。
• 软件措施:可以部分解决干扰问题——补救方法,例如量产后降低成本发现的问题,推荐重新考虑前两种方法。
评论