<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 測試測量 > 設(shè)計應(yīng)用 > 基于ARM的2M測試系統(tǒng)

          基于ARM的2M測試系統(tǒng)

          作者:桑占良 談世哲 時間:2008-05-23 來源:微計算機(jī)信息 收藏

            3系統(tǒng)軟件設(shè)計

          本文引用地址:http://www.ex-cimer.com/article/82975.htm

            軟件部分主要由啟動代碼的設(shè)計和應(yīng)用程序的設(shè)計,基于是復(fù)雜的片上系統(tǒng)(SOC),這種復(fù)雜系統(tǒng)里的多數(shù)硬件模塊都是可配置的,需要由軟件來設(shè)置其需要的工作狀態(tài)。因此在用戶的應(yīng)用程序啟動之前,需要有專門的一段啟動代碼來完成對系統(tǒng)的初始化。由于這類代碼直接面對處理器內(nèi)核和硬件控制器進(jìn)行編程,一般都是用匯編語言寫的。啟動代碼就是完成各種初始化工作,并引導(dǎo)進(jìn)入C程序。

            3.1 bootloader設(shè)計

            啟動代碼[5]的主要實現(xiàn)功能包括以下部分:

            (1)設(shè)置程序入口指針;

            (2)設(shè)置中斷向量表;

            (3)初始化存儲器系統(tǒng);

            (4)初始化CPU各種模式的堆棧和寄存器;

            (5)初始化目標(biāo)系統(tǒng)中要使用的各種片內(nèi)外設(shè);

            (6)初始化用戶程序執(zhí)行環(huán)境;

            (7)引導(dǎo)主應(yīng)用程

            具體實現(xiàn)的部分代碼如下:                       

            AERA Init, CODE,READONLY

            ENTRY             ;定義入口點

            B SYS_RST_HANDLER ;系統(tǒng)上電復(fù)位操作

            B UDF_INS_HANDLER ;處理未定義中斷模式

            B SWI_SVC_HANDLER ;處理軟件中斷

            B INS_ABT_HANDLER

            B DAT_ABT_HANDLER ;處理中止異常

            B .

            B IRQ_SVC_HANDLER ;處理IRQ 中斷

            B FIQ_SVC_HANDLER ;處理FIQ中斷

            SYS_RST_HANDLER

            MSR R0, CPSR      ;禁止中斷

            ORR R0,R0,#0XC0

            MSR CPSR_C,R0

            BL initcpu        ;調(diào)整PLL和時鐘

            BL initmem        ;初始化存儲器

            BL initstack      ;設(shè)置堆棧

            …                   …

            …                   …

            …                   …                                             

            B main           ; 跳轉(zhuǎn)到主應(yīng)用程序        

            3.2應(yīng)用程序的設(shè)計

            應(yīng)用程序采用C語言編寫,由其實現(xiàn)本系統(tǒng)中所需的各種功能。根據(jù)系統(tǒng)功能需求,軟件劃分為以下模塊:液晶顯示模塊、設(shè)置模塊、指標(biāo)計算模塊等部分。軟件設(shè)計思想是利用S3C2410的中斷控制整個軟件的流程。共使用4個硬件中斷來完成系統(tǒng)的功能:一個內(nèi)部硬件定時中斷,3個外部硬件中斷(鍵盤中斷、串口中斷、E1中斷)。主程序流程圖如圖2所示。

                 



          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();