圖書簡介:
本書作者結(jié)合多年的教學(xué)和開發(fā)經(jīng)驗(yàn),并借鑒多本優(yōu)秀教材,以理論與實(shí)踐相結(jié)合的方式由淺入深地介紹了嵌入式圖形的基礎(chǔ)、理論與方法。
本書共分7章。第1章主要涉及硬件及軟件的基礎(chǔ)知識。第2章介紹嵌入式開發(fā)環(huán)境的建立。第3章介紹硬件平臺的構(gòu)建。第4章詳細(xì)介紹嵌入式微處理器方面的知識。第5章介紹嵌入式系統(tǒng)開發(fā)的交叉編譯開發(fā)方法。第6章介紹嵌入式圖形界面工具,包括MiniGUI以及Qt圖形界面設(shè)計(jì)工具,同時(shí)還介紹了相關(guān)實(shí)例。第7章以LCD控制器為例,綜合講解了Qt圖形界面工具的具體使用方法。
本書適合從事嵌入式應(yīng)用系統(tǒng)設(shè)計(jì)的廣大工程技術(shù)人員使用,也可以作為高等學(xué)校和職業(yè)學(xué)校嵌入式系統(tǒng)軟硬件設(shè)計(jì)與機(jī)電一體化專業(yè)教育培訓(xùn)的理想教材和參考書。
前 言
為何編寫本書
近年來,隨著以計(jì)算機(jī)技術(shù)、通信技術(shù)為主的信息技術(shù)的快速發(fā)展和Internet的廣泛應(yīng)用,嵌入式系統(tǒng)得到了越來越廣泛的發(fā)展。嵌入式系統(tǒng)是指用于執(zhí)行獨(dú)立功能的專用計(jì)算機(jī)系統(tǒng)。它由包括微處理器、定時(shí)器、微控制器、存儲器、傳感器等一系列微電子芯片與器件,和嵌入在存儲器中的微型操作系統(tǒng)、控制應(yīng)用軟件組成,共同實(shí)現(xiàn)諸如實(shí)時(shí)控制、監(jiān)視、管理、移動計(jì)算、數(shù)據(jù)處理等各種自動化處理任務(wù)。嵌入式系統(tǒng)以應(yīng)用為中心,以微電子技術(shù)、控制技術(shù)、計(jì)算機(jī)技術(shù)和通信技術(shù)為基礎(chǔ),強(qiáng)調(diào)軟硬件的協(xié)同性與整合性,軟件與硬件可剪裁,以滿足系統(tǒng)對功能、成本、體積和功耗等的要求。
近年來,嵌入式圖形設(shè)計(jì)及應(yīng)用越來越受到人們的關(guān)注,也有許多該方面的圖書出版。已有的圖書大多是專一地介紹硬件或軟件方面的知識,很少將它們系統(tǒng)地結(jié)合在一起講述。本書則從理論基礎(chǔ)及圖形設(shè)計(jì)實(shí)際應(yīng)用的角度出發(fā),不僅詳細(xì)地講述了嵌入式系統(tǒng)基礎(chǔ)理論方面的知識,還結(jié)合實(shí)例講述了嵌入式圖形系統(tǒng)設(shè)計(jì)的詳細(xì)開發(fā)方法和步驟,內(nèi)容的可讀性、可用性和實(shí)踐性強(qiáng)。
全書共分7章。
第1章介紹嵌入式系統(tǒng)基礎(chǔ)知識,主要涉及硬件及軟件的介紹。
* 第2章介紹嵌入式開發(fā)環(huán)境的建立,其中包括操作系統(tǒng)內(nèi)核、進(jìn)程與中斷管理、調(diào)度機(jī)制、I/O設(shè)備等內(nèi)容。
* 第3章介紹嵌入式系統(tǒng)硬件平臺的構(gòu)建,其中包括存儲器、電源轉(zhuǎn)換與管理、接口技術(shù)、總線等內(nèi)容。
* 第4章介紹嵌入式ARM處理器,在第1章的基礎(chǔ)上,詳細(xì)介紹嵌入式微處理器方面的知識,重點(diǎn)介紹ARM微處理器的特點(diǎn)及應(yīng)用編程方法,最后簡單介紹其他一些主流嵌入式微處理器的知 識。
* 第5章介紹嵌入式系統(tǒng)交叉編譯,在嵌入式系統(tǒng)開發(fā)中,交叉編譯是非常重要的一種開發(fā)方法,本章將詳細(xì)介紹。
* 第6章介紹圖形用戶界面,包括MiniGUI以及Qt圖形界面設(shè)計(jì)工具,同時(shí)還介紹了相關(guān)實(shí)例。
* 第7章是有關(guān)圖形界面設(shè)計(jì)的具體實(shí)例,本章以LCD控制器為例,綜合講解了Qt圖形界面工具的具體使用方法。
適用讀者群
* 高校本科學(xué)生。
* 嵌入式圖形系統(tǒng)的初學(xué)者。
* 嵌入式圖形系統(tǒng)的設(shè)計(jì)人員。
本書由河北聯(lián)合大學(xué)張寶銀編寫并負(fù)責(zé)全書的統(tǒng)稿工作,其中第2、4、5、7章由張寶銀編寫,第1、3、6章由李偉編寫。
由于時(shí)間倉促以及作者水平有限,書中難免存在疏漏之處,歡迎廣大讀者和同仁提出寶貴意見。
編 著
目 錄第1章 嵌入式系統(tǒng)基礎(chǔ)知識 1
1.1 嵌入式系統(tǒng)簡介 2
1.1.1 嵌入式系統(tǒng)的定義 2
1.1.2 嵌入式系統(tǒng)的軟硬件特征 2
1.1.3 嵌入式操作系統(tǒng) 3
1.1.4 學(xué)習(xí)嵌入式系統(tǒng)的意義 3
1.2 嵌入式系統(tǒng)的硬件基礎(chǔ) 3
1.2.1 嵌入式處理器 3
1.2.2 嵌入式微處理器 4
1.2.3 嵌入式微控制器 5
1.2.4 嵌入式DSP處理器 6
1.2.5 嵌入式片上系統(tǒng) 6
1.2.6 嵌入式處理器的選擇 7
1.3 嵌入式系統(tǒng)的軟件基礎(chǔ) 8
1.3.1 操作系統(tǒng)的發(fā)展史 9
1.3.2 主流嵌入式操作系統(tǒng)介紹 10
1.4 實(shí)訓(xùn):編譯Bootloader 12
1.5 習(xí)題 17
第2章 嵌入式開發(fā)環(huán)境的建立 19
2.1 操作系統(tǒng)內(nèi)核 20
2.1.1 內(nèi)存管理功能 20
2.1.2 內(nèi)存分割 20
2.1.3 虛擬內(nèi)存 21
2.2 進(jìn)程與中斷管理 23
2.2.1 進(jìn)程描述與控制 24
2.2.2 并發(fā)控制:互斥與同步 29
2.2.3 并發(fā)控制:死鎖處理 36
2.2.4 中斷及中斷處理 40
2.3 調(diào)度機(jī)制 42
2.3.1 調(diào)度類型 42
2.3.2 單處理器調(diào)度 43
2.3.3 多處理器調(diào)度 46
2.3.4 實(shí)時(shí)調(diào)度 48
2.4 I/O設(shè)備 51
2.4.1 I/O設(shè)備描述參數(shù) 52
2.4.2 I/O技術(shù)的演變 52
2.4.3 I/O設(shè)備邏輯描述 53
2.4.4 I/O緩沖技術(shù) 54
2.4.5 磁盤調(diào)度 56
2.5 文件管理 59
2.5.1 文件與文件系統(tǒng) 60
2.5.2 文件組織與訪問 60
2.5.3 文件共享 63
2.5.4 記錄分塊 64
2.5.5 外圍存儲設(shè)備管理 65
2.6 用戶界面 66
2.6.1 圖形用戶界面 66
2.6.2 關(guān)鍵技術(shù) 67
2.7 智能化用戶界面 69
2.7.1 Agent技術(shù) 69
2.7.2 Agent技術(shù)與用戶界面的
結(jié)合 71
2.8 實(shí)訓(xùn):編譯 Linux 內(nèi)核 73
2.9 習(xí)題 89
第3章 嵌入式系統(tǒng)硬件平臺的構(gòu)建 91
3.1 存儲器 92
3.1.1 ROM 92
3.1.2 RAM 92
3.2 輸入/輸出設(shè)備 93
3.2.1 液晶顯示 93
3.2.2 觸摸屏 94
3.2.3 語音輸入/輸出技術(shù) 96
3.2.4 鍵盤 96
3.3 電源轉(zhuǎn)換與管理 98
3.3.1 電源IC分類 99
3.3.2 電源IC的特點(diǎn) 99
3.3.3 電源IC選用指南 100
3.4 接口技術(shù) 102
3.4.1 并行接口 102
3.4.2 串口 103
3.4.3 USB 104
3.4.4 PCMCIA和CF 104
3.4.5 紅外線接口 106
3.5 總線 107
3.5.1 ISA 107
3.5.2 PCI 108
3.5.3 I2C總線 108
3.5.4 SPI總線 109
3.5.5 PC104總線 110
3.5.6 CAN總線 110
3.6 嵌入式系統(tǒng)開發(fā)常用的硬件調(diào)試和編程技術(shù) 111
3.6.1 微代碼支持的串口調(diào)試 111
3.6.2 常用編程技術(shù) 112
3.6.3 JTAG與IEEE 1149協(xié)議簡介 113
3.6.4 3.3V和5V裝置的互連 114
3.7 實(shí)訓(xùn):燒寫各部分到目標(biāo)板 115
3.8 習(xí)題 120
第4章 嵌入式ARM處理器介紹 121
4.1 ARM處理器概述 122
4.1.1 ARM處理器的發(fā)展 122
4.1.2 ARM處理器的應(yīng)用領(lǐng)域 122
4.1.3 ARM處理器的特點(diǎn) 123
4.1.4 ARM處理器的重要特性 123
4.2 ARM處理器指令系統(tǒng) 135
4.2.1 ARM處理器的尋址方式 135
4.2.2 ARM指令集 137
4.2.3 Thumb指令 160
4.3 S3C44B0處理器結(jié)構(gòu) 161
4.3.1 S3C44B0片上資源簡介 161
4.3.2 內(nèi)部結(jié)構(gòu)及引腳信號定義 163
4.4 S3C44B0初始化匯編程序?qū)嵗?nbsp;166
4.4.1 BootLoader介紹 166
4.4.2 初始化代碼 166
4.4.3 調(diào)試與運(yùn)行 175
4.5 實(shí)訓(xùn):制作文件系統(tǒng)及程序的燒寫 180
4.6 習(xí)題 184
第5章 嵌入式系統(tǒng)交叉編譯 185
5.1 編譯原理 186
5.1.1 編譯的一般過程 186
5.1.2 與編譯器相關(guān)的程序 187
5.1.3 編譯器的移植 187
5.2 詞法分析 188
5.2.1 詞法的形式化描述 188
5.2.2 詞法分析程序的設(shè)計(jì) 191
5.3 語法分析 192
5.3.1 自頂向下的語法分析 193
5.3.2 自底向上的語法分析 195
5.4 中間代碼 197
5.5 代碼優(yōu)化 199
5.6 交叉編譯技術(shù) 202
5.7 GCC交叉編譯器 203
5.7.1 GCC編譯流程 203
5.7.2 Linux環(huán)境下的GCC交叉編譯器 206
5.8 一個(gè)交叉編譯器的生成實(shí)例 207
5.8.1 可執(zhí)行文件格式 207
5.8.2 交叉編譯器 208
5.8.3 相關(guān)問題 210
5.9 實(shí)訓(xùn):交叉編譯并運(yùn)行簡單程序 210
5.10 習(xí)題 215
第6章 圖形用戶界面 217
6.1 顯示驅(qū)動接口 218
6.1.1 framebuffer驅(qū)動接口 218
6.1.2 qvfb虛擬驅(qū)動接口 219
6.2 MiniGUI圖形界面工具 221
6.2.1 MiniGUI的簡介與安裝 221
6.2.2 MiniGUI使用基礎(chǔ) 225
6.2.3 MiniGUI對話框、控件、菜單與繪圖 228
6.3 Qt embeded圖形界面工具 237
6.3.1 Qt embeded的簡介與安裝 237
6.3.2 Qt embeded使用基礎(chǔ) 239
6.3.3 Qt Designer介紹 242
6.4 實(shí)訓(xùn):使用開發(fā)工具Qt Designer 243
6.5 習(xí)題 251
第7章 LCD控制器實(shí)例 253
7.1 LCD控制器 254
7.1.1 LCD介紹 254
7.1.2 LCD控制器介紹 254
7.1.3 LCD控制器的結(jié)構(gòu) 255
7.1.4 LCD控制器操作 256
7.1.5 特殊寄存器 260
7.2 實(shí)例過程 266
7.2.1 電路連接 266
7.2.2 寄存器設(shè)置 266
7.2.3 程序的編寫 268
7.2.4 調(diào)試與運(yùn)行結(jié)果 270