新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于的新一代公用信息終端ARM設計

        基于的新一代公用信息終端ARM設計

        作者: 時間:2012-08-14 來源:網絡 收藏

        初始化存儲器系統:系統集成有MMU來管理內存空間。

        改變處理器模式、狀態:本系統讓處理器一直處于超級用戶模式。

        初始化C語言所需的存儲器空間:在初始化期間應將系統需要讀寫的數據和變量從

        FLASH拷貝到SDRAM里。并要對一些全局的數據進行初始化,如BSS數據段。

        跳轉到C程序入口:啟動代碼跳到C程序的入口,開始一段NUCLEUS操作系統的初始化和應用程序初始化的代碼。

        啟動代碼的流程框圖如圖3。


        3.2 ISDN協議棧的移植
        信息終端通過ISDN網接入INTERNET,因此必須在操作系統之上移植ISDN協議棧。本文采用的ISDN用戶-網絡接口協議棧和X.25協議棧是來自 ISDN-BRICKS的商用軟件包,它滿足ITU-T的I.430、Q.921、Q.931、X.25和X.31以及相應的中國標準[1~5]。

        ISDN和X25協議棧軟件包是一個按照相關標準編寫的通用軟件包。該軟件包按多進程/多任務操作系統環境設計,支持不同的實現環境,如操作系統、CPU和編譯系統等。一個多進程/多任務操作系統環境一般必須具有以下功能:進程/任務調度、進程/任務之間的通信、共享資源的互斥訪問、內存管理以及定時管理。但是,即使同是多任務操作系統,也還存在著實現機制和函數調用句法的不同。NUCLEUS雖是一個能提供上述功能的實時操作系統,但通用的ISDN和X25協議棧軟件包必須經過移植,才能在NUCLEUS操作系統下運行。因此,ISDN和X25協議棧軟件包的移植工作必須在以下幾個方面進行:

        (1)將創建SERVER移植為創建NUCLEUS的任務;

        共享資源,如消息塊、數據緩沖區塊、定時管理單元數據塊以及動態分配內存塊;

        (3)將對通用郵箱的收發操作移植為對 NUCLEUS的消息隊列的收發操作;

        (4)將對共享資源的鎖定管理移植為對 NUCLEUS的信號燈的管理;

        (5)將定時管理模塊移植為NUCLEUS的定時超時函數;

        (6)將通用的禁中斷操作移植為NUCLEUS的禁中斷操作。

        3.3 應用程序設計要點
        應用程序包括主控模塊,廣告模塊,維護模塊,語音模塊,輸入法,瀏覽器等。

        在設計過程中要注意以下幾點:

        注意內存釋放:內存申請一定要釋放,特別是程序在對錯誤進行處理的時候。

        特定地址保護:嵌入式操作系統并不像WIN DOWS操作系統那樣對一些重要的地址都作了保護。因此在寫應用程序時要特別注意指針的運用,不能讓非法指針出現。

        注意多任務的環境:因為在嵌入式系統中每個模塊都有自己的任務,當前任務的運行不能影響其它模塊。

        4 結束語

        本文所介紹的信息終端在硬件上具有性能穩定,功耗極低,接入方式簡便,使用方便的特點。在操作系統移植和驅動程序的開發上與硬件緊密結合,具有良好的入網兼容性,人機交互良好等特點。目前,該系統已經成功應用于全國大部分的電信公話局,總裝機達兩萬臺,取得良好經濟和社會效益。

        參考文獻:
        [1] Datasheet.Cirrus Logic, Dec., 1999.
        [2] Stallings W.Networking standars : a guide to OSI,ISDN,LAN, and MAN standars. Addison-Wesley , 1993
        [3] ISDN-BRICKS System Management Interface Guide. NETBRICKS SA, 2000.9.
        [4] Nucleus PLUS Reference Manual Accelerated Technology, Inc. 2001. [5] 王京林 岳春生 張海英 ARM7在嵌入式應用中啟動程序的實現[J],計算機與信息技術, 2000.10.


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 庆云县| 黄山市| 石柱| 河北区| 三亚市| 锦屏县| 志丹县| 双柏县| 阳新县| 新津县| 安化县| 汪清县| 普兰店市| 昌宁县| 安阳市| 连云港市| 滁州市| 山阳县| 界首市| 澎湖县| 怀宁县| 镇康县| 陵川县| 洪江市| 巫山县| 特克斯县| 蒙阴县| 贡嘎县| 乳源| 蛟河市| 洪泽县| 凤阳县| 梅州市| 松滋市| 全州县| 宣城市| 长岭县| 姜堰市| 新平| 西安市| 罗田县|