基于瑞薩QzROM單片機的EFT抗干擾措施
3. 優(yōu)化程序結(jié)構(gòu)設(shè)計
•指令冗余:
(1)關(guān)鍵位置的多字節(jié)指令之后插入2個以上的單字節(jié)指令(NOP),避免后面的指令被當(dāng)作操作數(shù);
(2)跳轉(zhuǎn)指令(JMP,JSR,BRA)和返回指令(RTI,RTS)前插入兩條NOP,避免程序亂飛。
•軟件陷阱:
(1)未用中斷向量
指向一個錯誤處理程序,防止干擾激活未用中斷使程序跑飛;
(2)在未使用的程序空間,ROM中存儲表格后面,程序區(qū)重要的子程序之間加入跑飛處理程序:
Subroutine: ;子程序
RTS
NOP
NOP
B RunAway
RunAway: ;跑飛處理子程序
RTS
•結(jié)合軟件使用看門狗,見圖6:
(1)MCU正常工作時,定時給看門狗定時器初始化;(2)當(dāng)MCU跑飛時,由于沒有在看門狗定時周期內(nèi)初始化,看門狗定時器計數(shù)溢出產(chǎn)生復(fù)位信號,使MCU復(fù)位;(3)看門狗初始化設(shè)置:①無中斷使用時,主程序循環(huán)中初始化看門狗;②使用中斷,在中斷程序中刷新某一變量,主程序中判斷此變量變化情況,進(jìn)而執(zhí)行初始化看門狗操作,并初始化此變量;③多個中斷的情況,根據(jù)相互的關(guān)系任選一中斷刷新變量,主程序作判斷。
措施總結(jié)
• 優(yōu)化PCB布線:提升抗干擾性能最有效的措施——設(shè)計開發(fā)優(yōu)先考慮,優(yōu)先級最高。
• I/O處理:MCU使用的推薦配置——使用推薦配置獲得最佳性能。
• 軟件措施:可以部分解決干擾問題——補救方法,例如量產(chǎn)后降低成本發(fā)現(xiàn)的問題,推薦重新考慮前兩種方法。
評論