嵌入式技術基礎與實踐(第3版):ARM Cortex-M0+Kinetis L系列微控

《嵌入式技術基礎與實踐(第3版):ARM Cortex-M0+Kinetis L系列微控》是一部出版的圖書,作者是王宜懷、朱仕浪、郭芸。

內容簡介

本書以飛思卡爾(Freescale)的ARM CortexM0+核心的Kinetis L系列微控制器為藍本闡述嵌入式系統的軟體與硬體設計。全書共14章,其中第1章為概述,簡要闡述嵌入式系統的知識體系、學習誤區與學習建議。第2章和第3章給出ARM CortexM0+簡介及KL25硬體最小系統。第4章給出第一個樣例程式及CW開發環境下的工程組織方法,完成第一個KL25工程的入門任務。第5章闡述構件化開發方法與底層驅動構件封裝規範。第6章闡述串列通信接口UART,並給出第一個帶中斷的實例。第1~6章囊括了學習一個新的MCU入門環節的完整要素。第7~13章分別給出了Systick、TPM、PIT、LPTMR、RTC、GPIO的套用實例(鍵盤、LED與LCD)、Flash線上編程、A/D、D/A、比較器、SPI、I2C、TSI及KL25其他模組等。

圖書目錄

第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.5本章小結

習 題 1

第2章ARM CortexM0+處理器

2.1ARM處理器套用概述

2.2ARM CortexM0+處理器簡介

2.2.1ARM CortexM0+處理器特點與結構圖

2.2.2ARM CortexM0+處理器存儲器映像

2.2.3ARM CortexM0+處理器的暫存器

2.3ARM CortexM0+處理器的指令系統

2.3.1ARM CortexM0+指令簡表與定址方式

2.3.2數據傳送類指令

2.3.3數據操作類指令

2.3.4跳轉控制類指令

2.3.5其他指令

2.4ARM CortexM0+彙編語言的基本語法

2.4.1彙編語言格式

2.4.2偽指令

2.5本章小結

習題2

第3章KL25簡介與硬體最小系統

3.1飛思卡爾Kinetis系列微控制器簡介

3.2KL系列MCU概述與體系結構

3.2.1KL系列MCU概述

3.2.2KL系列MCU體系結構

3.3KL25系列存儲映像

3.4KL25的引腳功能

3.5KL25硬體最小系統原理圖

3.6實踐硬體: SDFSLKL25EVB

3.6.1SDFSLKL25EVB硬體系統簡介

3.6.2硬體系統的測試

3.7本章小結

習題3

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

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

4.2連線埠控制模組與GPIO模組的編程結構

4.2.1連線埠控制模組

4.2.2GPIO模組

4.2.3GPIO基本編程步驟與舉例

4.3GPIO驅動構件封裝方法與驅動構件封裝規範

4.3.1製作GPIO驅動構件的必要性及GPIO驅動構件封裝要點分析

4.3.2底層驅動構件封裝規範概要與構件封裝的前期準備

4.3.3KL25的GPIO驅動構件及解析

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

4.4.1Light構件設計與測試工程主程式

4.4.2Codewarrior開發環境簡介及簡明操作

4.5工程檔案組織框架與第一個C語言工程分析

4.5.1CW10.3開發環境下工程檔案組織框架

4.5.2連結檔案

4.5.3機器碼檔案

4.5.4其他相關檔案功能簡介

4.5.5晶片內電啟動執行過程

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

4.6.1彙編工程檔案的組織

4.6.2Light構件彙編程式light.s

4.6.3Light測試工程主程式及彙編工程執行過程

4.7本章小結

習題4

第5章構件化開發方法與底層驅動構件封裝規範

5.1嵌入式硬體構件與底層軟體構件

5.1.1嵌入式硬體構件的概念

5.1.2嵌入式底層驅動構件的概念

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

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

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

5.2.3實驗PCB設計的簡明規則

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

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

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

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

5.4底層驅動構件封裝規範

5.4.1構件設計的基本原則

5.4.2編碼風格基本規範

5.4.3公共要素檔案

5.4.4頭檔案的設計規範

5.4.5源檔案的設計規範

5.5本章小結

習題5

第6章串列通信模組及第一個中斷程式結構

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

6.1.1串列通信的基本概念

6.1.2RS232匯流排標準

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

6.1.4串列通信編程模型

6.2UART模組功能概述及編程結構

6.2.1UART模組功能概述

6.2.2UART模組編程結構

6.3UART驅動構件封裝

6.3.1UART驅動構件封裝要點分析

6.3.2UART驅動構件頭檔案及源程式

6.4KL25的中斷機制及UART接收中斷程式實例

6.4.1KL25中斷基本概念

6.4.2KL25中斷向量表檔案

6.4.3KL25的中斷服務程式及其“註冊”

6.4.4ARM CortexM0+非核心模組中斷編程結構

6.4.5UART接收中斷程式實例

6.5進一步討論

6.6本章小結

習 題 6

習題6

第7章定時器相關模組

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

7.2ARMCortexM0+核心時鐘

7.2.1SysTick模組的編程結構

7.2.2SysTick構件設計及測試工程

7.3定時器/PWM模組功能概述及編程結構

7.3.1TPM模組功能概述

7.3.2TPM模組概要與編程要點

7.3.3TPM構件設計及測試工程

7.3.4PWM構件設計及測試工程

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

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

7.4周期性中斷定時器

7.4.1PIT模組功能概述

7.4.2PIT模組概要與編程要點

7.4.3PIT構件設計及測試實例

7.5低功耗定時器

7.5.1LPTMR模組功能概述

7.5.2LPTMR模組編程結構

7.5.3LPTMR構件設計及測試實例

7.6實時時鐘模組

7.6.1RTC模組功能概述

7.6.2RTC模組概要與編程要點

7.6.3RTC構件設計及測試工程

7.7本章小結

習題7

第8章GPIO套用——鍵盤、LED與LCD

8.1鍵盤模組概論與驅動構件設計

8.1.1鍵盤模型及接口

8.1.2鍵盤編程的基本問題及鍵盤掃描編程原理

8.1.3鍵盤構件設計

8.2LED模組概論與驅動構件設計

8.2.1LED基礎知識

8.2.2LED構件設計

8.3LCD模組概論與驅動構件設計

8.3.1LCD的特點和分類

8.3.2點陣字元型液晶顯示模組

8.3.3HD44780

8.3.4LCD構件設計

8.4LED、LCD鍵盤驅動構件測試實例

8.5本章小結

習題8

第9章Flash線上編程

9.1Flash通用基礎知識

9.2KL25晶片Flash模組特點及編程結構

9.3Flash線上編程構件設計與測試

9.3.1Flash存儲器線上編程基本方法

9.3.2Flash驅動構件封裝要點分析

9.3.3Flash驅動構件頭檔案及源程式

9.3.4Flash驅動構件測試工程主函式

9.4Flash模組的保護與加密

9.5本章小結

第10章ADC、DAC與CMP模組

10.1A/D轉換通用知識

10.1.1A/D轉換的基本問題

10.1.2A/D轉換器類型

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

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

10.2KL25的16位ADC模組功能概述

10.3KL25的A/D轉換模組暫存器

10.4A/D模組基本編程方法與驅動構件封裝

10.4.1基本編程方法

10.4.2ADC驅動構件封裝

10.512位DAC模組功能概述

10.612位DAC模組暫存器

10.7DAC模組基本編程方法與驅動構件封裝

10.8CMP模組功能概述

10.8.1CMP基礎知識

10.8.2CMP模組的工作原理

10.9CMP模組暫存器

10.10CMP模組基本編程方法與驅動構件封裝

10.11本章小結

習題10

第11章SPI、I2C與TSI模組

11.1串列外設接口SPI

11.1.1串列外設接口SPI的基礎知識

11.1.2KL25的SPI模組概述

11.1.3SPI模組暫存器

11.1.4SPI驅動構件封裝

11.2I2C模組

11.2.1I2C匯流排的基礎知識

11.2.2KL25的I2C模組概要與編程要點

11.2.3I2C暫存器

11.2.4I2C驅動構件封裝

11.3觸摸感應接口TSI模組

11.3.1觸摸感應接口TSI基礎知識

11.3.2KL25的TSI的基本工作原理

11.3.3存儲器映射和暫存器定義

11.3.4TSI驅動構件封裝

11.4本章小結

習題11

第12章USB2.0編程

12.1USB基本概念及硬體特性

12.1.1USB概述

12.1.2USB相關基本概念

12.1.3USB的物理特性

12.2USB的通信協定

12.2.1USB基本通信單元:包

12.2.2USB通信中的事務處理

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

12.3KL25的USB模組概述

12.3.1KL25的USB模組功能簡介

12.3.2KL25的USB模組主要暫存器介紹

12.4KL25作為USB從機的開發方法

12.4.1KL25作為USB從機的構件化設計

12.4.2KL25的USB模組測試實例

12.5PC方USB設備驅動程式的設計

12.5.1USB設備驅動的基本原理

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

12.6KL25作為USB主機的開發方法

12.6.1KL25作為USB主機的基本功能

12.6.2USB主機與CDC類USB設備通信

12.6.3USB主機與MassStorage類USB設備通信

12.7本章小結

習題12

第13章系統時鐘與其他功能模組

13.1時鐘系統

13.1.1時鐘系統概述

13.1.2時鐘模組概要與編程要點

13.1.3時鐘模組測試實例

13.2電源模組

13.2.1電源模式控制

13.2.2電源模式轉換

13.3低漏喚醒單元

13.4位帶操作

13.5看門狗

13.6復位模組

13.6.1上電復位

13.6.2系統復位源

13.6.3調試復位

13.7本章小結

習題13

第14章進一步學習指導

14.1關於更為詳細的技術資料

14.2關於實時作業系統RTOS

14.3關於嵌入式系統穩定性問題

附錄AMKL25Z128VLK4引腳功能分配

附錄BKL25硬體最小系統原理圖

參考文獻397

熱門詞條

聯絡我們