色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 消費電子 > 設計應用 > 智能手機電話短信實驗模塊設計與實現(xiàn)

          智能手機電話短信實驗模塊設計與實現(xiàn)

          作者: 時間:2010-09-30 來源:網(wǎng)絡 收藏

          1.2.1 Bootloader
          Bootloader是系統(tǒng)上電后運行的第一段代碼,主要工作是完成硬件的初始化和為加載操作系統(tǒng)準備好條件。它的是依賴于硬件的,不同體系結構開發(fā)板的Bootloader變化很大。為了更好地支持目標板的硬件設備,該系統(tǒng)選擇在ADS1.2集成開發(fā)環(huán)境下開發(fā)自己的Bootloa-der。Bootloader的過程主要分為以下2個階段:
          (1)主要進行與CPU內(nèi)核以及存儲設備密切相關的初始化處理工作,這部分的代碼通常用ARM匯編指令編寫,包含在start.S文件中。通常包括一些步驟:
          ①硬件初始化工作。包括關閉看門狗;屏蔽所有中斷;設置處理器時鐘和工作頻率;初始化外部寄存器;初始化堆棧指針。
          ②為階段(2)準備RAM空間,并把階段(2)的代碼拷貝倒RAM,跳轉倒階段(2)的入口點。
          (2)完成一般的啟動流程以及提供目標板設備的驅動支持,這部分會被拷貝倒RAM中執(zhí)行,這段代碼通常由C語言來,具有較強的可讀性和移植性。
          通常包括一下步驟:
          ①通過set_gpios()函數(shù)完成通用I/0設置;
          ②通過mere_map_init(),mmu_init()函數(shù)完成內(nèi)存映射和內(nèi)存管理單元初始化;
          ③初始化MTD設備,使用mtd_dev_init()函數(shù);
          ④拷貝NAND FLASH中的Kernel映像文件和根文件系統(tǒng)映像到RAM空間中;
          ⑤跳轉到內(nèi)核的第一條指令處。
          至此,Bootloader的任務結束,接下來的任務由操作系統(tǒng)完成。
          1.2.2 操作系統(tǒng)的剪裁、移植
          操作系統(tǒng)負責對整個的外圍設備進行管理和對各個軟件任務進行調(diào)度。這對于而言是非常重要的。操作系統(tǒng)采用開源、免費的Linux,基于嵌入式Linux 2.6版本進行移植,主要移植過程包括建立開發(fā)環(huán)境、下載內(nèi)核源碼、修改配置文件、配置內(nèi)核、編譯內(nèi)核、編譯幾個步驟,因為移植的過程大致相同,這里只做簡單介紹:
          (1)宿主機上的交叉編譯工具采用arm-linux-gcc-3.4.1 ;
          (2)修改commom-smdk.c文件,為NANDFLASH設置分區(qū);
          (3)修改配置文件fs/Kconfig,使內(nèi)核支持啟動時掛載devfs;
          (4)配置內(nèi)核;
          (5)編譯內(nèi)核與,用Busy-box工具制作yaffs文件系統(tǒng)。
          1.2.3 嵌入武GUI Qtopia的移植
          嵌入式GUI用于開發(fā)應用程序圖形界面,本文采用Trolltech公司的Qtopia作為圖形界面庫,采用版本是Qtopia-core-opensou rce-src-4.4.3。移植的主要工作有:
          (1)修改qmouselinuxtp_qws.h文件,使Qtopia支持觸摸屏;
          (2)配置、編譯、安裝;
          (3)拷貝相關的庫文件到開發(fā)板,并設置環(huán)境變量。

          2 應用程序
          應用程序是最基本也是最核心的應用。應用程序的主要工作包括:電話短信應用程序的流程、通信和應用處理器的串口通信以及電話和短消息應用程序界面開發(fā)。
          2.1 電話/短信應用程序流程
          應用程序采用定時器函數(shù)來控制整個程序的流程。定時器每200 ms觸發(fā)1次。
          新電話、新短信的檢測流程如圖3所示,應用程序初始化需要對GSM/GPRS通信模塊與應用處理器之間的接口進行初始化,此外還要定義1個200 ms觸發(fā)的定時器。系統(tǒng)初始化完畢之后,定時器觸發(fā)開始讀串口數(shù)據(jù)進行判斷。當串口無數(shù)據(jù)時,等待下一次定時器出發(fā);當串口有數(shù)據(jù)時,將串口的數(shù)據(jù)進行判斷;當數(shù)據(jù)中有新短信提示符時,按照PDU短信的解碼格式對該短信進行解碼,并調(diào)用UI界面提示用戶新短信到達,詢問用戶是否閱讀;當數(shù)據(jù)中有新電話提示符時,調(diào)用UI界面,詢問用戶是否接聽。

          本文引用地址:http://cafeforensic.com/article/166511.htm



          評論


          相關推薦

          技術專區(qū)

          關閉