出版時(shí)間:2012-3 出版社:電子工業(yè)出版社 作者:王宜懷 頁(yè)數(shù):415
Tag標(biāo)簽:無(wú)
內(nèi)容概要
《嵌入式系統(tǒng)原理與實(shí)踐:ARM Cortex-M4
Kinetis微控制器》是國(guó)內(nèi)第一本以ARMCortex-M4內(nèi)核的Kinetis微控制器為藍(lán)本來(lái)講述嵌入式系統(tǒng)的圖書。Kinetis系列微控制器將高效的ARMCortex-M4內(nèi)核與先進(jìn)的低功耗設(shè)計(jì)技術(shù)相結(jié)合,是業(yè)內(nèi)功耗最低的基于Cortex-M4的MCU解決方案。全書共15章,其中前4章簡(jiǎn)要闡述了嵌入式系統(tǒng)的知識(shí)體系、學(xué)習(xí)誤區(qū)、學(xué)習(xí)建議和基于硬件構(gòu)件的嵌入式系統(tǒng)開發(fā)方法,給出了ARMCortex-M4簡(jiǎn)介及K60硬件最小系統(tǒng),示例了第一個(gè)樣例程序及開發(fā)環(huán)境下的工程組織方法,完成了第一個(gè)K60工程的入門任務(wù),并講解了第一個(gè)帶中斷的實(shí)例,前4章囊括了學(xué)習(xí)一個(gè)新MCU完整要素的入門環(huán)節(jié);第5章到14章分別給出了GPIO的應(yīng)用實(shí)例(鍵盤、LED與LCD)、定時(shí)器、A/D、D/A、比較器、TSI、SPI、I2C、I2S、Flash、CAN、SDHC、USB、以太網(wǎng)及K60其他模塊等;最后一章給出了進(jìn)一步學(xué)習(xí)的指導(dǎo)。
《嵌入式系統(tǒng)原理與實(shí)踐:ARM Cortex-M4
Kinetis微控制器》適用于有關(guān)高校嵌入式系統(tǒng)的教學(xué)或技術(shù)培訓(xùn)資料,也可供ARMCortex-M4應(yīng)用工程師作為技術(shù)研發(fā)參考。
書籍目錄
第1章 概述
1.1 嵌入式系統(tǒng)定義、由來(lái)及特點(diǎn)
1.1.1 嵌入式系統(tǒng)的定義
1.1.2 嵌入式系統(tǒng)的由來(lái)及其與微控制器的關(guān)系
1.1.3 嵌入式系統(tǒng)的特點(diǎn)
1.2 嵌入式系統(tǒng)的知識(shí)體系、學(xué)習(xí)誤區(qū)及學(xué)習(xí)建議
1.2.1 嵌入式系統(tǒng)的知識(shí)體系
1.2.2 嵌入式系統(tǒng)的學(xué)習(xí)誤區(qū)
1.2.3 基礎(chǔ)階段的學(xué)習(xí)建議
1.2.4 嵌入式系統(tǒng)開發(fā)所遇到的若干問題
1.3 嵌入式硬件構(gòu)件的基本思想與應(yīng)用方法
1.4 基于硬件構(gòu)件的嵌入式系統(tǒng)硬件電路設(shè)計(jì)
1.4.1 設(shè)計(jì)時(shí)需要考慮的基本問題
1.4.2 硬件構(gòu)件化電路原理圖繪制的簡(jiǎn)明規(guī)則
1.4.3 實(shí)驗(yàn)PCB板設(shè)計(jì)的簡(jiǎn)明規(guī)則
1.5 基于硬件構(gòu)件的嵌入式底層軟件構(gòu)件的編程方法
1.5.1 嵌入式硬件構(gòu)件和軟件構(gòu)件的層次模型
1.5.2 底層構(gòu)件的實(shí)現(xiàn)方法與編程思想
1.5.3 硬件構(gòu)件及底層軟件構(gòu)件的重用與移植方法
1.6 嵌入式系統(tǒng)的常用術(shù)語(yǔ)
1.6.1 與硬件相關(guān)的術(shù)語(yǔ)
1.6.2 與通信相關(guān)的術(shù)語(yǔ)
1.6.3 與功能模塊及軟件相關(guān)的術(shù)語(yǔ)
1.7 本章小結(jié)
習(xí)題
第2章 Kinetis微控制器概述與K60硬件最小系統(tǒng)
2.1 學(xué)習(xí)一個(gè)新MCU芯片的基本要素
2.2 ARM背景知識(shí)簡(jiǎn)介
2.2.1 ARM簡(jiǎn)介
2.2.2 Cortex-M4處理器特性簡(jiǎn)介
2.3 Kinetis系列微控制器概述及型號(hào)標(biāo)識(shí)
2.3.1 Kinetis系列微控制器概述
2.3.2 Kinetis系列微控制器型號(hào)標(biāo)識(shí)
2.4 K60系列微控制器的存儲(chǔ)器映像與編程結(jié)構(gòu)
2.4.1 K60系列MCU性能概述與內(nèi)部結(jié)構(gòu)簡(jiǎn)圖
2.4.2 K60系列存儲(chǔ)器映像
2.5 K60的引腳功能與硬件最小系統(tǒng)
2.5.1 K60的引腳功能
2.5.2 K60的硬件最小系統(tǒng)原理圖
2.5.3 Kinetis寫入器與K60核心板
2.5.4 硬件最小系統(tǒng)測(cè)試方法
2.6 ARM Cortex-M4的寄存器及指令簡(jiǎn)介
2.6.1 ARM Cortex-M4的寄存器簡(jiǎn)介
2.6.2 ARM Cortex-M4的指令系統(tǒng)簡(jiǎn)介
2.7 本章小結(jié)
習(xí)題
第3章 第一個(gè)樣例程序及工程組織
3.1 GPIO模塊的驅(qū)動(dòng)構(gòu)件設(shè)計(jì)
3.1.1 GPIO的基礎(chǔ)知識(shí)
3.1.2 GPIO模塊概要與編程要點(diǎn)
3.1.3 GPIO驅(qū)動(dòng)構(gòu)件設(shè)計(jì)
3.2 CodeWarrior開發(fā)環(huán)境簡(jiǎn)介
3.3 嵌入式設(shè)計(jì)編碼基本規(guī)范
3.3.1 硬件驅(qū)動(dòng)構(gòu)件文件
3.3.2 數(shù)據(jù)類型
3.3.3 函數(shù)
3.3.4 源碼文件夾結(jié)構(gòu)
3.4 第一個(gè)C語(yǔ)言工程:控制小燈閃爍
3.4.1 Light構(gòu)件設(shè)計(jì)
3.4.2 Light構(gòu)件測(cè)試工程主程序
3.4.3 在CW環(huán)境下導(dǎo)入樣例工程
3.5 理解第一個(gè)C工程
3.5.1 CW開發(fā)環(huán)境下工程文件組織框架
3.5.2 文件說明
3.5.3 芯片上電啟動(dòng)執(zhí)行過程
3.6 在CW環(huán)境下創(chuàng)建一個(gè)新的工程
3.7 本章小結(jié)
習(xí)題
第4章 異步串行通信
4.1 異步串行通信的基礎(chǔ)知識(shí)
4.1.1 基本概念
4.1.2 RS-232C總線標(biāo)準(zhǔn)
4.1.3 電平轉(zhuǎn)換電路原理
4.2 UART模塊功能概述
4.3 UART模塊的編程結(jié)構(gòu)
4.4 UART模塊的底層驅(qū)動(dòng)構(gòu)件設(shè)計(jì)
4.4.1 UART構(gòu)件的函數(shù)原型設(shè)計(jì)
4.4.2 UART構(gòu)件的頭文件(bw uan.h)
4,4.3 UART構(gòu)件的源程序文件(hw uart.c)
4.5 以查詢方式接收的UART模塊測(cè)試實(shí)例
4.6 以中斷方式接收的UART模塊測(cè)試實(shí)例
4.7 本章小結(jié)
習(xí)題
第5章 GPIO的應(yīng)用實(shí)例:鍵盤、LED與LCD
5.1 鍵盤模塊的驅(qū)動(dòng)構(gòu)件設(shè)計(jì)
5.1.1 鍵盤模型及接口
5.1.2 鍵盤驅(qū)動(dòng)構(gòu)件設(shè)計(jì)l
5.1.3 鍵盤驅(qū)動(dòng)構(gòu)件測(cè)試實(shí)例
5.2 LED模塊的驅(qū)動(dòng)構(gòu)件設(shè)計(jì)
5.2.1 LED的基礎(chǔ)知識(shí)
5.2.2 LED驅(qū)動(dòng)構(gòu)件設(shè)計(jì)
5.2.3 LED驅(qū)動(dòng)構(gòu)件測(cè)試實(shí)例
5.3 LCD模塊的驅(qū)動(dòng)構(gòu)件設(shè)計(jì)
5.3.1 LCD的基礎(chǔ)知識(shí)
5.3.2 LCD驅(qū)動(dòng)構(gòu)件設(shè)計(jì)
5.3.3 LCD驅(qū)動(dòng)構(gòu)件測(cè)試實(shí)例
5.4 本章小結(jié)
習(xí)題
第6章 定時(shí)器相關(guān)模塊
6,1 計(jì)數(shù)器/定時(shí)器的基本工作原理
6.2 可編程延遲模塊PDB
6.2.1 PDB的基礎(chǔ)知識(shí)
6.2.2 PDB模塊概要與編程要點(diǎn)
6.2.3 PDB構(gòu)件設(shè)計(jì)及測(cè)試實(shí)例
6.3 Flex定時(shí)器FTM
6.3.1 FTM的基礎(chǔ)知識(shí)
6.3.2 FTM模塊概要與編程要點(diǎn)
6.3.3 FTM構(gòu)件設(shè)計(jì)及測(cè)試實(shí)例
6.4 周期中斷定時(shí)器PIT
6.4.1 PIT的基礎(chǔ)知識(shí)
6.4.2 PIT模塊概要與編程要點(diǎn)
6.4.3 PIT構(gòu)件設(shè)計(jì)及測(cè)試實(shí)例
6.5 低功耗定時(shí)器LPTMR
6.5.1 LPTMR的基礎(chǔ)知識(shí)
6.5.2 LPTMR模塊概要與編程要點(diǎn)
6.5.3 LPTMR構(gòu)件設(shè)計(jì)及測(cè)試實(shí)例
6.6 載波調(diào)制發(fā)射器(CMT)
6.6.1 CMT的基礎(chǔ)知識(shí)
6.6.2 CMT模塊概要與編程要點(diǎn)
6.6.3 CMT構(gòu)件設(shè)計(jì)及測(cè)試實(shí)例
6.7 實(shí)時(shí)時(shí)鐘
6.7.1 RTC基礎(chǔ)知識(shí)
6.7.2 RTC模塊概要與編程要點(diǎn)
6.7.3 RTC構(gòu)件設(shè)計(jì)及測(cè)試實(shí)例
6.8 本章小結(jié)
習(xí)題
第7章 A/D、D/A、CMP和TSI模塊
第8章 SPI.I2C與I2S
第9章 Flash在線編程
第10章 K60的CAN總線開發(fā)方法
第11章 高容量SD存儲(chǔ)卡SDHC
第12章 USB2.0編程
第13章 基于K60的嵌入式以太網(wǎng)
第14章 系統(tǒng)時(shí)鐘與其他功能模塊
第15章 進(jìn)一步學(xué)習(xí)指導(dǎo)
參考文獻(xiàn)
章節(jié)摘錄
版權(quán)頁(yè): 插圖: 遠(yuǎn)程幀不是必需的,例如應(yīng)用層協(xié)議DeviceNet中未用遠(yuǎn)程幀,但并未影響DeviceNet在可靠運(yùn)行、通信效率方面的性能,且DeviceNet也是國(guó)際流行的CAN應(yīng)用層協(xié)議。 3.錯(cuò)誤幀 錯(cuò)誤幀由CAN控制器的硬件進(jìn)行處理,與用戶編程無(wú)關(guān)。下面概要說明發(fā)送錯(cuò)誤幀的工作機(jī)制。 CAN節(jié)點(diǎn)通過發(fā)送引腳發(fā)送報(bào)文時(shí),接收引腳也在同步接收?qǐng)?bào)文,當(dāng)發(fā)送報(bào)文的ACK場(chǎng)為“1”時(shí),接收到的應(yīng)答間隙(ACK Slot)一定要是“0”才代表發(fā)送成功。在CAN總線網(wǎng)絡(luò)中只要有一個(gè)節(jié)點(diǎn)正確接收到了報(bào)文,并將發(fā)送節(jié)點(diǎn)的應(yīng)答間隙寫為“0”,則發(fā)送節(jié)點(diǎn)就認(rèn)為發(fā)送數(shù)據(jù)成功。在報(bào)文的應(yīng)答過程中,若某一節(jié)點(diǎn)檢測(cè)到錯(cuò)誤,則它會(huì)立刻發(fā)送錯(cuò)誤幀,一般是發(fā)送連續(xù)的6個(gè)0或1。由CAN的位填充原理可知,當(dāng)有五個(gè)連續(xù)的0或1出現(xiàn)時(shí),為了傳送中的同步,必須插入一個(gè)反型位作為填充。因此如果連續(xù)出現(xiàn)6個(gè)或6個(gè)以上的0或1,則此次傳送錯(cuò)誤,報(bào)文將被丟棄。此時(shí)當(dāng)發(fā)送節(jié)點(diǎn)收到這個(gè)錯(cuò)誤幀后,便知道發(fā)送出錯(cuò),并試圖重發(fā)報(bào)文。任何節(jié)點(diǎn)檢測(cè)到總線錯(cuò)誤都會(huì)發(fā)送錯(cuò)誤幀。 錯(cuò)誤幀由兩個(gè)不同的場(chǎng)組成。第一個(gè)場(chǎng)是由不同節(jié)點(diǎn)提供的錯(cuò)誤標(biāo)志(FLAG)的疊加;第二個(gè)場(chǎng)是錯(cuò)誤界定符。錯(cuò)誤幀的組成如圖10—10所示。 錯(cuò)誤標(biāo)志有兩種形式:主動(dòng)錯(cuò)誤(Error Active)①標(biāo)志和被動(dòng)錯(cuò)誤(Error Passive)②標(biāo)志。主動(dòng)錯(cuò)誤標(biāo)志由6個(gè)連續(xù)的0位組成,而被動(dòng)錯(cuò)誤標(biāo)志由6個(gè)連續(xù)的1位組成。 檢測(cè)到錯(cuò)誤條件的“主動(dòng)錯(cuò)誤”的節(jié)點(diǎn)通過發(fā)送主動(dòng)錯(cuò)誤標(biāo)志指示錯(cuò)誤。錯(cuò)誤標(biāo)志的形式破壞了從幀起始到CRC界定符的位填充的規(guī)則,或者破壞了ACK場(chǎng)或幀結(jié)束的固定形式。所有其他的節(jié)點(diǎn)由此檢測(cè)到錯(cuò)誤條件并與此同時(shí)開始發(fā)送錯(cuò)誤標(biāo)志。因此,6個(gè)連續(xù)“0”的序列導(dǎo)致一個(gè)結(jié)果,這個(gè)結(jié)果就是把個(gè)別節(jié)點(diǎn)發(fā)送的不同的錯(cuò)誤標(biāo)志疊加在一起。這個(gè)序列的總長(zhǎng)度最小為6位,最大為12位。 檢測(cè)到錯(cuò)誤條件的“錯(cuò)誤被動(dòng)”的節(jié)點(diǎn)試圖通過發(fā)送被動(dòng)錯(cuò)誤標(biāo)志指示錯(cuò)誤?!氨粍?dòng)錯(cuò)誤”的節(jié)點(diǎn)等待6個(gè)相同極性的連續(xù)位(這6個(gè)位處于被動(dòng)錯(cuò)誤標(biāo)志的開始)。當(dāng)這6個(gè)相同的位被檢測(cè)到時(shí),被動(dòng)錯(cuò)誤標(biāo)志的發(fā)送就完成了。
編輯推薦
《嵌入式系統(tǒng)原理與實(shí)踐:ARM Cortex-M4 Kinetis微控制器》適用于有關(guān)高校嵌入式系統(tǒng)的教學(xué)或技術(shù)培訓(xùn)資料,也可供ARMCortex—M4應(yīng)用工程師作為技術(shù)研發(fā)參考。
圖書封面
圖書標(biāo)簽Tags
無(wú)
評(píng)論、評(píng)分、閱讀與下載