ARM Cortex-A8嵌入式系統(tǒng)開發(fā)與實踐——WinCE與Android平臺

-
【作 者】上海怡鼎信息科技有限公司 倪旭
【I S B N 】978-7-5084-8177-7
【責(zé)任編輯】宋俊娥
【適用讀者群】科技
【出版時間】2011-01-25
【開 本】16開
【裝幀信息】平裝(光膜)
【版 次】第1版第1次印刷
【頁 數(shù)】
【千字?jǐn)?shù)】537
【印 張】20.75
【定 價】¥45
【叢 書】暫無分類
【備注信息】 隨書贈送一CD
簡介
本書特色
前言
章節(jié)列表
精彩閱讀
下載資源
相關(guān)圖書
本書以飛思卡爾應(yīng)用處理器i.MX51為例,全面系統(tǒng)地講述基于新一代高性能ARM Cortex-A8內(nèi)核應(yīng)用處理器以及WinCE 6.0和Android 系統(tǒng)的軟硬件系統(tǒng)開發(fā)指導(dǎo)。具體內(nèi)容包括:以i.MX51應(yīng)用處理器為例介紹基于Cortex-A8內(nèi)核的高性能應(yīng)用處理器典型的功能模塊,開發(fā)系統(tǒng)的主要硬件功能模塊的結(jié)構(gòu)與工作原理,典型硬件系統(tǒng)與典型應(yīng)用;WinCE 6.0在Cortex-A8系統(tǒng)上的移植與開發(fā),系統(tǒng)地講述Windows Embedded CE 6.0的體系結(jié)構(gòu)、系統(tǒng)安裝、環(huán)境設(shè)置,在i.MX51開發(fā)系統(tǒng)下的軟件包的編譯和調(diào)試,主要功能模塊驅(qū)動程序的詳細(xì)描述與開發(fā)指導(dǎo),以及典型的嵌入式系統(tǒng)WinCE 6.0 應(yīng)用開發(fā)例程;Android 2.2在Cortex-A8系統(tǒng)的移植與開發(fā),系統(tǒng)講述Android體系結(jié)構(gòu)、開發(fā)環(huán)境與編譯,Android BSP的移植與開發(fā)(包含Bootloader、內(nèi)核移植、HAL實現(xiàn)等),以及Android應(yīng)用程序開發(fā)指導(dǎo)。
本書可作為工程技術(shù)人員學(xué)習(xí)最新的Cortex-A8高端嵌入式系統(tǒng)軟硬件開發(fā)技術(shù)的入門教材,掌握WinCE 6.0以及Android系統(tǒng)在高端應(yīng)用處理器系統(tǒng)上的實戰(zhàn)演練,也可作為工程技術(shù)人員在實際工作中針對智能手持設(shè)備(平板電腦、智能手機(jī))、高端嵌入式設(shè)備、汽車信息娛樂設(shè)備等系統(tǒng)開發(fā)的參考書。
涵蓋Android和WinCE兩大系統(tǒng)
最新Android系統(tǒng)實戰(zhàn)演練
詳解ARM Cortex-A8應(yīng)用系統(tǒng)
最新最全的高端嵌入式系統(tǒng)學(xué)習(xí)寶典
ARM Cortex-A8是ARM公司針對高端嵌入式系統(tǒng)新推出的高性能內(nèi)核,性能與其前代ARM9、ARM11相比有了質(zhì)的飛躍,處理能力幾乎可以與X86系統(tǒng)媲美,而功耗卻同ARM9/ARM11系統(tǒng)幾乎維持在同一數(shù)量級。于是,這個市場風(fēng)起云涌,各種劃時代的產(chǎn)品紛紛推出。Apple公司的智能手機(jī)iPhone 4、平板電腦iPAD所采用的處理器內(nèi)核都是基于Cortex-A8。國際上的半導(dǎo)體大腕,如飛思卡爾、高通、Ti等也都紛紛推出了各自基于Cortex-A8(ARMv7)的應(yīng)用處理器,如飛思卡爾的i.MX51,高通的Snapdragon 8250,Ti的OMAP3等。我們迅速進(jìn)入了一個ARM叫板Intel的時代。
嵌入式平臺正是因為有了這樣一個強(qiáng)勁的“芯”,也催生了各種開源軟件系統(tǒng)在ARM體系上安營扎寨,如Ubuntu、Android、MeeGo等。這里我們來說一說Android。Android原本是Google針對智能手機(jī)推出的基于Linux內(nèi)核的開源系統(tǒng)。由于開源,所以包含完整的中間件及豐富的上層應(yīng)用程序,同時針對ARM內(nèi)核做了大量的優(yōu)化,執(zhí)行效率非常高,再加上Google這桿大旗的號召力,不僅有Google Search、融入Web應(yīng)用,還推出Android市場(Android Market)讓廣大的程序員加入到Android應(yīng)用程序開發(fā)這個大市場中來,于是原本Linux陣營一盤散沙、各據(jù)山頭的局面得到了迅速的改觀。最有意思的是,Android不但在智能手機(jī)領(lǐng)域攻城略地,迅速成為智能手機(jī)排名前三的操作系統(tǒng),在非手機(jī)領(lǐng)域,如平板電腦、上網(wǎng)本、車載信息娛樂系統(tǒng),甚至是智能家電領(lǐng)域也得到了迅速發(fā)展。從某種程度上來說,Android成為近年來高端嵌入式領(lǐng)域最時髦的詞匯。
當(dāng)然我們也不能忽略Microsoft。Windows Embedded CE 6.0在Cortex A8平臺上運(yùn)行也是如虎添翼。(我們更期待CE 7.0的早日推出。)
正因為如此,上海怡鼎信息科技有限公司(由一群在半導(dǎo)體與嵌入式領(lǐng)域從業(yè)多年的“老”工程師,以及若干“海外回流人員”創(chuàng)辦成立),與浙江大學(xué)的倪旭翔教授、上海電機(jī)學(xué)院的計春雷教授一起,策劃并編篡了本書。本書的編寫也得到了ARM(中國)以及飛思卡爾半導(dǎo)體公司相關(guān)人員的大力支持。參加本書部分章節(jié)內(nèi)容編寫的還有李文浩、周文瑞、周芃、昝婷婷、李信音、顧冬平、李賓,在此還要特別感謝中國水利水電出版社萬水分社楊慶川總經(jīng)理和豆芽為本書的出版付出的努力。我們希望通過本書,讓國內(nèi)的廣大嵌入式系統(tǒng)開發(fā)人員盡快了解和掌握高端嵌入式領(lǐng)域的最新最前沿技術(shù)(Cortex-A8、i.MX51、Android 2.2等),擺脫目前國內(nèi)嵌入式學(xué)習(xí)與設(shè)計參考仍然普遍以ARM9系統(tǒng)為主的局面。
由于編者水平有限,加之時間倉促,書中疏漏之處在所難免,懇請廣大讀者批評指正,以期再版時修訂。
編 者
2010年11月
第1章 基于Cortex-A8的Freescale i.MX51
體系構(gòu)架 1
1.1 i.MX51系統(tǒng)框圖與功能簡介 1
1.1.1 i.MX51應(yīng)用處理器的應(yīng)用 2
1.1.2 i.MX51應(yīng)用處理器CPU的結(jié)構(gòu) 2
1.1.3 i.MX51應(yīng)用處理器的多媒體能力 2
1.1.4 i.MX51應(yīng)用處理器的物理性能
及擴(kuò)展能力 2
1.1.5 i.MX51應(yīng)用處理器的特點 3
1.2 ARM Cortex-A8內(nèi)核(CPU、Cache、
NEON、VFP和ETM) 4
1.3 i.MX51應(yīng)用處理器中的IPU與
VPU單元 5
1.3.1 圖像處理單元IPU 5
1.3.2 視頻處理單元VPU 6
1.4 i.MX51應(yīng)用處理器的圖形處理
(GPU)功能 6
1.4.1 3D 圖形處理單元(3D GPU) 7
1.4.2 2D 圖形處理單元(2D GPU) 7
1.5 i.MX51應(yīng)用處理器的輸入輸出接口 8
1.6 i.MX51應(yīng)用處理器的時鐘、電源與
JTAG口 9
1.7 i.MX51應(yīng)用處理器的典型系統(tǒng) 12
1.8 參考文獻(xiàn) 13
第2章 基于i.MX51的系統(tǒng)硬件介紹 14
2.1 內(nèi)容概述 14
2.2 硬件系統(tǒng)的總體框圖和功能組成 15
2.3 i.MX51應(yīng)用處理器的啟動模式設(shè)置 17
2.4 存儲器部分(DDR2、SPI NOR、
NAND Flash) 18
2.4.1 DDR2 SDRAM 18
2.4.2 NAND Flash 21
2.4.3 SPI NOR 22
2.5 電源管理 22
2.5.1 MC13892的電源輸出 22
2.5.2 i.MX51與MC13892之間的信號
接口控制 24
2.5.3 電池充放電電路 24
2.5.4 電阻觸摸屏接口電路 26
2.6 USB接口 26
2.6.1 USB的定義 26
2.6.2 USB標(biāo)準(zhǔn)簡介 27
2.6.3 USB-OTG設(shè)計 27
2.6.4 USB-HS設(shè)計 29
2.6.5 USB擴(kuò)展接口 29
2.7 DVI顯示接口 32
2.8 MMC/SD卡接口 33
2.9 UART調(diào)試串口和JTAG調(diào)試口 36
2.10 Ethernet網(wǎng)口 38
2.11 Audio CODEC與音頻輸入輸出 39
2.12 Camera接口 42
2.13 鍵盤功能 43
2.14 擴(kuò)展接口 43
2.14.1 Bluetooth和WIFI擴(kuò)展接口 43
2.14.2 3G擴(kuò)展接口 44
2.15 參考文獻(xiàn) 45
第3章 基于Cortex-A8 i.MX51的WinCE 6.0
系統(tǒng)移植與開發(fā) 46
3.1 Windows Embedded CE 6.0介紹 46
3.1.1 WinCE 6.0簡介 47
3.1.2 WinCE 6.0的安裝 48
3.1.3 WinCE 6.0編譯環(huán)境 57
3.1.4 WinCE 6.0體系架構(gòu) 85
3.2 WinCE 6.0軟件開發(fā)包的安裝、編譯、
下載與調(diào)試 94
3.2.1 WinCE 6.0 軟件開發(fā)包的安裝 94
3.2.2 WinCE 6.0軟件開發(fā)包的編譯 103
3.2.3 WinCE 6.0軟件開發(fā)包的鏡像下載 112
3.2.4 WinCE 6.0軟件開發(fā)包的調(diào)試 117
3.3 基于怡鼎MX51開發(fā)系統(tǒng)的WinCE 6.0
的Bootloader 121
3.3.1 i.MX51芯片內(nèi)部Bootloader 121
3.3.2 怡鼎MX51 WINCE軟件開發(fā)包
的XLDR 130
3.3.3 怡鼎MX51 WinCE 6.0軟件開
發(fā)包的EBOOT 132
3.4 WinCE 6.0 OEM適配層 144
3.4.1 Windows CE操作系統(tǒng)的啟動順序 144
3.4.2 OAL的電源管理 156
3.5 WinCE 6.0驅(qū)動概述 161
3.5.1 文件系統(tǒng)驅(qū)動、線程驅(qū)動與
本地驅(qū)動 162
3.5.2 用戶模式驅(qū)動與內(nèi)核模式驅(qū)動 164
3.5.3 加載驅(qū)動 164
3.5.4 驅(qū)動的中斷處理 165
3.5.5 驅(qū)動的電源管理 165
3.6 怡鼎MX51 WinCE 6.0 驅(qū)動詳述 166
3.6.1 音頻編解碼器驅(qū)動 166
3.6.2 顯示驅(qū)動 170
3.6.3 攝影頭驅(qū)動 176
3.6.4 eSDHC驅(qū)動 180
3.6.5 網(wǎng)絡(luò)驅(qū)動 182
3.6.6 電源管理芯片驅(qū)動 184
3.6.7 USB OTG驅(qū)動 192
3.7 WinCE 6.0 應(yīng)用程序開發(fā)與實踐 203
3.7.1 導(dǎo)出并安裝SDK 203
3.7.2 使用SDK編譯Hello World 206
3.7.3 使用PB編譯VPU測試代碼 210
3.7.4 使用PB編譯OpenGL ES 2.0 3D
應(yīng)用程序 211
3.7.5 多媒體 212
3.8 參考文獻(xiàn) 217
第4章 基于Cortex-A8的i.MX51的Android系統(tǒng)移植與應(yīng)用程序開發(fā) 218
4.1 Android簡介 218
4.1.1 Android系統(tǒng)架構(gòu) 218
4.1.2 Android核心組件 220
4.1.3 Android應(yīng)用程序基礎(chǔ) 227
4.2 基于i.MX51的怡鼎Android系統(tǒng)
使用介紹 235
4.3 Android系統(tǒng)的開發(fā)環(huán)境及編譯 247
4.3.1 搭建PC開發(fā)環(huán)境 248
4.3.2 獲取Android官方代碼 248
4.3.3 應(yīng)用怡鼎補(bǔ)丁 249
4.3.4 Android源代碼結(jié)構(gòu) 249
4.3.5 源代碼編譯 252
4.4 Linux 內(nèi)核及驅(qū)動程序 254
4.4.1 Linux內(nèi)核簡介 254
4.4.2 Linux驅(qū)動程序簡介 256
4.5 Android BSP移植與開發(fā) 267
4.5.1 Bootloader 267
4.5.2 Android 內(nèi)核移植 271
4.5.3 Android HAL移植與實現(xiàn) 279
4.5.4 常見問題 287
4.6 Android應(yīng)用程序開發(fā) 288
4.6.1 搭建應(yīng)用程序開發(fā)環(huán)境 289
4.6.2 Hello World應(yīng)用程序 292
4.6.3 多媒體播放應(yīng)用程序 296
4.6.4 瀏覽器應(yīng)用程序 302
4.6.5 3D應(yīng)用程序 307
4.7 本章小結(jié) 314
4.8 參考文獻(xiàn) 315
- 嵌入式系統(tǒng)設(shè)計師考前沖刺100題 [倪奕文 王建平 編著]
- 嵌入式系統(tǒng)設(shè)計師5天修煉 [倪奕文 編著]
- 嵌入式ARM技術(shù)項目化教程 [曉利 周永福 黃日勝 楊凌]
- 嵌入式Linux開發(fā)技術(shù)基礎(chǔ) [主編 伍德雁]
- 嵌入式應(yīng)用Qt_C++傳感數(shù)據(jù)采集開發(fā)實訓(xùn)教程 [主編 劉和文 文燕 謝忠敏]
- 基于ARM Cortex-M4內(nèi)核的物聯(lián)網(wǎng)/嵌入式系統(tǒng)開發(fā)教程 [主編 劉雯]
- 嵌入式網(wǎng)絡(luò)那些事——STM32物聯(lián)實戰(zhàn) [朱升林 歐陽駿 楊晶 著]
- 嵌入式Qt開發(fā)項目教程 [主編 王浩 陳邦瓊]
- 嵌入式系統(tǒng)實驗教程 [ 張志勇 邢國春 李曉寧]
- 嵌入式網(wǎng)絡(luò)那些事:LwIP協(xié)議深度剖析與實戰(zhàn)演練 [朱升林]
- Windows CE(C#)嵌入式應(yīng)用開發(fā)實訓(xùn)教程 [王浩 編著]
- Windows CE(C#)嵌入式應(yīng)用開發(fā) [王浩 林藝春 編著]
- 16位單片機(jī)及語音嵌入式系統(tǒng) [趙定遠(yuǎn) 馬洪江 主編]
- EVC高級編程及其應(yīng)用開發(fā)(Embedded Visual C++嵌入式編程) [汪兵 等編著]
- 單片機(jī)原理及基于單片機(jī)的嵌入式系統(tǒng)設(shè)計 [蔡方凱 主編]
- Windows CE嵌入式高級編程及其實例詳解(用C++實現(xiàn)) [汪兵 等編著]
- 輸水管線工程風(fēng)險管理
- 不息的水脈—大運(yùn)河講談錄
- 三峽梯級電站水資源決策支持系統(tǒng)研究與
- 海南黎族民俗文化鑒賞
- C++案例項目精講
- 信息系統(tǒng)項目管理師章節(jié)習(xí)題與考點特訓(xùn)
- 武術(shù)基礎(chǔ)教程
- 計算機(jī)網(wǎng)絡(luò)實訓(xùn)教程
- HCIA-Datacom認(rèn)證題庫分類精講
- SwiftUI完全開發(fā)
- 網(wǎng)絡(luò)規(guī)劃設(shè)計師備考一本通
- 用英語介紹中國古今科技
- 農(nóng)村新型社區(qū)移民的社會適應(yīng)性問題研究
- 用英語介紹中國美食文化
- 用英語介紹中國名人
- 第四代系統(tǒng)論:全息系統(tǒng)論—全息系統(tǒng)的