AT91RM9200 PIO中斷在短波通信系統中的應用
2)調整檢測時鐘 PIO通過PMC產生的高速時鐘檢測PIO端口線上電平變化,通過調整PIO檢測時鐘至滿足W>T>W/2,其中,W為負脈沖寬度,T為采樣時鐘周期,可解決脈沖中斷信號的二次響應問題。本文引用地址:http://www.104case.com/article/157504.htm
如圖7所示,調整檢測時鐘周期,使負脈沖的低電平階段只有一個采樣點,在3個上升沿檢測到電平為1→0→1。此時對檢測時鐘的要求為:T>W/2。如果繼續加大檢測時鐘周期,使之大于負脈沖寬度,則可能檢測不到電平變化。所以,檢測時鐘周期要求TW。
2.4 實驗結果
系統中FPGA產生的脈沖中斷信號寬度為200 ns,AT91RM9200主時鐘頻率為59 MHz,PIO檢測時鐘與主時鐘頻率相同為59 MHz。
采用延時讀取ISR方法,在中斷服務程序中延時20個主時鐘周期(320 ns)后,讀寄存器PIO_ISR,成功實現單次響應脈沖中斷信號,符合設計要求。
采用調整檢測時鐘的方法,將檢測時鐘調整為8 MHz,滿足W>T>W/2要求,成功實現單次響應脈沖中斷信號,符合設計要求,驗證理論分析的正確性。
2.5 需要注意的問題
1)軟件查詢法原理較簡單,但仍會2次進入中斷服務程序,占用一定的系統資源;
2)延時讀取ISR的方法適應能力較強,可通過軟件代碼的處理適應不同的系統;
3)調整PIO電平檢測時鐘的方法由于需要對比外設中斷信號時鐘頻率和AT91RM9200電平檢測時鐘頻率關系,不一定在所有外設上都能夠實現需要的頻率對比關系,應用范圍受到一定限制。
3 結束語
AT9lRM9200通過配置PIO引腳為中斷信號輸入來提供較強的系統擴展能力。PIO中斷的檢測采用連續時鐘檢測電平變化的方式實現。在處理脈沖形式中斷信號時會由于中斷二次響應問題產生較大的系統開銷,降低系統的實時性。
通過深入分析系統硬件結構和中斷處理流程,將軟硬件特性相結合進行設計,創新性地提出了延時讀取中斷狀態寄存器和調整檢測時鐘2種優化解決方案,成功避免了脈沖中斷二次響應的問題,并在軟件查詢方法的基礎上大幅降低系統中斷服務的開銷,確保滿足短波無線通信系統業務功能的實時性要求。
評論