關于我們
書單推薦
新書推薦
|
|
定 價:69 元
- 作者:姚琳、萬亞東、汪紅兵
- 出版時間:2019/7/1
- ISBN:9787302528593
- 出 版 社:清華大學出版社
- 中圖法分類:TP36
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:16開
本書內(nèi)容全面、重點明確、表述簡潔,注重將微機接口控制器的基本原理和實際操作相結合,突出軟硬件設計中的計算思維模式。全書共12章,內(nèi)容包括微機原理及基本概念、CortexM3處理器體系結構、ARM匯編、嵌入式系統(tǒng)開發(fā)基礎、GPIO控制器、NVIC及EXTI中斷控制器、定時器、USART總線、IIC總線、SPI總線、ADC以及低功耗控制,并配套基于STM32L15x系列的實驗教程。 本書適合作為非計算機專業(yè)微機原理及接口技術的教材,也可作為計算機類嵌入式系統(tǒng)課程的參考教材。
1)選用主流ARM Cortex-M3體系結構,便于學生校內(nèi)實踐,契合企業(yè)需求;2)兼顧嵌入式處理器及外圍控制器的原理和操作,讓讀者理解CortexM3處理器的特性,各種控制器的工作原理及使用方法,理解嵌入式處理器架構及涉及到的方法;3)針對目前M2M、物聯(lián)網(wǎng)、無線傳輸?shù)鹊凸那度胧介_發(fā)的應用,選用了STM32L系列超低功耗處理器;4)ST原廠Dicovery系列開發(fā)板設計實驗,資源豐富;5)精選一些傳感器采集、無線傳輸、觸摸輸入、顯示、休眠喚醒的等綜合實例,便于學生在本書開發(fā)板的基礎上通過模塊設計快速開發(fā)物聯(lián)網(wǎng)相關的創(chuàng)新項目;6)結合CMSIS庫進行實例開發(fā),對CMSIS的關鍵函數(shù)進行了梳理,對涉及系統(tǒng)運行的匯編部分進行了詳細分析。
前言 隨著智能制造、物聯(lián)網(wǎng)、大數(shù)據(jù)技術的推進和應用,以及新工科建設的需求,數(shù)據(jù)的采集和感知成為這些技術應用不可或缺的重要環(huán)節(jié),各種物聯(lián)網(wǎng)大賽、創(chuàng)新創(chuàng)業(yè)大賽都對軟硬件系統(tǒng)設計能力提出了很高的要求,需要學生具有數(shù)據(jù)感知、處理、傳輸和分析的綜合能力;此外,隨著計算思維在計算機基礎教學方面的不斷推進,思維能力培養(yǎng)已成為教育教學界的共識,計算機硬件系統(tǒng)結構中包含大量計算思維的知識點,如RISC、CISC、哈佛體系結構、Cache分層存儲、中斷處理及優(yōu)化機制、流水線、串行并行總線技術等,是計算思維培養(yǎng)非常有效的一門課程。微機原理與接口技術是非計算機專業(yè)計算機硬件教育的重要課程,本教材以嵌入式系統(tǒng)為對象,對微機的基本原理、ARM微處理器的接口技術進行梳理,結合大量實驗培養(yǎng)學生計算機硬件素養(yǎng)和計算思維能力,提高學生在計算機軟硬件系統(tǒng)設計、調(diào)試和創(chuàng)新方面的能力,適用于本科非計算機專業(yè)學生。 本書選用CortexM3處理器內(nèi)核的STM32L152系列低功耗微控制器對ARM嵌入式系統(tǒng)的體系結構進行講述,教材以計算機硬件體系涉及的計算思維為主線,第1章闡述微型計算機的基本概念、內(nèi)部架構和嵌入式系統(tǒng)概念;第2章以ARM CortexM3的處理器工作模式、流水、中斷等為案例具體闡述硬件設計的方法;第3章介紹匯編指令編碼、尋址技術并對啟動代碼進行了分析;第4章簡述了嵌入式開發(fā)流程及C語言基礎;第5~11章對常用外圍控制器GPIO、EXTI、Timer、USART、IIC、SPI、ADC的一般性工作原理、STM32L1系列處理器的具體實現(xiàn)和特色、寄存器級別和庫函數(shù)級別兩個層次的程序設計方法進行了詳細闡述;第12章對低功耗設計進行了介紹。教材內(nèi)容兼顧嵌入式處理器及外圍控制器原理講解和應用程序設計,讓讀者理解CortexM3處理器的特性,各種控制器的工作原理及使用方法,理解嵌入式處理器架構。 本教材目標定位為軟硬件協(xié)同設計思維,而不僅僅是會使用和開發(fā)嵌入式系統(tǒng),結合實驗設計,讓學生必須理解ARM架構、外圍控制器的工作原理和設計思路,能夠進行應用系統(tǒng)設計。 本書適用于工科非計算機專業(yè)微機接口技術、嵌入式系統(tǒng)課程,也可作為計算機專業(yè)嵌入式開發(fā)課程的教材。
作者 2019年4月
目錄 第1章微型計算機與嵌入式系統(tǒng)概論1 1.1微型計算機概述1 1.1.1微型計算機系統(tǒng)的組成1 1.1.2微處理器的發(fā)展3 1.2微型計算機的基本原理7 1.2.1馮·諾依曼體系結構7 1.2.2微機的總線8 1.2.3哈佛體系結構14 1.2.4微處理器的內(nèi)部結構15 1.2.5I/O接口技術19 1.2.6存儲器20 1.2.7程序的執(zhí)行過程24 1.3嵌入式系統(tǒng)概述25 1.4嵌入式系統(tǒng)架構27 1.5嵌入式系統(tǒng)的典型應用28 1.6典型嵌入式開源硬件和軟件系統(tǒng)31 1.6.1開源硬件平臺31 1.6.2嵌入式開源操作系統(tǒng)33 第2章CortexM3微處理器的體系結構35 2.1ARM微處理器系列介紹35 2.2ARM CortexM3體系結構37 2.2.1總體架構37 2.2.2操作模式39 2.2.3寄存器40 2.2.4總線44 2.2.5存儲器45 2.2.6中斷50 2.3STM32L152RET6微處理器介紹50 2.4STM32L152RET6微處理器的系統(tǒng)結構51 2.5STM32L152RET6微處理器的引腳說明54 2.6STM32L152RET6微處理器的復位和時鐘控制57 2.7STM32L152RET6微處理器的存儲映射59 〖1〗微機原理與接口技術嵌入式系統(tǒng)描述 〖1〗目錄 第3章CortexM3處理器的指令系統(tǒng)63 3.1CortexM3處理器的指令系統(tǒng)概述63 3.1.1指令系統(tǒng)基本概念63 3.1.2指令格式65 3.1.3尋址方式67 3.1.4數(shù)據(jù)傳送指令68 3.1.5存儲器訪問指令69 3.1.6算術運算指令74 3.1.7邏輯運算指令77 3.1.8移位和循環(huán)指令78 3.1.9比較指令79 3.1.10分支控制指令80 3.1.11其他指令81 3.2ARM匯編器中的偽指令83 3.2.1Thumb偽指令83 3.2.2符號定義偽指令84 3.2.3數(shù)據(jù)定義偽指令85 3.2.4匯編控制偽指令86 3.2.5其他常用的偽指令87 3.3匯編語言的程序結構88 第4章開發(fā)板硬件系統(tǒng)及開發(fā)環(huán)境92 4.1最小系統(tǒng)設計92 4.2開發(fā)板電路原理圖93 4.2.1電源93 4.2.2復位和啟動電路95 4.2.3時鐘95 4.2.4調(diào)試接口96 4.2.5按鍵97 4.2.6LED燈97 4.2.7顯示屏98 4.2.8擴展I/O口98 4.3軟件開發(fā)環(huán)境99 4.3.1嵌入式軟件開發(fā)流程99 4.3.2程序開發(fā)庫CMSIS101 4.3.3STM32L52嵌入式程序開發(fā)預備知識103 第5章通用輸入輸出112 5.1GPIO原理112 5.1.1GPIO功能112 5.1.2I/O模式配置113 5.2GPIO寄存器115 5.3GPIO操作函數(shù)庫120 5.4GPIO實例128 5.4.1GPIO寄存器基本操作128 5.4.2GPIO LED燈控制130 5.4.3GPIO按鍵輸入131 第6章異常和中斷處理技術133 6.1中斷的基本概念133 6.2中斷向量表134 6.3中斷的執(zhí)行過程138 6.3.1中斷響應基本流程138 6.3.2中斷優(yōu)化技術141 6.3.3系統(tǒng)異常142 6.4嵌套向量中斷控制器NVIC144 6.4.1STM32L152 NVIC144 6.4.2NVIC寄存器144 6.4.3系統(tǒng)異常處理149 6.4.4全局中斷管理150 6.4.5NVIC庫函數(shù)151 6.5外部中斷/事件控制器EXTI157 6.6寄存器說明158 6.7EXTI函數(shù)庫162 6.8中斷案例164 第7章定時器168 7.1定時器原理概述168 7.2內(nèi)部定時器SysTick170 7.2.1SysTick寄存器170 7.2.2SysTick定時器庫函數(shù)172 7.2.3SysTick定時器應用例程174 7.3外圍定時器基本概念175 7.4基本定時器TIM6、TIM7179 7.5通用定時器TIM2~TIM4、TIM9~TIM11181 7.5.1通用定時器時基單元182 7.5.2通用定時器輸入捕獲和輸出比較單元185 7.5.3TIMx的外部觸發(fā)同步模式189 7.6定時器寄存器191 7.7外圍定時器庫函數(shù)197 7.8定時器應用例程205 7.8.1定時器寄存器操作案例205 7.8.2基本計時中斷示例206 7.8.3比較輸出示例208 7.8.4輸入捕獲示例212 7.8.5PWM輸出和輸入示例215 第8章USART串口控制器218 8.1串行輸入輸出接口的基本概念218 8.2串行通信協(xié)議219 8.2.1異步串行通信協(xié)議219 8.2.2同步串行通信協(xié)議220 8.2.3串行通信基本概念221 8.3STM32L152 USART內(nèi)部結構與原理224 8.3.1發(fā)送器226 8.3.2接收器228 8.3.3校驗控制232 8.3.4硬件流控制232 8.3.5USART中斷請求233 8.4USART寄存器234 8.5USART 數(shù)據(jù)傳輸配置240 8.5.1波特率計算240 8.5.2異步雙向通信模式配置241 8.6USART 幀傳輸協(xié)議242 8.6.1串行鏈路幀格式設計242 8.6.2MODBUS幀格式246 8.7USART 函數(shù)庫247 8.7.1寄存器定義247 8.7.2USART庫函數(shù)250 8.8USART 案例257 8.8.1串口寄存器操作案例257 8.8.2串口配置基本流程258 8.8.3PC串口通信案例259 8.8.4狀態(tài)機多字節(jié)數(shù)據(jù)幀發(fā)送和接收案例261 第9章IIC總線267 9.1IIC總線概述267 9.2I2C總線的基本操作268 9.3STM32L152 I2C總線控制器273 9.4I2C寄存器描述275 9.5I2C數(shù)據(jù)通信流程281 9.5.1I2C從模式通信281 9.5.2I2C主模式通信283 9.5.3總線通信錯誤285 9.5.4中斷請求285 9.6函數(shù)庫287 9.6.1I2C寄存器結構 287 9.6.2I2C庫函數(shù)288 9.7I2C案例298 9.7.1I2C寄存器操作案例298 9.7.2I2C基本配置299 9.7.3模擬I2C實現(xiàn)301 9.7.4串行Flash通信304 9.7.5ADT7420溫度傳感器通信306 第10章SPI309 10.1SPI總線概述309 10.2SPI總線控制器架構310 10.2.1接口信號和連接方式310 10.2.2傳輸模式和時序313 10.2.3STM32L15x SPI總線控制器315 10.3SPI寄存器說明317 10.4SPI通信流程320 10.4.1SPI雙工通信模式配置321 10.4.2SPI單工/半雙工通信323 10.5函數(shù)庫326 10.5.1SPI寄存器結構326 10.5.2SPI庫函數(shù)328 10.6SPI案例333 10.6.1SPI寄存器操作案例333 10.6.2SPI函數(shù)庫案例334 10.6.3溫度傳感器ADT7320案例335 第11章模擬/數(shù)字轉換339 11.1ADC簡介339 11.2STM32L152 ADC344 11.2.1STM32L152 ADC功能346 11.2.2溫度和電壓轉換357 11.3ADC寄存器358 11.4ADC寄存器結構及ADC庫函數(shù)365 11.4.1ADC寄存器結構366 11.4.2ADC庫函數(shù)368 11.5ADC案例377 11.5.1ADC寄存器操作案例377 11.5.2ADC庫函數(shù)操作案例378 第12章低功耗技術380 12.1處理器功耗的構成/類型380 12.1.1動態(tài)功耗380 12.1.2靜態(tài)功耗381 12.2STM32L1系列處理器低功耗設計382 12.2.1STM32的電源系統(tǒng)382 12.2.2動態(tài)電壓調(diào)節(jié)管理383 12.2.3電源檢測385 12.2.4低功耗模式386 12.3功耗控制寄存器389 12.4PWR寄存器結構及庫函數(shù)391 12.4.1PWR寄存器結構391 12.4.2PWR庫函數(shù)391 12.5PWR案例394 參考文獻397
|