隨著嵌入式技術和通信技術的發(fā)展,在手機領域,智能手機已成為手機發(fā)展的主流趨勢。目前在智能手機領域,從處理器選型、操作系統(tǒng)選擇以及應用程 序開發(fā)都是研究的熱點。在高校計算機相關專業(yè)的課程中也越來越多地涉及到智能手機的相關內容,越來越多的學生也都投入到智能手機的學習和開發(fā)陣營中來。因 此,為這些學生提供相關的實驗設備顯得很必要。本文提出基于三星S3C2410芯片為核心構建智能手機硬件實驗平臺,并結合無線通信模塊實現智能手機電話短消息功能。為學生進行智能手機相關的實驗提供了平臺,通過本平臺,學生可以自己動手完成智能手機設計時的各種軟件開發(fā),改變了傳統(tǒng)的驗證式的實驗平臺模式,有利于學生創(chuàng)新能力的培養(yǎng)。
1 智能手機軟硬件實驗平臺設計
手機的硬件實現方式主要有3種:
(1)只用基帶芯片,通常稱作功能手機;
(2)基帶芯片加協(xié)處理器,這類產品是在功能手機的基礎上增強了多媒體處理功能;
(3)基帶處理器加應用處理器。這是智能手機所采用的設計,基帶處理器用于通信,應用處理器用于多媒體和其他應用。
在設計智能手機硬件平臺時,需要注意以下幾個方面:
(1)應用處理器應具有足夠高的主頻用以保證系統(tǒng)的運行速度,使各種應用能夠運行暢通;
(2)系統(tǒng)應有足夠的內存空間用以保存應用程序和用戶數據;
(3)具備良好的人機交互界面,用戶可以方便地進行操作?;鶐幚砥餍阅芊€(wěn)定,保證用戶實時通信。
1.1 硬件平臺設計
硬件主要包括調試接口、存儲系統(tǒng)、GSM/GPRS通信模塊、人機交互模塊。核心控制器芯片采用三星公司的S3C2410處理器,頻率穩(wěn)定運行 在203 MHz.作為實驗平臺,完成智能手機的基本功能,不要求大量數據處理,因而203 MHz的主頻能夠保證系統(tǒng)的運行速度。系統(tǒng)采用64 MB SDRAM和64 MB NANDFLASH作為存儲系統(tǒng),從而保證系統(tǒng)和用戶的存儲空間。通信上,應用處理器通過UART2連接基帶處理器即GSM/GPRS通信模塊,GSM /GPRS模塊采用SIMCOM公司的SIM300模塊,該模塊具備完善的GSM/GPRS三頻/四頻解決方案,支持GSM通話及短消息收發(fā)和 GPRS數據傳輸,可以方便地通過AT命令進行控制。系統(tǒng)通過LCD顯示圖形操作界面,采用觸摸屏代替?zhèn)鹘y(tǒng)鍵盤操作,界面更友好,操作更方便。同時提供擴 展接口用于學生擴展智能手機的其他功能,如利用以太網接口實現網頁瀏覽等。整個系統(tǒng)的硬件框圖如圖1所示。
1.2 系統(tǒng)軟件平臺設計
系統(tǒng)軟件平臺的功能是為應用程序開發(fā)提供平臺。系統(tǒng)軟件以嵌入式Linux操作系統(tǒng)和嵌入式GUI Qtopia為基礎來設計的,整個軟件平臺的架構如圖2所示。
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內核以及存儲設備密切相關的初始化處理工作,這部分的代碼通常用ARM匯編指令編寫,包含在start.S文件中。通常包括一些步驟:
①硬件初始化工作。包括關閉看門狗;屏蔽所有中斷;設置處理器時鐘和工作頻率;初始化外部寄存器;初始化堆棧指針。
②為階段(2)準備RAM空間,并把階段(2)的代碼拷貝倒RAM,跳轉倒階段(2)的入口點。
(2)完成一般的啟動流程以及提供目標板設備的驅動支持,這部分會被拷貝倒RAM中執(zhí)行,這段代碼通常由C語言來實現,具有較強的可讀性和移植性。
通常包括一下步驟:
①通過set_gpios()函數完成通用I/0設置;
②通過mere_map_init(),mmu_init()函數完成內存映射和內存管理單元初始化;
③初始化MTD設備,使用mtd_dev_init()函數;
④拷貝NAND FLASH中的Kernel映像文件和根文件系統(tǒng)映像到RAM空間中;
⑤跳轉到內核的第一條指令處。
至此,Bootloader的任務結束,接下來的任務由操作系統(tǒng)完成。