嵌入式系統(tǒng)技術(shù)教程

出版時(shí)間:2009-3  出版社:張石 人民郵電出版社 (2009-03出版)  作者:張石 編  頁數(shù):301  

前言

本書以嵌入式系統(tǒng)的開發(fā)為主線,全面系統(tǒng)地講述了嵌入式系統(tǒng)開發(fā)的基本知識(shí)、基本流程和基本方法。以華邦電子股份有限公司(以下簡(jiǎn)稱Winbond公司)的ARM處理器W90P7 10為硬件開發(fā)平臺(tái),介紹了嵌入式系統(tǒng)的軟硬件開發(fā)過程。W90P710是Winbond公司推出的具有高整合度的基于.ARM7TDMI內(nèi)核的通用型芯片。具有低成本與高性能、高附加值與產(chǎn)品規(guī)劃可塑性兼?zhèn)涞葍?yōu)勢(shì)。本書共分10章,各章的具體內(nèi)容如下。第1章主要介紹嵌入式系統(tǒng)概論,內(nèi)容涉及嵌入式系統(tǒng)的概念、特點(diǎn)、應(yīng)用和組成。通過本章的學(xué)習(xí),可使學(xué)生系統(tǒng)地建立起嵌入式系統(tǒng)開發(fā)的整體框架和知識(shí)體系。第2章首先介紹微處理器的一些關(guān)鍵技術(shù),如馮·諾依曼結(jié)構(gòu)和哈佛結(jié)構(gòu)、RISC技術(shù)和CISC技術(shù)、流水線技術(shù)。接著,介紹了ARM體系結(jié)構(gòu)的發(fā)展和特征,然后詳細(xì)介紹了處理器工作狀態(tài),寄存器的組織,異常處理,ARM存儲(chǔ)器映射等。第3章詳細(xì)講述了ARM指令系統(tǒng),主要從ARM指令尋址方式、ARM指令分類介紹等幾個(gè)方面全面系統(tǒng)地介紹ARM指令集,并給出了指令使用例子和實(shí)現(xiàn)一定功能的匯編語言程序段。最后簡(jiǎn)介Thumb指令集的概念、特點(diǎn),并且與ARM指令進(jìn)行了對(duì)比。通過本章的學(xué)習(xí),可以使學(xué)生掌握ARM匯編指令的使用方法。第4章介紹了ARM匯編語言程序設(shè)計(jì)的基本方法,詳細(xì)講解了ARM偽操作、偽指令,ARM匯編語言中的符號(hào)、表達(dá)式、程序格式,以及ARM匯編語言與C語言混合編程的方法。并通過一些實(shí)例來講解匯編語言中最基本的分支結(jié)構(gòu)和循環(huán)結(jié)構(gòu),實(shí)現(xiàn)了跳轉(zhuǎn)表分支、數(shù)據(jù)塊的復(fù)制等不可缺少的匯編程序,幫助學(xué)生掌握ARM匯編語言程序的編程方法。第5章對(duì)W90P7 10處理器的各功能模塊做了介紹,重點(diǎn)介紹了系統(tǒng)管理部分,包括存儲(chǔ)系統(tǒng)、時(shí)鐘系統(tǒng)、電源管理系統(tǒng)以及相關(guān)的寄存器描述,該部分直接關(guān)系到最小系統(tǒng)的軟硬件設(shè)計(jì)。本章對(duì)W90P710處理器的其他功能模塊也做了簡(jiǎn)要的介紹,為學(xué)生了解各模塊功能起到一個(gè)索引的作用。第6章介紹了W90P710實(shí)驗(yàn)教學(xué)系統(tǒng)的硬件系統(tǒng)設(shè)計(jì),主要對(duì)硬件原理圖進(jìn)行了詳細(xì)地講解,這些接口單元基本包含了W90P710處理器所提供的大部分功能。包括最小系統(tǒng):電源、時(shí)鐘、復(fù)位、JTAG調(diào)試接口以及FLASH和SDRAM存儲(chǔ)系統(tǒng),以及鍵盤、LCD、通信和其他存儲(chǔ)系統(tǒng)的電路接口。第7章主要以W90P710處理器的幾個(gè)常用功能部件為編程對(duì)象,介紹了基于W90P710處理器系統(tǒng)的程序設(shè)計(jì)與調(diào)試,同時(shí)介紹了引導(dǎo)程序的基本原理和編程方法。通過對(duì)本章的閱讀,可使學(xué)生了解W90P710處理器各功能部件的工作原理及基本編程方法。第8章介紹了μCLinux嵌人式操作系統(tǒng)以及μCLinux在W90P710實(shí)驗(yàn)系統(tǒng)上的移植,嵌入式μCLinux的設(shè)備驅(qū)動(dòng)程序以及嵌入式μCLinux的應(yīng)用程序設(shè)計(jì)。在每一小節(jié)都給出了具體的實(shí)例。

內(nèi)容概要

  《嵌入式系統(tǒng)技術(shù)教程》全面系統(tǒng)地介紹了嵌入式系統(tǒng)開發(fā)的基本知識(shí)和方法。全書分為4部分。第1部分介紹了嵌入式系統(tǒng)基本概念及廣泛使用的ARM技術(shù),包括ARM處理器的體系結(jié)構(gòu)、尋址方式、指令系統(tǒng)、匯編語言程序和C語言程序設(shè)計(jì)基礎(chǔ)。第2部分介紹了基于ARM7TDMI內(nèi)核的W90P710處理器,以及基于W90P710處理器的實(shí)驗(yàn)教學(xué)系統(tǒng)設(shè)計(jì);并以W90P710實(shí)驗(yàn)教學(xué)系統(tǒng)為開發(fā)平臺(tái),列舉了幾個(gè)典型的基本功能部件的程序?qū)嵗O(shè)計(jì)。第3部分介紹了嵌入式mCLinux設(shè)備驅(qū)動(dòng)程序和應(yīng)用程序的設(shè)計(jì)。第4部分介紹了4種基于W90P710處理器的應(yīng)用實(shí)例的設(shè)計(jì)方案?!  肚度胧较到y(tǒng)技術(shù)教程》內(nèi)容豐富,力求實(shí)用。列舉的程序?qū)嵗哂械湫托?,并且全部調(diào)試通過,有很大的參考價(jià)值?!  肚度胧较到y(tǒng)技術(shù)教程》可作為高等院校電子信息類、計(jì)算機(jī)科學(xué)與技術(shù)等專業(yè)高年級(jí)學(xué)生和研究生的教材,也可作為嵌入式系統(tǒng)應(yīng)用工程技術(shù)人員的參考用書。

書籍目錄

第1章 嵌入式系統(tǒng)概論1.1 嵌入式系統(tǒng)的概念1.2 嵌入式系統(tǒng)的特點(diǎn)1.3 嵌入式系統(tǒng)的應(yīng)用1.4 嵌入式系統(tǒng)的基本組成小結(jié)  思考題與習(xí)題第2章 ARM體系結(jié)構(gòu)2.1 RISC技術(shù)和流水線技術(shù)2.1.1 計(jì)算機(jī)體系結(jié)構(gòu)2.1.2 RISC技術(shù)2.1.3 流水線技術(shù)2.2 ARM體系結(jié)構(gòu)簡(jiǎn)介2.2.1 ARM體系結(jié)構(gòu)的演變2.2.2 ARM體系結(jié)構(gòu)的特征2.2.3 ARM體系的變種2.2.4 ARM系列2.2.5 ARM存儲(chǔ)數(shù)據(jù)類型2.3 ARM處理器工作狀態(tài)2.3.1 兩種工作狀態(tài)2.3.2 工作狀態(tài)的切換2.4 ARM處理器工作模式2.5 ARM處理器寄存器組織2.5.1 ARM狀態(tài)下的寄存器組織2.5.2 Thumb狀態(tài)下的寄存器組織2.6 ARM異常2.6.1 ARM異常概述2.6.2 ARM異常處理2.6.3 ARM異常向量表2.6.4 ARM異常優(yōu)先級(jí)2.6.5 ARM異常中斷使用的寄存器2.7 ARM存儲(chǔ)器和存儲(chǔ)器映射I/O2.7.1 ARM體系的存儲(chǔ)空間2.7.2 ARM存儲(chǔ)器格式2.7.3 非對(duì)齊存儲(chǔ)訪問操作2.7.4 存儲(chǔ)器映射I/O2.8 ARM總線技術(shù)小結(jié)  思考題與習(xí)題第3章 ARM指令系統(tǒng)3.1 ARM指令集概述3.1.1 指令分類和指令格式3.1.2 ARM指令的條件碼3.1.3 ARM指令集編碼3.2 ARM指令尋址方式3.2.1 立即尋址3.2.2 寄存器尋址3.2.3 寄存器移位尋址3.2.4 寄存器間接尋址3.2.5 變址尋址3.2.6 多寄存器尋址3.2.7 堆棧尋址3.2.8 塊復(fù)制尋址3.2.9 相對(duì)尋址3.3 ARM指令分類介紹3.3.1 跳轉(zhuǎn)指令3.3.2 數(shù)據(jù)處理指令3.3.3 程序狀態(tài)寄存器傳送指令3.3.4 加載和存儲(chǔ)指令3.3.5 協(xié)處理器指令3.3.6 異常產(chǎn)生指令3.4 Thumb指令小結(jié)  思考題與習(xí)題第4章 ARM匯編程序設(shè)計(jì)4.1 ARM匯編語言語句格式4.2 ARM匯編偽操作4.2.1 符號(hào)定義偽操作4.2.2 數(shù)據(jù)定義偽操作4.2.3 匯編控制偽操作4.2.4 數(shù)據(jù)幀描述偽操作4.2.5 信息報(bào)告?zhèn)尾僮?.2.6 其他雜項(xiàng)偽操作4.3 ARM匯編語言偽指令4.4 ARM匯編語言中的符號(hào)4.5 ARM匯編語言中的表達(dá)式4.6 ARM匯編語言程序結(jié)構(gòu)4.6.1 ARM映像文件的結(jié)構(gòu)4.6.2 ARM映像文件各組成部分的地址映射關(guān)系4.6.3 scatter文件的應(yīng)用4.7 C語言和匯編語言混合編程4.7.1 C語言和匯編語言互相調(diào)用4.7.2 ARM C編譯器的特定關(guān)鍵字4.8 ARM匯編語言設(shè)計(jì)實(shí)例4.8.1 分支結(jié)構(gòu)4.8.2 循環(huán)結(jié)構(gòu)小結(jié)  思考題與習(xí)題第5章 W90P710處理器簡(jiǎn)介5.1 W90P710處理器概述5.2 處理器功能框圖及管腳描述5.2.1 W90P710處理器功能描述5.2.2 W90P710處理器引腳分布及管腳描述5.3 W90P710處理器各功能描述5.3.1 W90P710處理器系統(tǒng)管理器5.3.2 外部總線接口5.3.3 Cache控制器5.3.4 以太網(wǎng)MAC控制器5.3.5 GDMA控制器5.3.6 USB主控制器5.3.7 USB設(shè)備控制器5.3.8 SDIO主控制器5.3.9 LCD控制器5.3.10 音頻控制器5.3.11 通用異步串行控制器5.3.12 定時(shí)器/看門狗控制器5.3.13 高級(jí)中斷控制器5.3.14 通用IO5.3.15 實(shí)時(shí)時(shí)鐘5.3.16 智能卡主接口5.3.17 I2S接口5.3.18 通用同步串行接口5.3.19 PWM5.3.20 鍵盤接口5.3.21 PS2主接口控制器小結(jié)  思考題與習(xí)題第6章 W90P710實(shí)驗(yàn)教學(xué)系統(tǒng)設(shè)計(jì)6.1 W90P710實(shí)驗(yàn)教學(xué)系統(tǒng)資源概述6.2 電源系統(tǒng)設(shè)計(jì)6.3 時(shí)鐘電路設(shè)計(jì)6.4 復(fù)位電路設(shè)計(jì)6.5 JTAG調(diào)試電路設(shè)計(jì)6.6 存儲(chǔ)系統(tǒng)設(shè)計(jì)6.6.1 FLASH存儲(chǔ)器接口6.6.2 SDRAM存儲(chǔ)器接口6.7 鍵盤接口電路設(shè)計(jì)6.8 LED顯示接口電路6.9 串行通信接口電路6.9.1 UART接口電路6.9.2 I2C接口電路6.9.3 通用串行接口(USI)電路6.9.4 USB主機(jī)接口電路6.9.5 USB設(shè)備接口電路6.10 LCD接口電路設(shè)計(jì)6.11 SD卡接口電路設(shè)計(jì)6.12 智能卡接口電路設(shè)計(jì)6.13 音頻接口電路設(shè)計(jì)6.14 以太網(wǎng)接口電路設(shè)計(jì)小結(jié)  思考題與習(xí)題第7章 部件工作原理與編程示例7.1 GPIO口的工作原理與編程示例7.2 中斷控制器的工作原理與編程示例7.3 通用異步收發(fā)器(UART)的工作原理與編程示例7.4 定時(shí)器(TIMER)的工作原理與編程示例7.5 引導(dǎo)程序小結(jié)  思考題與習(xí)題第8章 嵌入式μCLinux8.1 概述8.1.1 嵌入式μCLinux簡(jiǎn)介8.1.2 嵌入式μCLinux的交叉開發(fā)環(huán)境8.1.3 開發(fā)工具GNU的介紹8.2 嵌入式μCLinux在W90P710開發(fā)平臺(tái)上的移植8.2.1 嵌入式μCLinux的交叉開發(fā)環(huán)境的建立8.2.2 嵌入式μCLinux的Bootloader8.2.3 嵌入式μCLinux的內(nèi)核8.2.4 嵌入式μCLinux的文件系統(tǒng)8.3 嵌入式μCLinux的設(shè)備驅(qū)動(dòng)8.3.1 Linux的設(shè)備管理8.3.2 設(shè)備驅(qū)動(dòng)程序結(jié)構(gòu)8.3.3 keypad驅(qū)動(dòng)程序設(shè)計(jì)8.3.4 UART驅(qū)動(dòng)程序設(shè)計(jì)8.4 嵌入式μCLinux下應(yīng)用程序設(shè)計(jì)8.4.1 keypad應(yīng)用程序設(shè)計(jì)8.4.2 UART應(yīng)用程序設(shè)計(jì)小結(jié)  思考題與習(xí)題第9章 ARM ADS集成開發(fā)環(huán)境9.1 ARM開發(fā)工具及開發(fā)環(huán)境簡(jiǎn)介9.1.1 ARM開發(fā)工具簡(jiǎn)介9.1.2 ARM ADS集成開發(fā)環(huán)境9.2 工程創(chuàng)建、調(diào)試和程序固化9.2.1 工程創(chuàng)建及參數(shù)設(shè)置9.2.2 使用ARMulator來調(diào)試簡(jiǎn)單程序9.2.3 使用JTAG仿真器來調(diào)試嵌入式程序9.2.4 調(diào)試固化在目標(biāo)板中的程序9.2.5 半主機(jī)Semihosting調(diào)試技術(shù)小結(jié)  思考題與習(xí)題第10章 W90P710處理器應(yīng)用實(shí)例10.1 稅控收款機(jī)10.1.1 稅控收款機(jī)簡(jiǎn)介10.1.2 稅控收款機(jī)總體方案設(shè)計(jì)10.1.3 稅控收款機(jī)硬件方案設(shè)計(jì)10.1.4 稅控收款機(jī)軟件方案設(shè)計(jì)10.2 數(shù)碼相框10.2.1 數(shù)碼相框簡(jiǎn)介10.2.2 數(shù)碼相框總體方案設(shè)計(jì)10.2.3 數(shù)碼相框硬件設(shè)計(jì)10.2.4 數(shù)碼相框軟件設(shè)計(jì)10.3 遠(yuǎn)程監(jiān)控系統(tǒng)10.3.1 遠(yuǎn)程監(jiān)控系統(tǒng)簡(jiǎn)介10.3.2 遠(yuǎn)程監(jiān)控系統(tǒng)總體方案設(shè)計(jì)10.3.3 遠(yuǎn)程監(jiān)控系統(tǒng)硬件設(shè)計(jì)10.3.4 遠(yuǎn)程監(jiān)控系統(tǒng)軟件設(shè)計(jì)10.4 RFID讀寫器10.4.1 RFID簡(jiǎn)介10.4.2 RFID讀寫器總體方案設(shè)計(jì)10.4.3 RFID系統(tǒng)硬件設(shè)計(jì)10.4.4 天線設(shè)計(jì)10.4.5 RFID系統(tǒng)軟件設(shè)計(jì)小結(jié)  思考題與習(xí)題參考文獻(xiàn)

章節(jié)摘錄

插圖:2.2.3 ARM體系的變種ARM體系的變種是根據(jù)某些特定功能而定義的。下面具體介紹一下T變種、M變種,E變種、J變種和SIMD變種。1.T變種(1Fhumb指令集)Thumb指令集是將ARM指令集的-個(gè)子集重新編碼而形成的一個(gè)指令集。ARM指令長(zhǎng)度為32位,Thumb指令長(zhǎng)度位為16位。當(dāng)系統(tǒng)的數(shù)據(jù)總線寬度小于32位時(shí),系統(tǒng)使用Thumb指令集要比使用ARM指令集的性能好。另外一個(gè)好處是代碼尺寸,同樣一段c代碼,用Thumb指令編譯的結(jié)果,其長(zhǎng)度大約只占ARM編譯結(jié)果的65%左右,可以明顯地節(jié)省存儲(chǔ)器空間。在大多數(shù)情況下,緊湊的代碼和窄帶寬的存儲(chǔ)器系統(tǒng),還會(huì)帶來功耗上的優(yōu)勢(shì)。與ARM指令集相比,Thumb指令集有以下局限。(1)完成相同的操作,Thumb指令通常需要更多的指令。因此,ARM指令集更為適合對(duì)系統(tǒng)運(yùn)行時(shí)間要求苛刻的應(yīng)用場(chǎng)合。(2)Thumb指令集沒有包含進(jìn)行異常處理時(shí)需要的一些指令,因此在異常中斷的低級(jí)處理時(shí),還是需要使用ARM指令。這種限制決定了Thumb指令需要和ARM指令配合使用。使用ARM指令集還是使用Thumb指令集,需要從存儲(chǔ)器開銷和性能要求兩方面加以權(quán)衡考慮。2.M變種(長(zhǎng)乘法指令)M變種增加了兩條用于進(jìn)行長(zhǎng)乘法操作的AKM指令。其中一條指令用于實(shí)現(xiàn)32位整數(shù)乘以32位整數(shù),生成64位整數(shù)的長(zhǎng)乘法操作;另一條指令用于實(shí)現(xiàn)32位整數(shù)乘以32位整數(shù),然后再加上32位整數(shù),生成64位整數(shù)的長(zhǎng)乘加操作。在需要這種長(zhǎng)乘法的應(yīng)用場(chǎng)合M變種很適合。然而,在有些應(yīng)用場(chǎng)合中,乘法操作的性能并不重要,但對(duì)于尺寸要求很苛刻,在系統(tǒng)實(shí)現(xiàn)時(shí)就不適合增加M變種的功能。M變種首先在ARMV3版本中引入。如果沒有上述的設(shè)計(jì)方面的限制,在ARMV4及其以后的版本中,M變種是系統(tǒng)中的標(biāo)準(zhǔn)部分。對(duì)于支持長(zhǎng)乘法ARM指令的,ARM體系版本,使用字符M來表示。3.E變種(增強(qiáng)型DSP指令)E變種包含了一些附加的指令,這些指令用于增強(qiáng)處理器對(duì)一些典型的DSP算法的處理性能。主要包括如下指令(1)幾條新的實(shí)現(xiàn)16位數(shù)據(jù)乘法和乘加操作的指令。(2)實(shí)現(xiàn)飽和的帶符號(hào)數(shù)的加減法操作的指令。所謂飽和的帶符號(hào)數(shù)的加減法操作是在加減法操作溢出時(shí),結(jié)果并不進(jìn)行卷繞,而是使用最大的整數(shù)或最小的負(fù)數(shù)來表示。(3)進(jìn)行雙字?jǐn)?shù)據(jù)操作的指令,包括雙字讀取指令LDRD,雙字寫入指令STRD和協(xié)處理器的寄存器傳輸指令MCRR/MKRC。

編輯推薦

《嵌入式系統(tǒng)技術(shù)教程》的作者均是教學(xué)和科研一線的骨干教師,具有多年的嵌入式系統(tǒng)教學(xué)和開發(fā)經(jīng)驗(yàn)。《嵌入式系統(tǒng)技術(shù)教程》部分內(nèi)容取材于作者嵌入式系統(tǒng)開發(fā)科研項(xiàng)目。《嵌入式系統(tǒng)技術(shù)教程》內(nèi)容豐富,系統(tǒng)全面,重點(diǎn)突出,闡述循序漸進(jìn)、由淺入深。各章均安排了豐富的例題、思考題和習(xí)題,便于學(xué)生自學(xué)和自測(cè)。以ARM7 W90P71O處理器和嵌入式uCLinu×為核心,以嵌入式系統(tǒng)開發(fā)為主線介紹相關(guān)知識(shí)、流程和方法,以典型程序和應(yīng)用實(shí)例為基礎(chǔ)培養(yǎng)實(shí)際應(yīng)用開發(fā)能力。

圖書封面

評(píng)論、評(píng)分、閱讀與下載


    嵌入式系統(tǒng)技術(shù)教程 PDF格式下載


用戶評(píng)論 (總計(jì)4條)

 
 

  •   肯定是正版、這個(gè)我肯定;不過送書速度比當(dāng)當(dāng)要慢、但價(jià)格比當(dāng)當(dāng)便宜些。因?yàn)槭钦n本,買來,具體沒怎么看,用處不大了。
  •   應(yīng)該是正版,紙有點(diǎn)薄,還湊合吧
  •   快遞倒是挺快的,先不說書的內(nèi)容(因?yàn)檫€沒看),隨手翻了翻,那紙,還半透明的呢,感覺比盜版還要盜版,雖然現(xiàn)在物價(jià)是這么貴,但也不用這么省吧~~!總的來說,很失望~~~第一次買到質(zhì)量那么差的書,TMD
  •   書挺好 就是不太詳細(xì)
 

250萬本中文圖書簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號(hào)-7