嵌入式系统原理与应用 ——基于STM32硬件和Proteus仿真
定 价:49.8 元
- 作者:周银祥
- 出版时间:2025/7/1
- ISBN:9787121506550
- 出 版 社:电子工业出版社
- 中图法分类:TP332.021
- 页码:224
- 纸张:
- 版次:01
- 开本:16开
-
商品库位:
本书第1章主要讲解嵌入式系统概述、ARM处理器概述及STM32微控制器概述;第2章主要讲解STM32开发工具软件、STM32开发/实验板及STM32的库函数;第3章主要讲解STM32的GPIO、STM32的实验过程与现象、STM32的复位与时钟、STM32的中断与事件及STM32的串口通信;第4章主要讲解LCD显示和STM32的FSMC、STM32定时器、STM32的I2C总线、STM32的SPI及STM32的ADC;第5章主要讲解嵌入式实时操作系统RT-Thread及嵌入式图形界面LVGL;第6章是一个实训项目,主要讲解大学生电子设计竞赛控制类题目中常见的智能巡线小车的设计。本书的程序设计部分同时使用了STM32的标准库和HAL库,实验例程同时涵盖了STM32硬件实验和Proteus软件仿真STM32实验,旨在帮助读者在学习过程中迅速、高效地全面理解和掌握硬件设计和软件设计的相关知识。本书可以作为高等院校电子、自动化等电类专业的单片机与嵌入式系统应用相关课程的教材,也可以作为相关领域工程技术人员的学习资料或参考用书。
电子科技大学成都学院教授/正高工,双师型教师,兼职研究生导师。具有10年企业研发、生产和管理经历,有较强的科研工作能力和项目管理经验。具有25年高校教学经历,教研方向是嵌入式、物联网、人工智能,讲授过 “嵌入式系统(STM32)应用开发”“嵌入式(Cortex-A8)系统设计”“人工智能(NVIDIA)实训”等课程。主持2项教育部产学合作协同育人项目,主持3项重大横向科研项目,获得3项发明专利授权,发表5篇论文,出版教材3本。指导学生参加电子设计竞赛获省和国家级奖30余项,现任全国大学生电子设计竞赛四川赛区专家组专家。
目 录
第1章 概述 1
1.1 嵌入式系统概述 1
1.1.1 嵌入式系统的定义 1
1.1.2 嵌入式系统的组成 1
1.2 ARM处理器概述 3
1.2.1 ARM公司 3
1.2.2 ARM处理器 3
1.3 STM32微控制器概述 5
1.3.1 STM32微控制器的分类 5
1.3.2 STM32F103微控制器的内部结构 6
1.3.3 STM32F103的外部引脚 8
1.3.4 STM32F103的I/O端口特性 10
1.3.5 STM32系列产品的命名规则 11
1.4 思考与练习 12
第2章 STM32开发环境 13
2.1 STM32开发工具软件 13
2.1.1 MDK的安装 13
2.1.2 STM32CubeMX的安装 15
2.1.3 Proteus软件的安装 16
2.1.4 STM32仿真器及驱动程序的安装 16
2.1.5 USB转串口驱动的安装 18
2.2 STM32开发/实验板 18
2.2.1 STM32最小系统板 18
2.2.2 STM32 Nucleo开发板 19
2.2.3 STM3210E-EVAL评估板 20
2.2.4 AS-07型STM32实验板 21
2.3 STM32的库函数 24
2.3.1 STM32的标准外设库 24
2.3.2 STM32的HAL库函数 25
2.4 思考与练习 26
第3章 STM32基础入门 27
3.1 STM32的GPIO 27
3.1.1 GPIO端口 27
3.1.2 GPIO库函数(标准库V3.5.0) 29
3.1.3 GPIO库函数(HAL库V1.8.5) 33
3.1.4 AFIO和调试配置 35
3.1.5 GPIO编程应用 36
3.2 STM32的实验过程与现象 42
3.2.1 STM32标准库V3.5.0的工程模板 43
3.2.2 使用STM32标准库V3.5.0的工程模板 45
3.2.3 MDK仿真调试程序 48
3.2.4 使用串口ISP和IAP下载程序 49
3.2.5 Proteus仿真STM32 51
3.2.6 使用STM32CubeMX 53
3.2.7 使用STM32CubeF1固件库工程模板和范例实验 57
3.3 STM32的复位与时钟 58
3.3.1 STM32的复位 58
3.3.2 STM32的时钟 59
3.3.3 RCC编程应用 61
3.4 STM32的中断与事件 65
3.4.1 NVIC 65
3.4.2 EXTI 68
3.4.3 中断编程应用 70
3.5 STM32的串口通信 76
3.5.1 USART概述 77
3.5.2 USART编程应用 78
3.6 思考与练习 86
第4章 STM32应用编程 87
4.1 LCD显示和STM32的FSMC 87
4.1.1 LCD简介 87
4.1.2 LCD的外部引脚 88
4.1.3 LCD的主要特性 88
4.1.4 LCD驱动器 89
4.1.5 FSMC概述 90
4.1.6 LCD编程应用 94
4.2 STM32定时器 105
4.2.1 基本定时器(TIM6和TIM7) 105
4.2.2 通用定时器(TIMx) 107
4.2.3 高级控制定时器(TIM1和TIM8) 110
4.2.4 系统滴答定时器SysTick 111
4.2.5 看门狗 111
4.2.6 TIM编程应用 112
4.3 STM32的I2C总线 125
4.3.1 Philips的I2C总线 125
4.3.2 STM32的I2C总线简介 126
4.3.3 STM32的I2C总线的主要特点 126
4.3.4 STM32的I2C总线功能描述 127
4.3.5 I2C总线存储器24C02 127
4.3.6 I2C编程应用 132
4.4 STM32的SPI 149
4.4.1 SPI的主要特点 149
4.4.2 SPI的功能描述 150
4.4.3 SPI总线存储器W25Q32 151
4.4.4 SPI编程应用 153
4.5 STM32的ADC 166
4.5.1 ADC的主要特性 166
4.5.2 ADC编程应用 167
4.6 思考与练习 169
第5章 STM32高级应用 170
5.1 嵌入式实时操作系统RT-Thread 170
5.1.1 RT-Thread内核 171
5.1.2 RT-Thread Studio开发工具软件 173
5.1.3 RT-Thread实验 174
5.2 嵌入式图形界面LVGL 179
5.2.1 LVGL概述 179
5.2.2 LVGL编程应用 180
5.3 思考与练习 186
第6章 STM32智能巡线小车设计实训 187
6.1 STM32智能巡线小车的硬件设计 187
6.1.1 小车车体(底盘) 187
6.1.2 电池 188
6.1.3 主控电路 188
6.1.4 直流减速电机 188
6.1.5 电机驱动电路 189
6.1.6 红外传感器 191
6.2 STM32智能巡线小车的软件设计 192
6.2.1 小车前进、后退及差速转向 192
6.2.2 巡线原理与编程 196
6.2.3 舵机控制 200
6.2.4 速度检测与PID控制 202
6.2.5 舵机控制转向的阿克曼小车巡线 207