嵌入式系統(tǒng)設計是嵌入式方向的專業(yè)基礎理論課,而實驗實踐是加強基礎理論學習的必要手段。本書以基于ARM Cortex-M4芯核的典型芯片為例,介紹嵌入式系統(tǒng)設計中典型的、涉及常規(guī)外設的基礎實驗和綜合性實驗!肚度胧较到y(tǒng)設計實驗教程》共14個實驗,包括嵌入式系統(tǒng)開發(fā)環(huán)境部署、匯編指令、C語言、GPIO輸入/輸出、外部中斷、定時器、呼吸燈與PWM控制、USART通信、I2C通信、實時時鐘RTC驅動、實時操作系統(tǒng)移植等13個基礎實驗,以及1個綜合實驗,包括實驗目的、實驗設備、實驗內容、實驗預習、實驗原理、實驗步驟、實驗參考程序、實驗總結和思考題等內容。 《嵌入式系統(tǒng)設計實驗教程》是《嵌入式系統(tǒng)設計基礎及應用基于ARM Cortex-M4微處理器》的配套實驗教材,可作為高等院校軟件工程、計算機、電子信息和電氣工程、自動化、物聯(lián)網(wǎng)等相關專業(yè)本科生相關理論課程的實踐配套教材,也可作為廣大從事嵌入式系統(tǒng)開發(fā)的工程技術人員實踐學習的參考用書。
嵌入式系統(tǒng)設計是嵌入式方向的專業(yè)基礎理論課,而實驗實踐是加強基礎理論學習的必要手段。本書以基于ARM Cortex-M4芯核的典型芯片為例,介紹了嵌入式系統(tǒng)設計中典型的、涉及常規(guī)外設的基礎實驗和綜合實驗。
作者權威,經(jīng)驗豐富:本書由中國計算機學會(CCF)嵌入式系統(tǒng)專委會組織編寫,作者不僅具有嵌入式系統(tǒng)課程的教學經(jīng)驗,同時具有多年嵌入式系統(tǒng)的實踐和項目經(jīng)驗。
針對性強,配套使用:本書是《嵌入式系統(tǒng)設計基礎及應用基于ARM Cortex-M4微處理器》的配套實驗教材,同時也可以單獨作為嵌入式系統(tǒng)設計課程的實驗教材使用。
實驗豐富,講解透徹:涵蓋14個實驗,包括嵌入式系統(tǒng)開發(fā)環(huán)境部署、匯編指令、C語言、GPIO 輸入/輸出、外部中斷、定時器、呼吸燈與PWM 控制、USART通信、I2C通信、實時時鐘RTC驅動、實時操作系統(tǒng)移植等13個基礎實驗,以及1個綜合實驗。讀者
通過閱讀硬件手冊、學習硬件配置的修改、調試開發(fā)板等,完成實驗的搭建、代碼的編寫、代碼的下載以及程序在開發(fā)板上的運行調試,掌握基于ARM Cortex-M4的常規(guī)外設開發(fā),從而提升嵌入式系統(tǒng)開發(fā)和設計的能力。
資源齊全,利于教學:提供14個實驗完整的工程文件以及實驗大綱。
前言嵌入式系統(tǒng)設計是大學嵌入式方向的專業(yè)基礎課,與之相對應的實踐環(huán)節(jié)是幫助學生理解相關理論的必要手段之一。為了提高學生的動手、分析與解決問題的能力,使理論與實際工程實踐和應用緊密結合,并提升學生(讀者,特別是初學者)探究的興趣。本書是《嵌入式系統(tǒng)設計基礎及應用基于ARM CortexM4微處理器》的配套實驗教材,同時,本書也可以單獨作為嵌入式系統(tǒng)設計課程的實驗教材使用。
本書詳細介紹了嵌入式系統(tǒng)開發(fā)中基于ARM CortexM4芯核的芯片的常規(guī)外設實驗,包括GPIO、中斷機制、定時器、UART、PWM、I2C、時鐘等;A實驗的內容包括基本原理、實驗硬件設備的搭建、軟件開發(fā)過程、實驗的步驟等,綜合實驗介紹了一個嵌入式最小系統(tǒng)的開發(fā)設計。
本書的14個實驗都在基于ARM CortexM4(集成在STM32F429IGT6中)的開發(fā)板上調試通過。書中采用循序漸進、深入淺出的敘述方式,引導讀者通過閱讀硬件手冊、學習硬件配置的修改、調試開發(fā)板等,完成實驗的搭建、代碼的編寫、代碼的下載以及程序在開發(fā)板上的運行調試,掌握基于ARM CortexM4的常規(guī)外設開發(fā),從而提升嵌入式系統(tǒng)開發(fā)和設計的能力。
本書工程文件和實驗大綱可掃描此處二維碼下載。
配套資源
本書由北京大學曹喜信、郭建、陳剛主編,北京大學、東北大學、華東師范大學、西安電子科技大學、武漢大學、湖南大學和南京郵電大學相關一線教師共同編寫,華東師范大學郭建統(tǒng)稿。北京大學林金龍教授在本書的編寫過程中,提出了許多寶貴的修改意見,在此表示衷心的感謝。感謝清華大學出版社編輯多次給出的編撰意見,使得本書能夠順利完成。感謝華東師范大學軟件工程學院的董星河、王子健在實驗整理、校對過程中付出的辛勤勞動。
非常感謝CCF嵌入式系統(tǒng)專家委員會對編寫本書的支持。本書受到華東師范大學精品教材建設專項基金項目的資助,在此一并感謝。
出好書是作者追求的目標,但由于水平所限,盡管做了很大努力,書中可能還會有若干不妥甚至錯誤,望廣大讀者給予批評指正。
《嵌入式系統(tǒng)設計實驗教程》編寫組2022年2月
曹喜信,博士,教授,博導。2000年獲計算機工學博士學位,F(xiàn)為中國計算機學會(CCF)嵌入式系統(tǒng)專業(yè)委員會秘書長、華北EDA/PLD新技術推廣與教學研究會副理事長兼秘書長。
郭建,華東師范大學,副教授,博士,研究領域:嵌入式系統(tǒng)
陳剛,東北大學計算機科學與工程學院,副教授,博士,研究領域:嵌入式系統(tǒng)、機器人、計算機視覺,劉錦輝,西安電子科技大學計算機科學與技術學院,副教授,博士,研究領域:嵌入式系統(tǒng)、計算機仿真技術、數(shù)字信號處理技術
江先陽,武漢大學物理科學與技術學院,副教授,博士,研究領域:新型計算機體系結構、類腦計算等
謝國琪,湖南大學信息科學與工程學院,教授,計,博士,研究領域:實時系統(tǒng)、高性能嵌入式計算、汽車信息物理系統(tǒng)
謝勇,南京郵電大學計算機學院,副教授,博士,研究領域:嵌入式系統(tǒng)
陳勉,西安電子科技大學,研究領域:分布式計算、移動智能計算
實驗1嵌入式系統(tǒng)開發(fā)環(huán)境部署
1.1實驗目的
1.2實驗設備
1.3實驗內容
1.4實驗預習
1.5實驗原理
1.6實驗步驟
1.6.1Keil開發(fā)工具安裝方法
1.6.2項目工程建立
1.6.3Keil MDK調試工具
1.6.4Keil使用注意事項
1.7實驗總結
1.8思考題
實驗2匯編指令實驗
2.1實驗目的
2.2實驗設備
2.3實驗內容
2.3.1實驗題目
2.3.2實驗描述
2.4實驗預習
2.5實驗原理
2.5.1軟件開發(fā)環(huán)境
2.5.2ARM CortexM4編程模型
2.5.3存儲器系統(tǒng)
2.5.4指令格式
2.6實驗步驟
2.6.1工程文件
2.6.2創(chuàng)建工程
2.6.3創(chuàng)建文件
2.6.4配置參數(shù)
2.6.5編譯
2.6.6運行及調試
2.7實驗參考程序
2.8實驗總結
2.9思考題
實驗3C語言實驗
3.1實驗目的
3.2實驗設備
3.3實驗內容
3.4實驗預習
3.5實驗原理
3.6實驗步驟
3.6.1創(chuàng)建工程
3.6.2修改配置
3.6.3跟蹤變量
3.7實驗參考程序
3.8實驗總結
3.9思考題
實驗4GPIO設備編程輸出實驗(寄存器點亮LED燈)
4.1實驗目的
4.2實驗設備
4.3實驗內容
4.4實驗預習
4.5實驗原理
4.5.1GPIO寄存器
4.5.2寄存器映射
4.6實驗步驟
4.6.1硬件連接
4.6.2實驗講解
4.6.3創(chuàng)建工程
4.6.4編譯并點亮LED
4.7實驗參考程序
4.8實驗總結
4.9思考題
實驗5GPIO設備編程輸出實驗(固態(tài)庫點亮LED燈)
5.1實驗目的
5.2實驗設備
5.3實驗內容
5.4實驗預習
5.5實驗原理
5.5.1GPIO寄存器的數(shù)據(jù)結構
5.5.2GPIO初始化
5.6實驗步驟
5.6.1硬件連接
5.6.2實驗講解
5.6.3創(chuàng)建工程
5.7實驗參考程序
5.7.1led文件夾
5.7.2main.c
5.8實驗總結
5.9思考題
實驗6GPIO設備編程輸入實驗
6.1實驗目的
6.2實驗設備
6.3實驗內容
6.4實驗預習
6.5實驗原理
6.5.1GPIO配置寄存器的設置
6.5.2GPIO初始化
6.6實驗步驟
6.6.1硬件連接
6.6.2實驗講解
6.6.3創(chuàng)建工程
6.7實驗參考程序
6.8實驗總結
6.9思考題
實驗7外部中斷實驗
7.1實驗目的
7.2實驗設備
7.3實驗內容
7.3.1實驗題目
7.3.2實驗描述
7.4實驗預習
7.5實驗原理
7.5.1外部中斷的原理
7.5.2外部中斷編程的基本方法
7.6實驗步驟
7.6.1硬件連接
7.6.2實驗講解
7.6.3創(chuàng)建工程
7.7實驗參考程序
7.8實驗總結
7.9思考題
實驗8定時器實驗
8.1實驗目的
8.2實驗設備
8.3實驗內容
8.3.1實驗題目
8.3.2實驗描述
8.4實驗預習
8.5實驗原理
8.5.1定時器簡介
8.5.2數(shù)據(jù)結構介紹
8.6實驗步驟
8.6.1硬件連接
8.6.2實驗講解
8.6.3創(chuàng)建工程
8.7實驗參考程序
8.8實驗總結
8.9思考題
實驗9呼吸燈與PWM控制實驗
9.1實驗目的
9.2實驗設備
9.3實驗內容
9.3.1實驗題目
9.3.2實驗描述
9.4實驗預習
9.5實驗原理
9.5.1通用定時器簡介
9.5.2PWM簡介
9.6實驗步驟
9.6.1硬件連接
9.6.2實驗講解
9.6.3創(chuàng)建工程
9.7實驗參考程序
9.8實驗總結
9.9思考題
實驗10USART通信實驗
10.1實驗目的
10.2實驗設備
10.3實驗內容
10.4實驗預習
10.5實驗原理
10.5.1USART及其通信方式
10.5.2STM32F4的USART功能介紹
10.5.3串口通信硬件與實現(xiàn)方法
10.6實驗步驟
10.6.1硬件連接
10.6.2實驗講解
10.6.3串口調試助手
10.6.4創(chuàng)建工程
10.7實驗參考程序
10.8實驗總結
10.9思考題
實驗11I2C通信實驗
11.1實驗目的
11.2實驗設備
11.3實驗內容
11.4實驗預習
11.5實驗原理
11.5.1I2C通信介紹
11.5.2STM32F4的I2C接口框圖
11.5.3I2C總線的信號類型及其實現(xiàn)方法
11.5.4I2C的工作模式
11.5.5I2C接口芯片AT24C02介紹
11.5.6I2C讀寫流程小結
11.6實驗步驟
11.6.1硬件連接
11.6.2實驗講解
11.6.3串口調試助手
11.6.4創(chuàng)建工程
11.7實驗參考程序
11.8實驗總結
11.9思考題
實驗12實時時鐘RTC部件
12.1實驗目的
12.2實驗設備
12.3實驗內容
12.4實驗預習
12.5實驗原理
12.5.1時鐘
12.5.2周期性自動喚醒
12.5.3RTC中斷
12.5.4RTC日歷時間和日期寄存器
12.5.5初始化
12.6實驗步驟
12.6.1硬件連接
12.6.2實驗講解
12.6.3串口調試助手
12.6.4創(chuàng)建工程
12.7實驗參考程序
12.8實驗總結
12.9思考題
實驗13實時操作系統(tǒng)內核移植與編譯實驗
13.1實驗目的
13.2實驗設備
13.3實驗內容
13.4實驗預習
13.5實驗原理
13.6實驗步驟
13.6.1C/OSⅢ下載
13.6.2C/OSⅢ源代碼文件結構
13.6.3文件復制
13.6.4添加到工程中
13.6.5修改參數(shù)
13.6.6修改文檔
13.7實驗總結
13.8思考題
實驗14綜合實驗: 最小系統(tǒng)的實驗
14.1實驗目的
14.2實驗設備
14.3實驗內容
14.3.1實驗題目
14.3.2實驗描述
14.4實驗預習
14.5實驗原理
14.5.1最小系統(tǒng)介紹
14.5.2循環(huán)緩沖區(qū)
14.6實驗步驟
14.6.1硬件連接
14.6.2實驗講解
14.6.3創(chuàng)建工程
14.7實驗參考程序
14.8實驗總結
14.9思考題
附錄AARM CortexM4主要指令列表
附錄B硬件連接圖