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