根據(jù)嵌入式系統(tǒng)的特點(diǎn),對(duì)嵌入式系統(tǒng)的基礎(chǔ)知識(shí)、工作原理與典型的應(yīng)用設(shè)計(jì)等方面進(jìn)行了介紹。作者根據(jù)長(zhǎng)期的嵌入式系統(tǒng)開(kāi)發(fā)經(jīng)驗(yàn),從嵌入式系統(tǒng)研發(fā)人員的角度,分析嵌入式系統(tǒng)設(shè)計(jì)需要掌握的理論知識(shí)、設(shè)計(jì)方法及步驟,介紹了嵌入式系統(tǒng)的基本組成,從底層到應(yīng)用層各個(gè)典型模塊的設(shè)計(jì),將理論知識(shí)和實(shí)際對(duì)象充分結(jié)合起來(lái),形成了一個(gè)完整的嵌入式系統(tǒng)。其主要內(nèi)容包括:嵌入式系統(tǒng)軟硬件基礎(chǔ)知識(shí)、嵌入式系統(tǒng)開(kāi)發(fā)基礎(chǔ)、ARMCortexM3內(nèi)核體系結(jié)構(gòu)、基于STM32F103VET6的典型的外設(shè)模塊硬件/驅(qū)動(dòng)程序設(shè)計(jì)、嵌入式操作系統(tǒng)基礎(chǔ)、μC/OSII操作系統(tǒng)的應(yīng)用及移植等部分。
《嵌入式系統(tǒng)原理及應(yīng)用實(shí)例》既可以作為高等院校計(jì)算機(jī)、電子類(lèi)、自動(dòng)化及控制類(lèi)大學(xué)本科高年級(jí)學(xué)生的教材,也可以作為非計(jì)算機(jī)類(lèi)碩士研究生與嵌入式系統(tǒng)設(shè)計(jì)工程技術(shù)人員的重要參考書(shū)。
第1章 嵌入式系統(tǒng)概論
1.1 嵌入式系統(tǒng)簡(jiǎn)介
1.1.1 嵌入式系統(tǒng)的歷史
1.1.2 嵌入式系統(tǒng)的定義
1.1.3 嵌入式系統(tǒng)的特點(diǎn)
1.2 嵌入式系統(tǒng)的分類(lèi)
1.2.1 嵌入式系統(tǒng)的實(shí)時(shí)性分類(lèi)
1.2.2 嵌入式系統(tǒng)的應(yīng)用領(lǐng)域分類(lèi)
1.3 嵌入式系統(tǒng)的發(fā)展現(xiàn)狀和發(fā)展趨勢(shì)
1.3.1 嵌入式系統(tǒng)的發(fā)展現(xiàn)狀
1.3.2 嵌入式系統(tǒng)的發(fā)展趨勢(shì)
習(xí)題1
第2章 嵌入式系統(tǒng)的基礎(chǔ)知識(shí)
2.1 嵌入式系統(tǒng)的基本結(jié)構(gòu)
2.1.1 硬件層
2.1.2 中間層
2.1.3 軟件層
2.1.4 應(yīng)用層
2.2 嵌入式系統(tǒng)硬件基礎(chǔ)
2.2.1 嵌入式微處理器基本知識(shí)
2.2.2 存儲(chǔ)器系統(tǒng)
2.2.3 輸入/輸出接口
2.3 嵌入式系統(tǒng)軟件基礎(chǔ)
2.3.1 嵌入式軟件分類(lèi)及特點(diǎn)
2.3.2 嵌入式軟件體系結(jié)構(gòu)
2.4 嵌入式系統(tǒng)中斷與系統(tǒng)啟動(dòng)
2.4.1 中斷基礎(chǔ)知識(shí)
2.4.2 BootLoader基礎(chǔ)
習(xí)題2
第3章 嵌入式系統(tǒng)開(kāi)發(fā)基礎(chǔ)
3.1 嵌入式系統(tǒng)硬件平臺(tái)
3.1.1 嵌入式處理器分類(lèi)
3.1.2 常見(jiàn)的嵌入式處理器
3.2 嵌入式軟件平臺(tái)
3.2.1 常用嵌入式操作系統(tǒng)
3.2.2 嵌入式文件系統(tǒng)
3.2.3 嵌入式圖形用戶接口
3.3 嵌入式系統(tǒng)開(kāi)發(fā)技術(shù)
3.3.1 嵌入式系統(tǒng)的設(shè)計(jì)流程
3.3.2 嵌入式系統(tǒng)的硬件/軟件協(xié)同設(shè)計(jì)技術(shù)
3.3.3 嵌入式系統(tǒng)的可重構(gòu)設(shè)計(jì)技術(shù)
3.3.4 嵌入式中間件技術(shù)
3.4 嵌入式系統(tǒng)開(kāi)發(fā)與調(diào)試基礎(chǔ)
3.4.1 嵌入式代碼生成流程
3.4.2 嵌入式軟件代碼結(jié)構(gòu)分析
3.4.3 嵌入式軟件調(diào)試方法
習(xí)題3
第4章 ARM Cortex M3處理器體系結(jié)構(gòu)
4.1 ARM 處理器的發(fā)展歷程
4.2 Cortex M3處理器體系結(jié)構(gòu)
4.2.1 Cortex M3體系結(jié)構(gòu)簡(jiǎn)介
4.2.2 Cortex M3異常管理
4.2.3 Cortex M3復(fù)位異常
習(xí)題4
第5章 嵌入式系統(tǒng)常用外設(shè)驅(qū)動(dòng)編程實(shí)例
5.1 STM32F103VET6簡(jiǎn)介
5.1.1 STM32F103VET6概述
5.1.2 引腳概述
5.2 GPIO應(yīng)用實(shí)例---LED模塊設(shè)計(jì)
5.2.1 GPIO簡(jiǎn)介
5.2.2 GPIO寄存器描述
5.2.3 基于GPIO的LED燈控制
5.3 STM32外部中斷及鍵盤(pán)應(yīng)用實(shí)例
5.3.1 STM32外部中斷簡(jiǎn)介
5.3.2 嵌入式鍵盤(pán)工作原理
5.3.3 基于中斷的鍵盤(pán)應(yīng)用實(shí)例
5.4 STM32UART串口應(yīng)用實(shí)例
5.4.1 異步串行通信概述
5.4.2 STM32UART串口簡(jiǎn)介
5.4.3 STM32UART應(yīng)用實(shí)例
5.5 DMA 及A/D轉(zhuǎn)換器應(yīng)用實(shí)例
5.5.1 DMA 工作原理
5.5.2 STM32的DMA 控制器
5.5.3 A/D轉(zhuǎn)換器原理
5.5.4 STM32A/D轉(zhuǎn)換器介紹
5.5.5 STM32A/D轉(zhuǎn)換器應(yīng)用實(shí)例
5.6 LCD應(yīng)用實(shí)例
5.6.1 LCD工作原理
5.6.2 TFT型LCD顯示屏及接口簡(jiǎn)介
5.6.3 TFT型LCD應(yīng)用實(shí)例
5.7 SPI總線及觸摸屏應(yīng)用實(shí)例
5.7.1 觸摸屏原理及有關(guān)技術(shù)
5.7.2 觸摸屏驅(qū)動(dòng)芯片ADS7843簡(jiǎn)介
5.7.3 SPI總線工作原理
5.7.4 STM32SPI簡(jiǎn)介
5.7.5 觸摸屏應(yīng)用實(shí)例
習(xí)題5
第6章 嵌入式操作系統(tǒng)基礎(chǔ)知識(shí)
6.1 操作系統(tǒng)基礎(chǔ)知識(shí)
6.1.1 操作系統(tǒng)的基本概念
6.1.2 操作系統(tǒng)的主要功能
6.1.3 操作系統(tǒng)的分類(lèi)
6.2 嵌入式操作系統(tǒng)
6.2.1 嵌入式操作系統(tǒng)的特點(diǎn)
6.2.2 實(shí)時(shí)操作系統(tǒng)的基本概念
6.3 任務(wù)間互斥、同步與通信
6.3.1 任務(wù)的互斥
6.3.2 任務(wù)的同步
6.3.3 任務(wù)間的通信
習(xí)題6
第7章 嵌入式實(shí)時(shí)操作系統(tǒng)μC/OS II
7.1 μC/OS II內(nèi)核結(jié)構(gòu)
7.1.1 μC/OS II組成及功能
7.1.2 μC/OS II內(nèi)核結(jié)構(gòu)概述
7.2 μC/OS II任務(wù)管理
7.2.1 μC/OS II系統(tǒng)任務(wù)管理
7.2.2 μC/OS II用戶任務(wù)管理
7.3 μC/OS II時(shí)間管理
7.3.1 μC/OS II時(shí)鐘節(jié)拍管理
7.3.2 μC/OS II軟件定時(shí)器管理
7.4 μC/OS II任務(wù)同步
7.4.1 μC/OS II信號(hào)量
7.4.2 μC/OS II事件標(biāo)志組
7.5 μC/OS II任務(wù)通信
7.5.1 μC/OS II消息郵箱
7.5.2 μC/OS II消息隊(duì)列
7.6 μC/OS II任務(wù)互斥
7.6.1 μC/OS II互斥原理
7.6.2 μC/OS II互斥信號(hào)量
習(xí)題7
第8章 μC/OS II操作系統(tǒng)的應(yīng)用及移植
8.1 μC/OS II應(yīng)用基礎(chǔ)
8.1.1 任務(wù)劃分
8.1.2 μC/OS II任務(wù)堆棧的設(shè)置
8.1.3 任務(wù)的執(zhí)行分類(lèi)及優(yōu)先級(jí)設(shè)置
8.2 μC/OS II應(yīng)用編程舉例
8.2.1 μC/OS II同步信號(hào)量應(yīng)用實(shí)例
8.2.2 μC/OS II消息郵箱通信應(yīng)用實(shí)例
8.2.3 μC/OS II互斥信號(hào)量應(yīng)用實(shí)例
8.2.4 μC/OS II事件標(biāo)志組應(yīng)用實(shí)例
8.2.5 μC/OS II定時(shí)器應(yīng)用實(shí)例
8.3 操作系統(tǒng)移植
8.3.1 μC/OS II移植基礎(chǔ)知識(shí)
8.3.2 μC/OS II在STM32F103上的移植實(shí)現(xiàn)
習(xí)題8
第9章 智能家居監(jiān)測(cè)控制系統(tǒng)實(shí)例
9.1 需求分析
9.2 總體設(shè)計(jì)
9.3 系統(tǒng)硬件設(shè)計(jì)
9.3.1 家居控制器最小系統(tǒng)設(shè)計(jì)
9.3.2 電源電路設(shè)計(jì)
9.3.3 通信電路設(shè)計(jì)
9.3.4 顯示模塊電路
9.3.5 數(shù)據(jù)采集模塊電路
9.4 系統(tǒng)軟件設(shè)計(jì)
9.4.1 主程序設(shè)計(jì)
9.4.2 報(bào)警任務(wù)
9.4.3 GSM 短信查詢控制任務(wù)
9.4.4 信息采集任務(wù)
9.4.5 其他函數(shù)說(shuō)明
9.5 系統(tǒng)驗(yàn)證
習(xí)題9
參考文獻(xiàn)
嵌入式系統(tǒng)在工業(yè)生產(chǎn)控制、智能儀表、信息家電、網(wǎng)絡(luò)通信、醫(yī)療儀器、國(guó)防科技、智能機(jī)器人等領(lǐng)域中都有著廣泛的應(yīng)用.社會(huì)對(duì)嵌入式系統(tǒng)設(shè)計(jì)方面人才的需求量也越來(lái)越大.許多高校開(kāi)設(shè)了嵌入式系統(tǒng)設(shè)計(jì)的相關(guān)課程,社會(huì)上也有許多嵌入式系統(tǒng)設(shè)計(jì)方面的培訓(xùn)班.但是關(guān)于嵌入式系統(tǒng)設(shè)計(jì)的參考書(shū)大多針對(duì)某一型號(hào)的處理器或操作系統(tǒng)進(jìn)行詳細(xì)講解,而沒(méi)有講解相應(yīng)的嵌入式系統(tǒng)基礎(chǔ)知識(shí),就像產(chǎn)品說(shuō)明書(shū),讀者只知道怎么用,而不知道為什么這樣用;或者是只針對(duì)嵌入式理論知識(shí)進(jìn)行說(shuō)明、分析,而沒(méi)有一個(gè)具體的對(duì)象,讓讀者感覺(jué)像空中樓閣.這些參考書(shū)對(duì)于初學(xué)者來(lái)說(shuō),很難真正系統(tǒng)掌握嵌入式系統(tǒng)方面的知識(shí);在設(shè)計(jì)時(shí),難以設(shè)計(jì)出一個(gè)優(yōu)秀的嵌入式系統(tǒng)產(chǎn)品,從而也限制了行業(yè)的發(fā)展.
針對(duì)這一情況,作者根據(jù)多年從事嵌入式系統(tǒng)設(shè)計(jì)方面的科研及教學(xué)經(jīng)驗(yàn),結(jié)合嵌入式系統(tǒng)理論知識(shí),編著了本書(shū).本書(shū)主要針對(duì)非計(jì)算機(jī)專(zhuān)業(yè)學(xué)生進(jìn)行設(shè)計(jì),在內(nèi)容的選擇上,采用理論與具體對(duì)象相結(jié)合的原則,采用嵌入式控制領(lǐng)域應(yīng)用廣泛的Cortex M3處理器STM32和典型的接口及總線作為硬件對(duì)象,分析講解Cortex M3處理器的結(jié)構(gòu)、工作模式、中斷處理、系統(tǒng)啟動(dòng)等原理及過(guò)程;然后針對(duì)控制領(lǐng)域?qū)Σ僮飨到y(tǒng)的應(yīng)用需求,選擇編程簡(jiǎn)單但功能齊全的μC/OS II操作系統(tǒng)作為主要內(nèi)容,系統(tǒng)分析介紹了該操作系統(tǒng)的工作原理、應(yīng)用及移植.本書(shū)系統(tǒng)講解了嵌入式系統(tǒng)理論知識(shí)及硬件設(shè)計(jì)、系統(tǒng)啟動(dòng)與中斷處理、底層驅(qū)動(dòng)編程、操作系統(tǒng)概念及應(yīng)用等知識(shí),讓讀者能將理論知識(shí)和具體對(duì)象結(jié)合起來(lái),真正系統(tǒng)理解和掌握嵌入式系統(tǒng)的軟/硬件知識(shí);以“從總體到具體”、“從底層到上層”的順序進(jìn)行內(nèi)容安排,更符合人的思維習(xí)慣.因此,本書(shū)可以作為高校有關(guān)專(zhuān)業(yè)本科高年級(jí)嵌入式系統(tǒng)設(shè)計(jì)相關(guān)課程的教材,也可作為嵌入式系統(tǒng)設(shè)計(jì)工程師的重要參考書(shū).
本書(shū)共9章,第1章主要介紹嵌入式系統(tǒng)的概念、應(yīng)用與發(fā)展.第2章主要介紹嵌入式系統(tǒng)構(gòu)架、組成、硬件/軟件基礎(chǔ)知識(shí)以及嵌入式系統(tǒng)設(shè)計(jì)方法等內(nèi)容.第3章主要講解嵌入式系統(tǒng)的開(kāi)發(fā)基礎(chǔ),主要分析了嵌入式系統(tǒng)的基本組成,常見(jiàn)的微處理器和操作系統(tǒng)的特點(diǎn)及應(yīng)用領(lǐng)域,嵌入式軟件開(kāi)發(fā)調(diào)試方法,以及嵌入式系統(tǒng)平臺(tái)構(gòu)建的注意事項(xiàng)等.第4章重點(diǎn)講述ARM Cortex系列處理器的結(jié)構(gòu)、工作模式、指令、開(kāi)發(fā)環(huán)境等內(nèi)容.第5章重點(diǎn)分析STM32F103處理器的引腳與接口配置,然后對(duì)STM32F103處理器的中斷、系統(tǒng)啟動(dòng)、常用接口及外設(shè)工作原理、接口電路及驅(qū)動(dòng)程序編寫(xiě)進(jìn)行講解.第6章對(duì)嵌入式操作系統(tǒng)的概念、內(nèi)核結(jié)構(gòu)和功能進(jìn)行講解,重點(diǎn)講解嵌入式操作系統(tǒng)任務(wù)、調(diào)度、通信與同步的工作原理.第7章對(duì)μC/OS II操作系統(tǒng)的內(nèi)核構(gòu)架進(jìn)行分析,重點(diǎn)分析該操作系統(tǒng)的內(nèi)核任務(wù)管理、通信與同步機(jī)制和API函數(shù).第8章是μC/OS II的應(yīng)用舉例,主要對(duì)通信、同步、互斥、事件標(biāo)志組、軟件定時(shí)器等應(yīng)用進(jìn)行實(shí)例設(shè)計(jì)分析,然后講述如何在STM32F103上移植μC/OS II操作系統(tǒng).第9章以智能家居系統(tǒng)為例,采用STM32F103處理器和μC/OS II操作系統(tǒng)進(jìn)行智能家居控制器設(shè)計(jì).該章系統(tǒng)介紹整個(gè)嵌入式系統(tǒng)的開(kāi)發(fā)過(guò)程.
本書(shū)第1、2、3、4章由曾素華負(fù)責(zé)完成,第5、6、7、8章由蔣建春負(fù)責(zé)完成,第9章由陳家佳負(fù)責(zé)完成,全書(shū)由蔣建春負(fù)責(zé)統(tǒng)稿.參與編寫(xiě)的人員還有岑明、李勇、呂霞付、謝昊飛等,在這里對(duì)他們表示感謝.同時(shí)還要感謝鄧露和王開(kāi)龍、陳慧玲、景艷梅、蔣麗等同學(xué)為本書(shū)的付出.感謝胡向東教授和余成波教授對(duì)本書(shū)的評(píng)閱和提出的寶貴意見(jiàn).
同時(shí),本書(shū)的應(yīng)用實(shí)例都是采用典型的應(yīng)用進(jìn)行編排說(shuō)明,并把每章應(yīng)用實(shí)例完整的工程文件通過(guò)郵箱:goodtextbook@126.com 提供給讀者,便于讀者進(jìn)行驗(yàn)證學(xué)習(xí).當(dāng)然,任何一本書(shū)都不可能囊括所有內(nèi)容,本書(shū)力爭(zhēng)做到合理安排內(nèi)容與順序,引導(dǎo)讀者進(jìn)入嵌入式系統(tǒng)領(lǐng)域,讓讀者能循序漸進(jìn)地系統(tǒng)掌握嵌入式系統(tǒng)的相關(guān)知識(shí),同時(shí)也注重實(shí)例的典型性和實(shí)用性.希望本書(shū)對(duì)讀者的嵌入式系統(tǒng)開(kāi)發(fā)能有所幫助.
本書(shū)中也引用了參考文獻(xiàn)中的一些信息,正是這些優(yōu)秀的作品為作者提供了豐富的知識(shí),從而使本書(shū)內(nèi)容更加充實(shí).在此對(duì)這些作者表示感謝! 由于時(shí)間倉(cāng)促,加之水平有限,書(shū)中難免會(huì)有一些錯(cuò)誤和不妥之處,敬請(qǐng)讀者批評(píng)指正.
作 者
2015年5月