嵌入式技術基礎與實踐(第2版)

嵌入式技術基礎與實踐(第2版)

《嵌入式技術基礎與實踐(第2版)》是2012年清華大學出版社出版的圖書,作者是王宜懷。

圖書簡介

本書以飛思卡爾半導體公司(原摩托羅拉半導體部)的8位S08系列微控制器中通用型號MC9S08AW60、帶USB 2.0接口MC9S08JM60、帶CAN匯流排接口MC9S08DZ60三個型號為藍本闡述嵌入式系統的軟體與硬體設計。全書共14章,其中第1章為概述,闡述嵌入式系統的知識體系、學習誤區與學習建議。第2章給出AW60硬體最小系統,並簡要介紹了S08CPU。第3章給出第一個樣例程式及CodeWarrior工程組織,完成第一個S08工程的入門。第4章給出基於硬體構件的嵌入式系統開發方法。第5章闡述串列通信接口SCI,並給出第一個帶中斷的編程實例。第1~5章完成了學習一個新MCU完整要素的入門。第6~12章分別給出鍵盤、LED、LCD、定時器、SPI、Flash存儲器線上編程、I2C、A/D及AW60晶片的其他模組等。第13、14章分別給出JM60的USB 2.0編程及DZ60的CAN匯流排編程。附錄給出了相關資料。

圖書目錄

第1章概述

1.1嵌入式系統定義、由來及特點

1.1.1嵌入式系統的定義

1.1.2嵌入式系統的由來及其與微控制器的關係

1.1.3嵌入式系統的特點

1.2嵌入式系統的知識體系、學習誤區及學習建議

1.2.1嵌入式系統的知識體系

1.2.2嵌入式系統的學習誤區

1.2.3基礎階段的學習建議

1.3嵌入式系統常用術語

1.3.1與硬體相關的術語

1.3.2與通信相關的術語

1.3.3與功能模組及軟體相關的術語

1.4嵌入式系統常用的C語言基本語法概要

習題1

第2章AW60硬體最小系統與S08 CPU

2.1S08系列MCU命名規則與資源簡介

2.2AW60微控制器功能概述及存儲器映像

2.2.1AW60功能概述

2.2.2AW60存儲器映像

2.3AW60的引腳功能與硬體最小系統

2.3.1AW60的引腳功能

2.3.2AW60的硬體最小系統

2.3.3硬體最小系統測試方法

2.4S08 CPU的特點與CPU內部暫存器

2.5S08 CPU的定址方式

2.6S08 CPU的指令系統

2.6.1數據傳送類指令

2.6.2算術運算類指令

2.6.3邏輯運算類指令

2.6.4位操作類指令

2.6.5移位類指令

2.6.6程式控制類指令

2.6.7其他指令

2.7S08 CPU彙編語言基礎

2.7.1S08彙編源程式格式

2.7.2S08的偽指令

習題2

第3章第一個樣例程式及CodeWarrior工程組織

3.1通用I/O接口基本概念及連線方法

3.2AW60的GPIO

3.2.1AW60 GPIO編程的基本原理

3.2.2GPIO模組暫存器與GPIO編程的基本方法

3.3開發套件CodeWarrior開發環境與S08/S12/ColdFire寫入器

3.3.1CodeWarrior開發環境簡介與基本使用方法

3.3.2S08/S12/ColdFire三合一寫入器

3.3.3SDAW60EVB硬體評估板

3.4CW環境C語言工程檔案的組織

3.4.1工程檔案的邏輯組織結構

3.4.2工程檔案的物理組織結構

3.4.3系統啟動及初始化相關檔案

3.4.4晶片初始化、主程式、中斷程式及其他檔案

3.4.5機器碼檔案(.s19檔案)的簡明解釋

3.4.6.lst檔案與.map檔案

3.4.7如何在CW環境下新建一個S08工程

3.5第一個C語言工程: 控制小燈閃爍

3.5.1GPIO構件

3.5.2Light構件

3.5.3Light測試工程主程式

3.5.4理解第一個C工程的執行過程

3.6第一個彙編語言工程: 控制小燈閃爍

3.6.1彙編工程檔案的組織

3.6.2Light構件彙編程式

3.6.3Light測試工程主程式

3.6.4理解第一個彙編工程的執行過程

習題3

第4章基於硬體構件的嵌入式系統開發方法

4.1嵌入式系統開發所遇到的若干問題

4.2嵌入式硬體構件的基本思想與套用方法

4.3基於硬體構件的嵌入式系統硬體電路設計

4.3.1設計時需要考慮的基本問題

4.3.2硬體構件化電路原理圖繪製的簡明規則

4.3.3實驗PCB板設計的簡明規則

4.4基於硬體構件的嵌入式底層軟體構件的編程方法

4.4.1嵌入式硬體構件和軟體構件的層次模型

4.4.2底層構件的實現方法與編程思想

4.4.3硬體構件及底層軟體構件的重用與移植方法

習題4

第5章串列通信接口SCI

5.1異步串列通信的通用基礎知識

5.1.1串列通信的基本概念

5.1.2RS232匯流排標準

5.1.3TTL電平到RS232電平轉換電路

5.1.4串列通信編程模型

5.2AW60的SCI模組的編程結構

5.3AW60的SCI構件設計與測試

5.3.1SCI構件設計概述

5.3.2SCI構件的頭檔案SCI.h

5.3.3SCI構件的C語言源程式檔案SCI.c

5.3.4SCI構件的測試工程

5.4AW60的中斷源與第一個帶有中斷的編程實例

5.4.1中斷處理的相關基本概念

5.4.2S08 CPU的中斷實現過程

5.4.3AW60的中斷源與中斷向量表

5.4.4AW60的中斷編程方法

5.4.5AW60的中斷編程示例

習題5

第6章GPIO的套用實例——鍵盤、LED與LCD

6.1鍵盤編程實例

6.1.1未編碼鍵盤的接線方式

6.1.2鍵盤編程的基本問題

6.1.3AW60鍵盤中斷模組

6.1.4鍵盤編程實例

6.2數碼管LED編程實例

6.2.1掃描法編程原理

6.2.2數碼管編程實例

6.3液晶LCD編程實例

6.3.1點陣字元型LCD的基本特點

6.3.2HD44780概述

6.3.3點陣字元型LCD編程實例

習題6

第7章定時器模組

7.1計數器/定時器的基本工作原理

7.1.1實現計數與定時的基本方法

7.1.2AW60的定時接口的功能框圖

7.2定時器模組的編程結構與編程實例

7.2.1定時器模組的編程暫存器

7.2.2定時溢出中斷構件與編程實例

7.3定時器模組的輸入捕捉功能

7.3.1輸入捕捉的基本含義

7.3.2輸入捕捉的暫存器

7.3.3輸入捕捉中斷編程實例

7.4定時器模組的輸出比較功能

7.4.1輸出比較的基本知識

7.4.2用於輸出比較的暫存器

7.4.3輸出比較編程實例

7.5定時器模組的脈寬調製(PWM)輸出功能

7.5.1脈度調製器PWM工作原理

7.5.2AW60定時器的兩種PWM模式

7.5.3PWM編程實例

習題7

第8章串列外設接口SPI

8.1SPI的基本工作原理

8.1.1SPI基本概念

8.1.2SPI的數據傳輸

8.1.3SPI模組的時序

8.1.4模擬SPI

8.2AW60 SPI模組編程結構

8.2.1AW60的SPI模組概述

8.2.2SPI模組暫存器

8.3AW60的SPI構件設計

8.3.1SPI構件設計概述

8.3.2SPI構件的源程式檔案

8.4利用SPI擴展外接Flash晶片

8.4.1Flash晶片AT45DB041D概述

8.4.2AT45DB041D操作說明

8.4.3擴展Flash的程式實現

習題8

第9章Flash存儲器線上編程

9.1Flash存儲器概述

9.1.1Flash存儲器的基本特點與編程模式

9.1.2S08系列MCU的Flash存儲器

9.2AW60的Flash存儲器編程方法

9.2.1Flash存儲器編程的基本概念

9.2.2Flash存儲器的編程暫存器

9.2.3Flash存儲器的編程過程

9.3AW60的Flash線上編程C語言實例

9.3.1Flash存儲器的擦除及寫入C語言子程式

9.3.2Flash存儲器線上編程擦寫測試工程

9.4S08 Flash存儲器的保護特性和安全性

9.4.1S08 Flash存儲器的保護特性

9.4.2S08Flash存儲器的安全性

習題9

第10章積體電路互連匯流排I2C

10.1I2C匯流排通用知識

10.1.1I2C匯流排的歷史概況與特點

10.1.2I2C匯流排的硬體相關術語與典型電路

10.1.3I2C匯流排數據通信協定概要

10.1.4主機向從機讀/寫1個位元組數據的過程

10.2AW60的I2C模組編程結構

10.2.1AW60的I2C模組概述

10.2.2AW60的I2C模組暫存器

10.3AW60的I2C模組底層驅動構件設計

10.4AW60的I2C構件套用實例——與PCF8563時鐘晶片通信

10.4.1PCF8563晶片簡介

10.4.2AW60的I2C與PCF8563時鐘晶片通信

10.5關於I2C的進一步討論

10.5.1仲裁程式

10.5.2數據傳輸同步交換

10.5.3SPI與I2C的比較

習題10

第11章模數轉換模組

11.1A/D轉換通用知識

11.1.1A/D轉換的基本問題

11.1.2A/D轉換常用感測器簡介

11.1.3電阻型感測器採樣電路設計

11.2AW60的A/D轉換模組編程結構

11.2.1AW60的A/D轉換結構與特性

11.2.2AW60的A/D模組編程暫存器

11.2.3功能描述

11.2.4AW60的內置溫度感測器

11.3AW60的A/D模組底層驅動構件設計

11.3.1AD構件的函式原型設計

11.3.2AD構件的頭檔案

11.3.3AD構件的源程式檔案

11.4AW60 A/D模組編程實例

11.4.1低端軟體設計

11.4.2高端軟體設計

習題11

第12章AW60晶片的其他模組

12.1AW60的工作模式與低功耗

12.2內部時鐘發生器模組ICG

12.2.1AW60的ICG結構

12.2.2ICG操作模式

12.2.3ICG的暫存器與運行機制

12.2.4AW60的初始化方法與示例

12.3AW60的復位

12.3.1復位

12.3.2低電壓檢測(LVD)復位

12.3.3看門狗復位

12.3.4其他暫存器

12.4AW60的IRQ引腳、RTI、BRK及SWI中斷

12.4.1IRQ引腳中斷

12.4.2實時中斷(RTI)模組

12.4.3斷點模組BRK與軟體中斷SWI指令

習題12

第13章JM60的USB 2.0開發方法

13.1USB基本概念及硬體特性

13.1.1USB概述

13.1.2USB相關基本概念

13.1.3USB的物理特性

13.2USB的通信協定

13.2.1USB基本通信包

13.2.2USB通信中的事務處理

13.2.3從設備的枚舉看USB數據傳輸

13.3JM60硬體最小系統及USB模組功能簡介

13.3.1JM60硬體最小系統

13.3.2JM60的USB模組功能簡介

13.3.3JM60的USB模組主要暫存器介紹

13.4JM60作為USB從機的開發方法

13.4.1PC方USB設備驅動程式的選擇及基本原理

13.4.2PC作為USB主機的程式設計

13.4.3JM60作為USB從機的程式設計

習題13

第14章DZ60的CAN匯流排開發方法

14.1CAN匯流排通用知識

14.1.1CAN匯流排協定的歷史概況

14.1.2CAN硬體系統的典型電路

14.1.3CAN匯流排的有關基本概念

14.1.4幀結構

14.1.5位時間

14.2DZ60硬體最小系統

14.3MSCAN模組概述與編程結構

14.3.1MSCAN的特性

14.3.2運行模式

14.3.3低功耗選項

14.3.4中斷

14.3.5MSCAN模組暫存器定義

14.4MSCAN功能描述

14.4.1報文傳送/接收功能描述

14.4.2報文傳送基礎

14.4.3傳送結構

14.4.4接收結構

14.4.5時鐘系統

14.5MSCAN初始化、報文傳送與接收的函式設計

14.5.1MSCAN初始化過程

14.5.2MSCAN報文傳送/接收過程

14.5.3MSCAN測試實例

習題14

附錄AFreescale MCU常用封裝形式與規格

附錄BAW60直接頁暫存器列表

附錄CAW60高頁暫存器列表

附錄DS08/S12/ColdFire BDM簡明使用方法

附錄ES08的C語言函式館

附錄F常見實踐問題解答

參考文獻

相關詞條

熱門詞條

聯絡我們