基于ARM Cortex-M4內(nèi)核的物聯(lián)網(wǎng)/嵌入式系統(tǒng)開發(fā)教程

-
【作 者】主編 劉雯
【I S B N 】978-7-5170-6275-2
【責(zé)任編輯】周益丹
【適用讀者群】本專通用
【出版時(shí)間】2018-02-05
【開 本】16開
【裝幀信息】平裝(光膜)
【版 次】第1版第1次印刷
【頁 數(shù)】240
【千字?jǐn)?shù)】370
【印 張】15
【定 價(jià)】¥39
【叢 書】高等院校“十三五”精品規(guī)劃教材
【備注信息】
簡(jiǎn)介
本書特色
前言
章節(jié)列表
精彩閱讀
下載資源
相關(guān)圖書
本書主要內(nèi)容包括:物聯(lián)網(wǎng)技術(shù)的架構(gòu)及應(yīng)用;嵌入式系統(tǒng)的組成以及開發(fā)工具;Cortex-M4內(nèi)核;STM32F401芯片的體系架構(gòu)以及功能模塊;基于STM32F401芯片的實(shí)例開發(fā),包括GPIO、中斷機(jī)制、串口通信、AD轉(zhuǎn)換器、低功耗藍(lán)牙、傳感器模塊、小型物聯(lián)網(wǎng)系統(tǒng)和云服務(wù)系統(tǒng)最簡(jiǎn)模型等。
本書面向物聯(lián)網(wǎng)開發(fā)的初學(xué)者和大專院校電子科學(xué)與技術(shù)及通信類專業(yè)的學(xué)生。全書貫穿物聯(lián)網(wǎng)核心內(nèi)容—感知、通信、信息處理、端到云的拓展等組成部分,以應(yīng)用最廣的基于ARM的經(jīng)典嵌入式設(shè)備為載體,結(jié)合應(yīng)用需求,用淺顯易懂的語言以及各種實(shí)例對(duì)嵌入式物聯(lián)網(wǎng)開發(fā)的知識(shí)進(jìn)行系統(tǒng)講解,使讀者快速上手,并且為以后的物聯(lián)網(wǎng)開發(fā)打下堅(jiān)實(shí)的基礎(chǔ)。
物聯(lián)網(wǎng)技術(shù)(IoT)是新一代信息技術(shù)的重要組成部分,它將物理設(shè)備(傳感器設(shè)備)與網(wǎng)絡(luò)系統(tǒng)連接起來,并允許信息的全球共享。物聯(lián)網(wǎng)在智能交通、智能電網(wǎng)、智能家居、智慧醫(yī)療以及工業(yè)和農(nóng)業(yè)等多領(lǐng)域都有著廣泛的應(yīng)用,它與我們的生活越來越密不可分。隨著云計(jì)算的發(fā)展,云服務(wù)在各個(gè)行業(yè)的應(yīng)用迅速增加。物聯(lián)網(wǎng)服務(wù)從端到云的拓展,大大提升了服務(wù)的可用性和可達(dá)性。同時(shí),云端可以提供更多的已被設(shè)計(jì)完善、可共享或可定制的服務(wù)項(xiàng)目或引擎。對(duì)開發(fā)人員來說,學(xué)習(xí)物聯(lián)網(wǎng)技術(shù)便是迫切的需求。嵌入式控制技術(shù)是物聯(lián)網(wǎng)技術(shù)中重要的一環(huán),而當(dāng)前嵌入式開發(fā)相關(guān)教材眾多,與物聯(lián)網(wǎng)應(yīng)用以及云服務(wù)緊密聯(lián)系的教材有限,初學(xué)者想進(jìn)行相應(yīng)的學(xué)習(xí)在選擇上有一定困難。
本書依托北京郵電大學(xué)電子工程學(xué)院開設(shè)的基于ARM的物聯(lián)網(wǎng)應(yīng)用實(shí)驗(yàn)課程,力圖在書中兼顧嵌入式開發(fā)的核心內(nèi)容及基于物聯(lián)網(wǎng)架構(gòu)的典型應(yīng)用實(shí)例,希望讀者可以通過本書的實(shí)訓(xùn)實(shí)例,在掌握物聯(lián)網(wǎng)的基本架構(gòu)的同時(shí),利用分立或集成的傳感器、嵌入式設(shè)備等硬件,能按照自己身邊的實(shí)際需求,搭建不同的物聯(lián)網(wǎng)應(yīng)用原型。
本書的主要篇幅放在Cortex-M4內(nèi)核、STM32F401芯片的體系架構(gòu)以及相關(guān)功能模塊和基于STM32F401芯片的實(shí)例開發(fā)上。其中實(shí)例部分包括GPIO、中斷機(jī)制、串行通信、AD轉(zhuǎn)換器、低功耗藍(lán)牙、傳感器模塊、小型物聯(lián)網(wǎng)系統(tǒng)和簡(jiǎn)單的云服務(wù)系統(tǒng)等,讀者可以逐步了解到一個(gè)物聯(lián)網(wǎng)架構(gòu)從局部到整體的搭建過程。如果對(duì)相應(yīng)基礎(chǔ)知識(shí)有了深刻的認(rèn)識(shí),讀者也可跳過相應(yīng)章節(jié)進(jìn)行第5章以后相應(yīng)模塊的學(xué)習(xí)。
本書相關(guān)課程的開發(fā)得到了北京郵電大學(xué)電子工程學(xué)院提供的實(shí)踐教學(xué)課程開發(fā)環(huán)境支持,感謝實(shí)驗(yàn)中心趙同剛主任和饒嵐老師的支持。在本書編寫過程中,ARM中國大學(xué)計(jì)劃負(fù)責(zé)人陳煒博士在內(nèi)容及章節(jié)安排上提供了建設(shè)性的意見,并在代碼編寫以及其他資料上給予了極大的幫助;ARM公司雷磊工程師在實(shí)驗(yàn)課程開發(fā)過程中提供了技術(shù)支持,他也作為副主編參與了物聯(lián)網(wǎng)課程端到云部分的編撰工作;王夢(mèng)馨助理提供了資料查詢的幫助;同時(shí)感謝本書編輯楊慶川社長(zhǎng)的大力支持。研究生莫耀凱、綦航、隋鈺童、程倩倩和鄭心雨等同學(xué)參與完成了的資料查找、文獻(xiàn)翻譯、代碼調(diào)試以及校對(duì)工作。需要指出的是,本書的編寫參考了大量的同類型教材以及相關(guān)技術(shù)論壇資料。在此對(duì)所有提到的單位和個(gè)人表示感謝。
物聯(lián)網(wǎng)技術(shù)發(fā)展迅速,加之時(shí)間倉促,本書難免存在缺漏和錯(cuò)誤,懇請(qǐng)同行及廣大讀者批評(píng)指正。提出書中的問題以及索要相關(guān)實(shí)例與PPT文件請(qǐng)發(fā)郵件至qrswlw@163.com。
編 者
2017年11月
1.1 物聯(lián)網(wǎng)的基本概念 1
1.1.1 物聯(lián)網(wǎng)的定義與特征 1
1.1.2 物聯(lián)網(wǎng)的應(yīng)用 1
1.2 物聯(lián)網(wǎng)的體系架構(gòu) 2
1.2.1 感知層 2
1.2.2 網(wǎng)絡(luò)層 3
1.2.3 應(yīng)用層 4
1.3 嵌入式系統(tǒng) 4
1.3.1 嵌入式系統(tǒng)簡(jiǎn)介 4
1.3.2 嵌入式系統(tǒng)的組成 5
1.3.3 物聯(lián)網(wǎng)與嵌入式系統(tǒng)的關(guān)系 8
1.3.4 嵌入式系統(tǒng)開發(fā)軟件—Keil 9
1.3.5 物聯(lián)網(wǎng)設(shè)備開發(fā)與Mbed 10
參考資料 12
第2章 ARM Cortex-M4技術(shù) 13
2.1 背景概述 13
2.2 核心技術(shù) 14
2.2.1 內(nèi)部架構(gòu) 14
2.2.2 內(nèi)核比較 15
2.2.3 Thumb-2指令集 17
2.2.4 流水線技術(shù) 18
2.2.5 寄存器 19
2.2.6 工作模式 21
2.2.7 異常 22
參考資料 23
第3章 STM32F401體系結(jié)構(gòu) 25
3.1 STM32F401架構(gòu) 25
3.1.1 片內(nèi)結(jié)構(gòu) 25
3.1.2 功能單元描述 25
3.2 封裝與引腳說明 28
參考資料 32
第4章 STM32F401功能模塊設(shè)計(jì) 34
4.1 電源模塊 34
4.1.1 電源 34
4.1.2 電源監(jiān)控器 35
4.1.3 低功耗模式 37
4.1.4 電源控制寄存器 38
4.2 復(fù)位模塊 43
4.2.1 系統(tǒng)復(fù)位 43
4.2.2 電源復(fù)位 44
4.2.3 備份域復(fù)位 44
4.3 時(shí)鐘管理模塊 44
4.3.1 HSE時(shí)鐘 46
4.3.2 HSI時(shí)鐘 46
4.3.3 PLL配置 47
4.3.4 LSE時(shí)鐘 47
4.3.5 LSI時(shí)鐘 47
4.3.6 系統(tǒng)時(shí)鐘(SYSCLK)選擇 48
4.4 定時(shí)器與看門狗 48
4.4.1 高級(jí)控制定時(shí)器(TIM1) 48
4.4.2 通用定時(shí)器(TIMx) 49
4.4.3 獨(dú)立看門狗(IWDG) 49
4.4.4 窗口看門狗(WWDG) 50
4.4.5 SysTick定時(shí)器 52
4.5 內(nèi)部存儲(chǔ)器模塊 52
4.5.1 STM32F401內(nèi)部存儲(chǔ)空間 52
4.5.2 Flash存儲(chǔ)器 52
4.5.3 RAM數(shù)據(jù)存儲(chǔ)器 55
參考資料 56
第5章 通用I/O接口 57
5.1 通用I/O功能描述 57
5.1.1 GPIO端口 57
5.1.2 輸入輸出多路復(fù)用器和映射 57
5.1.3 I/O端口寄存器 58
5.1.4 GPIO模式 59
5.2 通用I/O配置寄存器 60
5.2.1 GPIO端口模式寄存器(GPIOx_MODER) 60
5.2.2 GPIO輸出類型寄存器(GPIOx_OTYPER) 60
5.2.3 GPIO端口輸出速度寄存器(GPIOx_OSPEEDR) 61
5.2.4 GPIO端口上拉下拉寄存器(GPIOx_PUPDR) 61
5.2.5 GPIO端口輸入數(shù)據(jù)寄存器(GPIOx_IDR) 62
5.2.6 GPIO端口輸出數(shù)據(jù)寄存器(GPIOx_ODR) 62
5.2.7 GPIO端口比特置位復(fù)位寄存器(GPIOx_BSRR) 63
5.2.8 GPIO端口配置鎖存器(GPIOx_LCKR) 63
5.2.9 GPIO復(fù)用功能低位寄存器(GPIOx_AFRL) 64
5.2.10 GPIO復(fù)用功能高位寄存器(GPIOx_AFRH) 65
5.2.11 RCC AHB1外設(shè)時(shí)鐘使能寄存器(RCC_AHB1ENR) 66
5.3 應(yīng)用實(shí)例 66
5.3.1 開發(fā)環(huán)境與實(shí)例說明 66
5.3.2 Keil軟件使用 68
5.3.3 寄存器操作技巧 71
5.3.4 GPIO實(shí)例代碼 71
5.3.5 測(cè)試結(jié)果及分析 73
參考資料 73
第6章 STM32F401中斷機(jī)制 74
6.1 中斷控制 74
6.1.1 基本概念 74
6.1.2 中斷優(yōu)先級(jí) 74
6.1.3 中斷控制位 75
6.1.4 中斷過程 75
6.1.5 外部中斷/事件控制器(EXTI) 76
6.1.6 外部中斷/事件線映射 77
6.2 中斷控制寄存器 78
6.2.1 NVIC寄存器 78
6.2.2 EXTI寄存器 79
6.3 應(yīng)用實(shí)例 81
6.3.1 開發(fā)環(huán)境與實(shí)例說明 81
6.3.2 中斷實(shí)例代碼 82
6.3.3 測(cè)試結(jié)果及分析 84
參考資料 85
第7章 STM32F401串行通信 86
7.1 USART簡(jiǎn)介及主要功能 86
7.2 USART功能描述 87
7.2.1 USART結(jié)構(gòu) 87
7.2.2 USART字符描述 87
7.2.3 發(fā)送器 89
7.2.4 接收器 92
7.2.5 多處理器通信 95
7.2.6 LIN(局域互聯(lián)網(wǎng)絡(luò))模式 96
7.2.7 USART同步模式 97
7.2.8 單線半雙工通信 98
7.3 應(yīng)用實(shí)例 98
7.3.1 開發(fā)環(huán)境與實(shí)例說明 98
7.3.2 UART實(shí)例代碼 99
7.3.3 測(cè)試結(jié)果及分析 103
參考資料 104
第8章 STM32F401 AD轉(zhuǎn)換器 105
8.1 功能描述 105
8.1.1 ADC介紹 105
8.1.2 ADC功能描述 105
8.2 ADC寄存器配置 112
8.2.1 ADC狀態(tài)寄存器(ADC_SR) 112
8.2.2 ADC控制寄存器1(ADC_CR1) 114
8.2.3 ADC寄存器2(ADC_CR2) 117
8.2.4 ADC采樣時(shí)間寄存器1(ADC_SMPR1) 120
8.2.5 ADC采樣時(shí)間寄存器2(ADC_SMPR2) 121
8.2.6 ADC注入通道數(shù)據(jù)偏移寄存器(ADC_JOFRx)(x=1..4) 122
8.2.7 ADC看門狗高閾值寄存器(ADC_HTR) 122
8.2.8 ADC看門狗低閾值寄存器(ADC_LTR) 123
8.2.9 ADC規(guī)則序列寄存器1(ADC_SQR1) 123
8.2.10 ADC規(guī)則序列寄存器2(ADC_SQR2) 124
8.2.11 ADC規(guī)則序列寄存器3(ADC_SQR3) 124
8.2.12 ADC注入序列寄存器(ADC_JSQR) 125
8.2.13 ADC注入數(shù)據(jù)寄存器x(ADC_JDRx)(x=1..4) 126
8.2.14 ADC規(guī)則數(shù)據(jù)寄存器(ADC_DR) 126
8.2.15 ADC通用控制寄存器(ADC_CCR) 126
8.2.16 ADC寄存器映射 127
8.3 應(yīng)用實(shí)例 128
8.3.1 開發(fā)環(huán)境與實(shí)例說明 128
8.3.2 實(shí)例代碼 128
8.3.3 測(cè)試結(jié)果及分析 132
參考資料 132
第9章 STM32F401低功耗藍(lán)牙 133
9.1 功能描述 133
9.1.1 藍(lán)牙技術(shù)簡(jiǎn)介 134
9.1.2 BlueNRG 142
9.1.3 BALF-NRG-01D3 142
9.2 藍(lán)牙模塊配置 143
9.2.1 Mbed 143
9.2.2 可能用到的函數(shù) 144
9.2.3 程序框架 145
9.3 應(yīng)用實(shí)例 146
9.3.1 開發(fā)環(huán)境與實(shí)例說明 146
9.3.2 藍(lán)牙實(shí)例代碼 147
9.3.3 測(cè)試結(jié)果及分析 149
參考資料 149
第10章 STM32F401傳感器模塊 151
10.1 功能描述 151
10.2 傳感器模塊配置 157
10.2.1 傳感器I2C地址的選擇 157
10.2.2 傳感器的斷開 157
10.2.3 可能用到的函數(shù) 157
10.2.4 程序框架 159
10.3 應(yīng)用實(shí)例 159
10.3.1 開發(fā)環(huán)境與實(shí)例說明 159
10.3.2 傳感器模塊實(shí)例代碼 160
10.3.3 測(cè)試結(jié)果及分析 161
參考資料 161
第11章 嵌入式物聯(lián)網(wǎng)系統(tǒng)設(shè)計(jì)與實(shí)例 163
11.1 傳感器數(shù)據(jù)采集 163
11.1.1 溫度傳感器 163
11.1.2 溫濕度傳感器 163
11.1.3 超聲波傳感器 164
11.1.4 煙霧傳感器 164
11.1.5 聲音傳感器 165
11.1.6 光敏傳感器 165
11.2 藍(lán)牙氣象站實(shí)例 165
11.2.1 開發(fā)環(huán)境與實(shí)例說明 166
11.2.2 藍(lán)牙氣象站實(shí)例代碼 166
11.2.3 測(cè)試結(jié)果及分析 177
11.3 設(shè)計(jì)建議 177
第12章 物聯(lián)網(wǎng)和云 180
12.1 物聯(lián)網(wǎng)需要云 180
12.1.1 云計(jì)算 180
12.1.2 云計(jì)算的基本概念術(shù)語 180
12.1.3 云計(jì)算的安全 188
12.2 物聯(lián)網(wǎng)與云的結(jié)合 189
12.2.1 物聯(lián)網(wǎng)的端到云 189
12.2.2 物聯(lián)網(wǎng)與云計(jì)算結(jié)合的模式分類 190
12.2.3 物聯(lián)網(wǎng)與云計(jì)算的分階段融合 191
12.2.4 物聯(lián)網(wǎng)與云計(jì)算的結(jié)合優(yōu)勢(shì) 191
12.2.5 物聯(lián)網(wǎng)與云的結(jié)合實(shí)例 193
12.3 使用Bluemix連接設(shè)備實(shí)例 195
12.3.1 開發(fā)環(huán)境與實(shí)例說明 196
12.3.2 測(cè)試結(jié)果及分析 202
參考資料 203
附錄1 Keil軟件使用詳細(xì)教程 205
附錄2 Mbed編程實(shí)例代碼 217
- 零基礎(chǔ)玩轉(zhuǎn)國產(chǎn)大模型DeepSeek [徐永冰 張帥 編著]
- 網(wǎng)絡(luò)工程師5天修煉(適配第6版考綱) [主編 朱小平 施游]
- 信息系統(tǒng)項(xiàng)目管理師考試32小時(shí)通關(guān)(適用第4版考綱) [薛大龍]
- 信息系統(tǒng)管理工程師考試32小時(shí)通關(guān)(適配第2版考綱) [薛大龍 劉偉]
- 土木工程材料檢測(cè)實(shí)訓(xùn) [洪曉江 達(dá)則曉麗 錢波]
- 科技信息檢索與論文寫作實(shí)用教程 [李振華]
- 傳統(tǒng)山水畫論解讀與實(shí)踐 [陳鈉 著]
- Python數(shù)據(jù)庫編程 [主編 殷樹友 邢 翀]
- 計(jì)算機(jī)基礎(chǔ)實(shí)訓(xùn)指導(dǎo) [主編 袁春萍 朱妮]
- 嵌入式人工智能技術(shù)應(yīng)用(數(shù)字教材) [主編 胡娜 楊國勇 晏廷榮]
- Vienna整流器技術(shù) [桂存兵 著]
- 變頻器與伺服應(yīng)用 [陳剛 葉云飛]
- 物聯(lián)網(wǎng)工程設(shè)計(jì)與實(shí)踐 [湯琳 李敏]
- 爐邊夜話——深入淺出話AI [汪建 著]
- 電商運(yùn)營(yíng)與管理 [鐘肖英 陳瀟]
- Java面向?qū)ο蟪绦蛟O(shè)計(jì) [主編 姜春磊 陳虹潔]
- 信息技術(shù)基礎(chǔ)(Windows 10+WPS Office)(微課版) [主編 石利平 田輝平 謝盛嘉]
- 人工智能應(yīng)用 [主編 陳 萍 劉培培 陳孟軍]
- 大學(xué)生職業(yè)發(fā)展與就業(yè)指導(dǎo) [主編 劉志堅(jiān)]
- 高級(jí)辦公應(yīng)用項(xiàng)目教程 [主編 屈晶 趙成麗]
- 微信小程序開發(fā)項(xiàng)目實(shí)戰(zhàn)(微課版) [主編 黃龍泉 郭峰 朱倩]
- 企業(yè)檔案工作實(shí)戰(zhàn)寶典百問百答 [華俊 盧秀英 邵甜甜 著]
- 計(jì)算機(jī)網(wǎng)絡(luò)原理及應(yīng)用 [主編 唐繼勇 葉坤 孫夢(mèng)娜]
- 大學(xué)生創(chuàng)業(yè)基礎(chǔ) [主編 王麗莉 王 楊]
- 船舶輔機(jī) [主編 王連海 于洋 姜淑翠]
- 大學(xué)生就業(yè)指導(dǎo) [主編 王麗莉 董宴廷]
- 系統(tǒng)架構(gòu)設(shè)計(jì)師章節(jié)習(xí)題與考點(diǎn)特訓(xùn) [主編 薛大龍 鄒月平]
- 高校學(xué)生工作探索與實(shí)踐 [郭亮 著]
- 大學(xué)生情商管理 [方雄 著]
- 2023年長(zhǎng)沙市會(huì)展業(yè)發(fā)展報(bào)告 [主編 周棟良]