嵌入式系統(tǒng)與移動(dòng)設(shè)備開(kāi)發(fā)基礎(chǔ)
定 價(jià):49.8 元
- 作者:郭宏 胡威
- 出版時(shí)間:2018/9/1
- ISBN:9787115482815
- 出 版 社:人民郵電出版社
- 中圖法分類(lèi):TP360.21
- 頁(yè)碼:268
- 紙張:
- 版次:01
- 開(kāi)本:16開(kāi)
本書(shū)借鑒了很多國(guó)內(nèi)優(yōu)秀培訓(xùn)機(jī)構(gòu)的思路,力求使讀者在沒(méi)有相關(guān)背景知識(shí)的前提下,也可以學(xué)習(xí)嵌入式開(kāi)發(fā)。本書(shū)分為兩篇,第一篇包括第1章~第8章,依次講述了嵌入式系統(tǒng)的概念、ARM11體系結(jié)構(gòu)、ARM微處理器的指令系統(tǒng)、S3C6410處理器、GPIO接口、IIC總線接口、UART接口、ADC和觸摸屏接口等相關(guān)內(nèi)容;第二篇包括第9章~第14章,分別介紹了Android系統(tǒng)級(jí)開(kāi)發(fā)基本方法、Android系統(tǒng)開(kāi)發(fā)環(huán)境、Boot Loader、Android驅(qū)動(dòng)開(kāi)發(fā)、Input輸入子系統(tǒng)以及傳感器系統(tǒng)的結(jié)構(gòu)等移動(dòng)設(shè)備開(kāi)發(fā)相關(guān)的內(nèi)容。
本書(shū)通俗易懂、條理清晰、實(shí)例豐富,既可作為普通高等院校相關(guān)專(zhuān)業(yè)的教材,也可作為讀者自學(xué)的教材,同時(shí)也非常適合作為專(zhuān)業(yè)人員的參考書(shū)。
(1)本書(shū)主要介紹ARM公司推出的處理器架構(gòu)——ARM11;
(2)本書(shū)將嵌入式系統(tǒng)與移動(dòng)設(shè)備開(kāi)發(fā)結(jié)合到一起,理論聯(lián)系實(shí)際,對(duì)學(xué)生的學(xué)習(xí)更有幫助;
(3)內(nèi)容豐富,書(shū)中含有大量代碼,可幫助學(xué)生在學(xué)習(xí)的同時(shí)提升實(shí)際應(yīng)用能力。
胡威,浙江大學(xué)本科/碩士/博士,浙江大學(xué)師資博士后,武漢科技大學(xué)副教授,武漢科技大學(xué)計(jì)算機(jī)科學(xué)系主任/國(guó)家級(jí)計(jì)算機(jī)實(shí)驗(yàn)教學(xué)示范中心副主任,曾任浙江大學(xué)-英特爾技術(shù)中心學(xué)術(shù)秘書(shū)、多核實(shí)驗(yàn)室副主任。發(fā)表國(guó)內(nèi)外學(xué)術(shù)論文93篇,獲第七屆IEEE ICESS國(guó)際會(huì)議最佳論文獎(jiǎng)、JCSC(SCI源刊)區(qū)域編輯推薦論文,獲得專(zhuān)利授權(quán)15項(xiàng),軟件著作權(quán)26項(xiàng)。獲得2015年湖北省科技進(jìn)步獎(jiǎng)二等獎(jiǎng)1項(xiàng),2009年浙江省科學(xué)技術(shù)獎(jiǎng)三等獎(jiǎng)1項(xiàng),2015年武漢市科技進(jìn)步獎(jiǎng)二等獎(jiǎng)1項(xiàng),2009年杭州市科技進(jìn)步獎(jiǎng)二等獎(jiǎng)1項(xiàng),浙江省2008年引進(jìn)大院名校共建創(chuàng)新載體稱(chēng)號(hào)1項(xiàng)。負(fù)責(zé)/參與國(guó)家級(jí)、省部級(jí)項(xiàng)目14項(xiàng),參與國(guó)標(biāo)《手持式電子產(chǎn)品嵌入式軟件API》的制訂。主講計(jì)算機(jī)組成原理、多核、嵌入式課程,發(fā)表教學(xué)論文44篇,獲得湖北省教學(xué)成果獎(jiǎng)一等獎(jiǎng)1項(xiàng),湖北省教學(xué)成果獎(jiǎng)二等獎(jiǎng)1項(xiàng),浙江大學(xué)校級(jí)教學(xué)成果獎(jiǎng)二等獎(jiǎng)1項(xiàng)。主持省部級(jí)教研項(xiàng)目7項(xiàng),參加國(guó)家級(jí)精品課程2項(xiàng)、省部級(jí)精品課程1項(xiàng)、優(yōu)客聯(lián)盟“UOOC Star”在線課程1項(xiàng)。
郭宏,博士,副教授,碩士生導(dǎo)師,F(xiàn)在武漢科技大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院任教,多年來(lái)一直從事自動(dòng)控制及計(jì)算機(jī)應(yīng)用領(lǐng)域的教學(xué)與科研工作,主要擔(dān)任嵌入式系統(tǒng)、單片機(jī)技術(shù)和數(shù)字電路等課程的教學(xué)。主要研究方向?yàn)閭鞲衅髋c數(shù)據(jù)處理、智能控制與信息系統(tǒng)、嵌入式實(shí)時(shí)系統(tǒng)及應(yīng)用、智能儀器儀表等。主持和參與教改、科研項(xiàng)目多項(xiàng),發(fā)表教學(xué)、學(xué)術(shù)論文二十多篇,多篇被 SCI、EI、ISTP等三大檢索工具收錄。獲省、校級(jí)教學(xué)獎(jiǎng)勵(lì)多項(xiàng),湖北省科技進(jìn)步二等獎(jiǎng)1項(xiàng),申請(qǐng)軟件著作權(quán)10項(xiàng),獲國(guó)家發(fā)明專(zhuān)利1項(xiàng)。
第 1章 嵌入式系統(tǒng)概述
1.1 嵌入式系統(tǒng)的基本概念
1.1.1 嵌入式系統(tǒng)的定義
1.1.2 嵌入式系統(tǒng)的發(fā)展
1.1.3 嵌入式系統(tǒng)的特點(diǎn)
1.2 嵌入式系統(tǒng)的分類(lèi)
1.2.1單個(gè)微處理器
1.2.2嵌入式處理器可擴(kuò)展的系統(tǒng)
1.2.3復(fù)雜的嵌入式系統(tǒng)
1.2.4在制造或過(guò)程控制中使用的計(jì)算機(jī)系統(tǒng)
1.3 嵌入式處理器
1.3.1嵌入式微處理器
1.3.2嵌入式微控制器
1.3.3嵌入式DSP處理器
1.3.4嵌入式片上系統(tǒng)
1.4 嵌入式系統(tǒng)的組成
1.4.1嵌入式系統(tǒng)的硬件
1.4.2嵌入式系統(tǒng)的軟件
1.4.3嵌入式系統(tǒng)的開(kāi)發(fā)工具和開(kāi)發(fā)系統(tǒng)
1.5 嵌入式操作系統(tǒng)
1.5.1 嵌入式操作系統(tǒng)的發(fā)展
1.5.2 嵌入式操作系統(tǒng)的分類(lèi)
1.5.3 嵌入式操作系統(tǒng)的特點(diǎn)
1.5.4 主流嵌入式操作系統(tǒng)簡(jiǎn)介
第 2章ARM11體系結(jié)構(gòu)
2.1 ARM微處理器概述
2.1.1 ARM公司簡(jiǎn)介
2.1.2 ARM微處理器的特點(diǎn)
2.1.3 ARM體系結(jié)構(gòu)的版本
2.2 ARM11系列微處理器
2.2.1 目標(biāo)應(yīng)用
2.2.2 ARM11處理器特點(diǎn)
2.2.3 ARM11處理器性能
2.2.4 ARM11處理器規(guī)格
2.3 ARM11系列微處理器架構(gòu)
2.4 ARM11流水線
2.4.1 流水線結(jié)構(gòu)的性能
2.4.2 流水線級(jí)數(shù)的影響
2.4.3 ARM11處理器中流水線管理
2.5 ARM工作模式及寄存器組
2.5.1 ARM核工作模式
2.5.2 ARM寄存器分組
2.5.3 工作模式分析
2.6 各種模式工作機(jī)制
2.6.1 CPSR、PC和SPSR_xxx、LR_xxx寄存器工作關(guān)系
2.6.2 R13_xxx寄存器用途(sp_xxx堆棧指針)
2.6.3 FIQ和IRQ特權(quán)模式(異常或叫中斷模式)
2.6.4 Supervisor特權(quán)模式(異常)
2.6.5 Abort特權(quán)模式(異常)
2.6.6 Undefined特權(quán)模式(異常)
2.6.7 Secure Monitor特權(quán)(異常)模式
2.6.8 System特權(quán)模式
2.6.9 ARM中各個(gè)異常處理響應(yīng)優(yōu)先級(jí)
2.7 進(jìn)入和退出異常中斷的過(guò)程
2.7.1 ARM處理器對(duì)異常中斷的相應(yīng)過(guò)程
2.7.2 從異常中斷處理程序種返回
第3章 ARM微處理器的指令系統(tǒng)
3.1 ARM微處理器的指令集概述
3.1.1 ARM微處理器的指令的分類(lèi)與格式
3.1.2 指令的條件域
3.2 ARM指令的尋址方式
3.2.1 立即尋址
3.2.2 寄存器尋址
3.2.3 寄存器間接尋址
3.2.4 基址變址尋址
3.2.5 多寄存器尋址
3.2.6 相對(duì)尋址
3.2.7 堆棧尋址
3.3 ARM指令集
3.3.1 跳轉(zhuǎn)指令
3.3.2 數(shù)據(jù)處理指令
3.3.3 乘法指令與乘加指令
3.3.4 程序狀態(tài)寄存器訪問(wèn)指令
3.3.5 加載/存儲(chǔ)指令
3.3.6 批量數(shù)據(jù)加載/存儲(chǔ)指令
3.3.7 數(shù)據(jù)交換指令
3.3.8 移位指令(操作)
3.3.9 協(xié)處理器指令
3.3.10 異常產(chǎn)生指令
3.4 Thumb指令及應(yīng)用
第4章 S3C6410 處理器
4.1 S3C6410處理器概述
4.2 S3C6410體系結(jié)構(gòu)
4.3 S3C6410引腳名稱(chēng)
4.4 S3C6410引腳信號(hào)描述
4.4.1外部存儲(chǔ)器接口
4.4.2 串行通信接口
4.4.3 圖像/視頻接口
4.4.4 AD/DA接口
4.4.5 移動(dòng)存儲(chǔ)設(shè)備接口
4.4.6 系統(tǒng)管理器接口
4.4.7 電源組接口
4.5 存儲(chǔ)器映射
4.5.1存儲(chǔ)器系統(tǒng)模塊圖
4.5.2 特殊設(shè)備地址空間
4.6 系統(tǒng)控制器
4.6.1系統(tǒng)控制器的特性
4.6.2功能描述
4.7 S3C6410復(fù)位信號(hào)
4.7.1 硬件復(fù)位
4.7.2 溫復(fù)位
4.7.3 軟件復(fù)位
4.7.4 看門(mén)狗復(fù)位
4.8寄存器描述
4.8.1 部分SFR寄存器
4.8.2 PLL控制寄存器
4.8.3 時(shí)鐘源控制寄存器
4.9 S3C6410中斷源
4.10向量中斷控制器功能模塊
4.11 VIC寄存器
4.12寄存器描述
4.12.1 IRQ狀態(tài)寄存器,VICIRQSTATUS
4.12.2 FIQ狀態(tài)寄存器,VICFIQSTATUS
4.12.3原始中斷狀態(tài)寄存器,VICRAWINTR
4.12.3原始中斷狀態(tài)寄存器,VICRAWINTR
4.12.5 中斷使能寄存器,VICINTENABLE
4.12.6 中斷使能清除,VICINTENCLEAR
4.12.7 軟件中斷寄存器,VICSOFTINT
4.12.8 軟件中斷清除寄存器,VICSOFTINTCLEAR
4.12.9 保護(hù)使能寄存器,VICPROTECTION
4.12.10 軟件優(yōu)先級(jí)屏蔽寄存器,VICSWPRIORITYMASK
4.12.11 鏈?zhǔn)较蛄績(jī)?yōu)先級(jí)寄存器
4.12.12 矢量地址寄存器,VICVECTADDR[0-31]
4.12.13 向量中斷優(yōu)先寄存器,VICVECTRPRIORITY[0-31]
4.12.14 向量地址寄存器,VICADDRESS
4.13 外部中斷
4.13.1 GPIO
4.13.2 外部中斷號(hào)
4.14 中斷處理過(guò)程
第5章GPIO接口
5.1 GPIO接口概述
5.2 GPIO結(jié)構(gòu)
5.3 GPIO端口
5.4 GPIO寄存器
5.4.1 端口A控制寄存器
5.4.2 端口B控制寄存器
5.4.3 端口C控制寄存器
5.4.4 端口D控制寄存器
5.4.5 端口E控制寄存器
5.4.6 端口F控制寄存器
5.4.7 端口G控制寄存器
5.4.8 端口H控制寄存器
5.4.9 端口I控制寄存器
5.4.10 端口J控制寄存器
5.4.11 端口K控制寄存器
5.4.12 端口L控制寄存器
5.4.13 端口M控制寄存器
5.4.14 端口N控制寄存器
5.4.15 端口O控制寄存器
5.4.16 端口P控制寄存器
5.4.17 端口Q控制寄存器
5.5 GPIO應(yīng)用舉例
5.5.1 電路連接
5.5.2 寄存器設(shè)置
5.5.3 程序的編寫(xiě)
第6章 IIC總線接口
6.1 IIC總線接口概述
6.2 IIC總線接口操作模式
6.2.1開(kāi)始和停止條件
6.2.2 數(shù)據(jù)傳輸格式
6.2.3 ACK信號(hào)傳輸
6.2.4 讀寫(xiě)操作
6.2.5 異常中斷條件
6.2.6 IIC總線配置
6.2.7 每個(gè)模塊的操作流程圖
6.3 IIC總線接口特殊寄存器
6.3.1 多主控器IIC總線控制(IICCON)寄存器
6.3.2 多主控器工IC總線控制/狀態(tài)(IICSTAT)寄存器
6.3.3 多主控器IIC總線地址(IICADD)寄存器
6.3.4 多主控制器IIC總線發(fā)送/接收數(shù)據(jù)移位(IICDS)寄存器
6.3.5 多主控器IIC總線控制寄存器
6.4 IIC總線編程舉例
6.4.1 IIC_ MasterWrP函數(shù)
6.4.2 IIC_ MasterRdP函數(shù)
6.4.3 IIC_ S1aveRdP函數(shù)
6.4.4 IIC_ S1aveWrP函數(shù)
第7章 UART接口
7.1 UART接口概述
7.2 UART接口特性
7.3 UART的操作
7.3.1 數(shù)據(jù)發(fā)送
7.3.2 數(shù)據(jù)接收
7.3.3 自動(dòng)流量控制(AFC)
7.3.4 接收FIFO的操作
7.3.5 發(fā)送FIFO的操作
7.3.6 RS-232C接口
7.3.7 中斷/DMA請(qǐng)求的產(chǎn)生
7.3.8 UART錯(cuò)誤狀態(tài)FIFO
7.3.9 紅外線(IR)模式
7.4 外部接口
7.5 寄存器描述
7.5.1 UART行控制寄存器
7.5.2 UART控制寄存器
7.5.3 UART的FIFO控制寄存器
7.5.4 UART Modem控制寄存器
7.5.5 UART接收(Rx)/(Tx)發(fā)送狀態(tài)寄存器
7.5.6 UART錯(cuò)誤狀態(tài)寄存器
7.5.7 UART的FIFO狀態(tài)寄存器
7.5.8 UART Modem狀態(tài)寄存器
7.5.9 UART發(fā)送緩沖寄存器(保存寄存器和FIFO寄存器)
7.5.10 UART接收緩沖寄存器(保存寄存器和FIFO寄存器)
7.5.11 UART波特率分頻寄存器
7.5.12 波特率錯(cuò)誤容限
7.5.13 UART中斷處理寄存器
7.5.14 UART中斷源處理寄存器
7.5.15 UART中斷屏蔽寄存器
7.6 UART接口應(yīng)用舉例
第8章ADC和觸摸屏接口
8.1 ADC及觸摸屏概述
8.2 ADC及觸摸屏的特性
8.3 ADC及觸摸屏界面操作
8.4功能描述
8.4.1 A/D轉(zhuǎn)換時(shí)間
8.4.2 觸摸屏接口方式
8.4.3 待機(jī)模式
8.4.4 編程記錄
8.5 ADC和觸摸屏界面的特殊寄存器
8.5.1 ADC的控制寄存器(ADCCON)
8.5.2 ADC的觸摸屏控制寄存器(ADCTSC)
8.5.3 在X/Y坐標(biāo)轉(zhuǎn)換下觸摸屏的PIN的條件
8.5.4 ADC開(kāi)始延遲寄存器(ADCDLY)
8.5.5 ADC的數(shù)據(jù)轉(zhuǎn)換寄存器(ADCDAT0)
8.5.6 ADC的數(shù)據(jù)轉(zhuǎn)換寄存器(ADCDAT1)
8.5.7 ADC的觸摸屏UP-DOWN寄存器(ADCUPDN)
8.5.8 ADC觸摸屏中斷清除寄存器
8.6 ADC應(yīng)用舉例
8.6.1 硬件設(shè)計(jì)
8.6.2 軟件設(shè)計(jì)
第9章 Android系統(tǒng)級(jí)開(kāi)發(fā)概述
9.1 Android系統(tǒng)的發(fā)展
9.2 Android系統(tǒng)架構(gòu)
9.2.1 應(yīng)用程序?qū)樱ˋpplication)
9.2.2 應(yīng)用程序框架層(Application Framework)
9.2.3 系統(tǒng)運(yùn)行庫(kù)層(Libraries)
9.2.4 Linux內(nèi)核層
9.3 Android系統(tǒng)內(nèi)核
9.3.1 Linux內(nèi)核結(jié)構(gòu)
9.3.2 Android內(nèi)核和驅(qū)動(dòng)
9.4 系統(tǒng)移植的概念和驅(qū)動(dòng)開(kāi)發(fā)的方法
第 10章 Android系統(tǒng)開(kāi)發(fā)環(huán)境
10.1 交叉開(kāi)發(fā)環(huán)境
10.1.1 交叉開(kāi)發(fā)環(huán)境
10.1.2 宿主機(jī)與目標(biāo)機(jī)的連接
10.1.3 宿主機(jī)環(huán)境
10.1.4 目標(biāo)機(jī)環(huán)境
10.2 Linux操作系統(tǒng)及其開(kāi)發(fā)工具
10.2.1 Linux操作系統(tǒng)概述
10.2.2 Linux操作系統(tǒng)核心與驅(qū)動(dòng)程序
10.2.3 Linux交叉編譯工具鏈
10.3 Android系統(tǒng)開(kāi)發(fā)工具
10.3.1 Android代碼目錄結(jié)構(gòu)
10.3.2 Ubuntu與虛擬機(jī)
10.3.3 Android系統(tǒng)級(jí)開(kāi)發(fā)工具鏈
第 11章 Boot Loader
11.1 Boot Loader概述
11.1.1 Boot Loader主要功能
11.1.2 Boot Loader操作模式
11.1.3 Boot Loader的通信
11.2 Boot Loader工作過(guò)程
11.2.1 Boot Loader工作過(guò)程概述
11.2.2 Boot Loader階段1
11.2.3 Boot Loader階段2
11.3 U-Boot啟動(dòng)流程分析
11.3.1 U-Boot概述
11.3.2 U-Boot代碼結(jié)構(gòu)
11.3.3 U-Boot啟動(dòng)流程分析
11.3.4 Boot Loader的修改
第 12章 Android驅(qū)動(dòng)開(kāi)發(fā)
12.1 Android驅(qū)動(dòng)開(kāi)發(fā)概述
12.1.1 Android驅(qū)動(dòng)概述
12.1.2 Android系統(tǒng)移植
12.2 Android硬件抽象層
12.2.1 Android硬件抽象層概述
12.2.2 HAL Legacy 和 HAL
12.2.3 支持HAL的驅(qū)動(dòng)程序
第 13章 Input輸入子系統(tǒng)
13.1 用戶輸入系統(tǒng)介紹
13.1.1 Android輸入系統(tǒng)的結(jié)構(gòu)
13.1.2 移植工作
13.2 Linux Input子系統(tǒng)
13.2.1 設(shè)備驅(qū)動(dòng)層的注冊(cè)
13.2.2 handler的注冊(cè)過(guò)程
13.3 Input驅(qū)動(dòng)程序開(kāi)發(fā)
13.3.1 文件input.h
13.3.2 文件KeycodeLabels.h
13.3.3 文件KeyCharacterMap.h
13.3.4 kl格式文件
13.3.5 kcm格式文件
13.3.6 文件EventHub.cpp
13.4 模擬器中的實(shí)現(xiàn)
第 14章傳感器系統(tǒng)
14.1 傳感器系統(tǒng)的結(jié)構(gòu)
14.1.1 傳感器系統(tǒng)Java層
14.1.2 傳感器系統(tǒng)Frameworks層
14.2 傳感器驅(qū)動(dòng)開(kāi)發(fā)
14.2.1 移植驅(qū)動(dòng)程序
14.2.2 移植硬件抽象層
14.2.3 實(shí)現(xiàn)上層部分
14.3 傳感器驅(qū)動(dòng)的硬件抽象層實(shí)例