新聞中心

ARM軟件程序設(shè)計(jì)

作者: 時(shí)間:2012-11-22 來(lái)源:網(wǎng)絡(luò) 收藏
  1. 流程

  系統(tǒng)的流程如圖1所示。系統(tǒng)中主要有定時(shí)器中斷、串口輸入中斷、串口輸出中斷、接口中斷、鏈路中斷5種中斷。

  圖1 申斷處理流程圖

  其中:

  ·定時(shí)器中斷模塊主要是為操作系統(tǒng)提供時(shí)鐘基準(zhǔn)。

  ·串口輸入和輸出中斷模塊主要給用戶提供接口,方便程序的下載與調(diào)試。

  ·接口中斷模塊負(fù)責(zé)每2ms與總線上其他板卡通信一次。

  ·鏈路中斷模塊也是每隔一段時(shí)間處理一次鏈路的數(shù)據(jù),它的任務(wù)最重。

  因此,應(yīng)該將鏈路中斷模塊設(shè)置成∏Q快速中斷方式,其他模塊都設(shè)成IRQ普通中斷方式。

  2. 中斷程序設(shè)計(jì)

  正確、恰當(dāng)?shù)厥褂弥袛喑绦蚩梢允骨度胧较到y(tǒng)應(yīng)用運(yùn)行得更有效率,下面給出中斷測(cè)試的部分匯編源程序。測(cè)試程序開(kāi)啟T】定時(shí)器中斷進(jìn)行測(cè)試,通過(guò)中斷服務(wù)程序使與PD0連接的LED指示燈閃亮。

 ?。?)中斷服務(wù)程序

  3. 程序優(yōu)化

  將中斷處理盡可能搬到內(nèi)部RAM或SDRAM中,以前的中斷處理函數(shù)代碼放在Flash中,數(shù)據(jù)放在SDRAM中,F(xiàn)lash速度遠(yuǎn)慢于SDRAM,這是限制中斷處理速度的一大瓶頸?,F(xiàn)在可以通過(guò)改變編譯配置,將所有的中斷處理函數(shù)都復(fù)制到內(nèi)部RAM或者SDRAM中。一股情況下,內(nèi)部RAM速度要快于外部的SDRAM,因此,可以修改以下編譯配置文件。

  如表所示是改編譯環(huán)境前后的中斷處理速度的對(duì)比,可是看出在SDRAM中代碼的執(zhí)行速度比在Flash中大約快4倍。

  表 中斷處理速度優(yōu)化前后對(duì)比



關(guān)鍵詞: ARM 軟件程序 中斷處理

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉