目录

更新于 2026年10月10日 版权声明

目 录

前 言

第1章 嵌入式系统基础

1.1 嵌入式系统的定义及组成

1.1.1 嵌入式系统的定义

1.1.2 嵌入式系统的组成

1.2 嵌入式处理器

1.2.1 EMPU

1.2.2 MCU

1.2.3 EDSP

1.2.4 SoC

1.3 嵌入式操作系统

1.3.1 嵌入式操作系统概述

1.3.2 常见的嵌入式实时操作系统

1.4 嵌入式系统开发流程

1.4.1 需求分析

1.4.2 概要设计

1.4.3 详细设计

1.4.4 系统调试

本章小结

本章习题

第2章 ARM Cortex-M3体系结构

2.1 ARM Cortex-M3处理器简介

2.1.1 ARM Cortex-M3处理器发展历程

2.1.2 内核结构及功能描述

2.2 内核寄存器组织

2.2.1 通用寄存器

2.2.2 特殊功能寄存器

2.3 处理器操作模式

2.4 存储器系统

2.4.1 存储器映射

2.4.2 位带操作

2.5 异常

2.5.1 异常类型

2.5.2 优先级

2.5.3 中断向量表

2.5.4 异常的进入与退出

2.5.5 异常处理机制

2.5.6 嵌套向量中断控制器

本章小结

本章习题

第3章 STM32开发环境搭建

3.1 嵌入式系统开发环境

3.2 STM32CubeMX的应用

3.2.1 STM32CubeMX简介

3.2.2 STM32CubeMX及组件的安装

3.2.3 STM32CubeMX的使用

3.3 集成开发环境Keil-MDK的应用

3.3.1 Keil-MDK的安装

3.3.2 Keil-MDK的使用

3.4 Proteus的应用

3.4.1 Proteus的特点

3.4.2 Proteus电路原理图绘制

3.4.3 Proteus虚拟仿真

3.5 仿真器和下载器

3.5.1 ST-Link仿真器

3.5.2 J-Link仿真器

3.5.3 ISP下载器

本章小结

本章习题

第4章 STM32系列微控制器与HAL库函数

4.1 STM32系列微控制器简介

4.1.1 STM32系列MCU产品生态

4.1.2 STM32系列MCU命名规则

4.1.3 STM32F1系列MCU内部结构及片上资源

4.2 STM32相关的HAL库函数

4.2.1 HAL库函数文件结构

4.2.2 HAL库文件的数据结构

4.3 HAL库使用步骤

4.4 STM32F1系列微控制器最小系统配置及应用

4.4.1 电源配置及管理

4.4.2 时钟配置

4.4.3 复位配置

4.4.4 启动配置

本章小结

本章习题

第5章 通用输入/输出接口

5.1 通用输入/输出接口概述

5.2 通用输入/输出接口结构

5.2.1 GPIO的引脚及功能

5.2.2 GPIO接口的内部结构

5.2.3 GPIO引脚的工作模式

5.3 复用输入/输出接口结构

5.4 通用输入/输出接口相关的HAL库函数

5.4.1 初始化函数HAL_GPIO_Init()

5.4.2 HAL_GPIO_ReadPin()函数

5.4.3 HAL_GPIO_WritePin()函数

5.4.4 HAL_GPIO_TogglePin()函数

5.4.5 GPIO中断相关函数

5.5 通用输入/输出接口相关的HAL库函数应用案例

5.5.1 流水灯设计

5.5.2 温湿度采集器设计

本章小结

本章习题

第6章 外部中断/事件

6.1 中断概述

6.2 外部中断/事件控制器结构

6.2.1 EXTI的结构

6.2.2 EXTI源

6.3 中断/事件相关的HAL库函数

6.3.1 中断总屏蔽/使能函数介绍

6.3.2 NVIC相关HAL库函数介绍

6.3.3 EXTI相关HAL库函数介绍

6.4 外部中断/事件控制器应用案例

6.4.1 键控蜂鸣器设计

6.4.2 数字温度计设计

本章小结

本章习题

第7章 定时器

7.1 定时器工作原理

7.2 STM32的定时器概述

7.3 STM32的常规定时器结构

7.3.1 通用定时器

7.3.2 基本定时器

7.3.3 高级定时器

7.3.4 常规定时器的引脚

7.4 STM32的常规定时器相关的HAL库函数

7.4.1 常规定时器的句柄TIM_HandleTypeDef

7.4.2 基本定时功能相关函数

7.4.3 输出比较与PWM功能相关函数

7.4.4 输入捕获功能常用函数

7.4.5 常规定时器中断源及其配置

7.5 STM32的常规定时器应用

7.5.1 定时功能应用:数字时钟设计

7.5.2 输入捕获功能应用:数字频率计设计

7.5.3 输出比较功能应用:直流电机驱动设计

7.6 STM32的看门狗定时器

7.6.1 看门狗定时器内部结构

7.6.2 看门狗定时器应用:STM32系统运行监测设计

7.7 节拍定时器SysTick

7.7.1 节拍定时器SysTick简介

7.7.2 SysTick应用:100 ms闪烁灯设计

7.8 STM32的实时时钟

7.8.1 实时时钟的功能和结构

7.8.2 RTC相关的HAL库函数

7.8.3 RTC应用:电子台历设计

本章小结

本章习题

第8章 通用同步/异步收发器

8.1 串行通信工作原理

8.1.1 并行通信与串行通信

8.1.2 同步通信和异步通信

8.1.3 串行通信的传输方向

8.1.4 串行通信的数据校验

8.2 STM32的通用同步/异步收发器的内部结构

8.2.1 波特率发生器

8.2.2 数据发送器

8.2.3 数据接收器

8.2.4 工作模式

8.2.5 引脚

8.2.6 事件与中断

8.3 通用同步/异步收发器相关的HAL库函数

8.3.1 USART的句柄USART_HandleTypeDef

8.3.2 初始化函数HAL_UART_Init()

8.3.3 串口发送和接收函数(https://www.daowen.com)

8.3.4 中断处理函数

8.4 通用同步/异步收发器应用案例

8.4.1 USART发送应用:时钟数据传输设计

8.4.2 USART接收应用:远程路灯控制设计

本章小结

本章习题

第9章 模拟/数字转换器

9.1 模拟/数字转换器工作原理

9.2 模拟/数字转换器的内部结构

9.2.1 ADC概述

9.2.2 输入通道

9.2.3 参考电压

9.2.4 触发源

9.2.5 模数转换单元

9.2.6 中断单元和DMA

9.3 模拟/数字转换器相关的HAL库函数

9.3.1 ADC的句柄

9.3.2 ADC初始化配置函数

9.3.3 ADC转换启停函数

9.3.4 ADC转换结果读取函数

9.3.5 ADC中断及回调函数

9.4 模拟/数字转换器应用案例

9.4.1 ADC转换的步骤

9.4.2 数字电压表设计

本章小结

本章习题

第10章 直接存储器存取

10.1 直接存储器存取工作原理

10.2 STM32的直接存储器存取控制器的结构

1.处理过程

2.仲裁器

3.请求映射

4.传输模式

5.中断请求

10.3 直接存储器存取控制器相关的HAL库函数

10.3.1 DMA句柄及初始化

10.3.2 DMA中断使能及事件标志

10.4 直接存储器存取控制器应用案例

10.4.1 内存到外设USART数据传输设计

10.4.2 外设ADC到内存数据传输设计

本章小结

本章习题

第11章 同步串行外设接口

11.1 串行外设接口的工作原理

11.1.1 串行外设接口的结构

11.1.2 SPI通信协议

11.2 STM32的串行外设接口的结构

11.2.1 SPI概述

11.2.2 SPI内部结构

11.2.3 SPI配置

11.3 串行外设接口相关的HAL库函数

11.3.1 SPI句柄和初始化

11.3.2 SPI数据的发送与接收函数

11.3.3 SPI中断使能及事件标志

11.4 串行外设接口应用案例

11.4.1 TC72温度计设计

11.4.2 SPI接口显示器设计

本章小结

本章习题

第12章 FreeRTOS基础

12.1 ERTOS概述

12.1.1 认识ERTOS

12.1.2 ERTOS基础知识

12.2 FreeRTOS简介

12.2.1 FreeRTOS的特点

12.2.2 FreeRTOS的文件结构

12.3 FreeRTOS常用的API函数

12.3.1 任务相关函数

12.3.2 软件定时器相关函数

12.3.3 队列相关函数

12.3.4 信号量相关函数

12.3.5 事件标志组相关函数

12.3.6 任务通知相关函数

12.4 FreeRTOS配置

12.4.1 configXX相关配置

12.4.2 INCLUDE_相关配置

12.4.3 与中断服务函数有关的配置

本章小结

本章习题

第13章 FreeRTOS内核工作原理分析与应用

13.1 FreeRTOS列表和列表项

13.1.1 列表

13.1.2 列表项

13.1.3 列表和列表项初始化函数

13.1.4 列表项插入和删除函数

13.2 FreeRTOS任务运行状态分析

13.2.1 FreeRTOS应用案例

13.2.2 任务运行状态

13.3 FreeRTOS任务创建

13.3.1 任务代码

13.3.2 任务控制块

13.3.3 任务堆栈

13.3.4 任务创建

13.3.5 任务就绪

13.3.6 任务创建应用实例

13.4 FreeRTOS任务调度

13.4.1 开启调度

13.4.2 触发PendSV中断和开启节拍定时器SysTick

13.4.3 SVC任务切换

13.4.4 PendSV任务切换

13.4.5 高优先级查找

13.5 FreeRTOS任务阻塞

13.5.1 FreeRTOS延时函数

13.5.2 其他让任务阻塞的服务

13.6 FreeRTOS任务从阻塞态到就绪态

13.6.1 时钟节拍

13.6.2 时钟节拍的服务

13.7 其他状态转换分析

13.7.1 挂起任务

13.7.2 解挂任务

13.7.3 删除任务

13.8 FreeRTOS多任务应用案例

1.任务要求

2.硬件设计

3.软件设计

4.仿真与调试

本章小结

本章习题

第14章 FreeRTOS任务通信解析与应用

14.1 FreeRTOS队列解析与应用

14.1.1 队列基础知识

14.1.2 队列的函数解析

14.1.3 消息队列应用:传感器数据融合设计

14.2 FreeRTOS信号量解析与应用

14.2.1 信号量的基础知识

14.2.2 FreeRTOS信号量的函数解析

14.2.3 二值信号量应用:键控LED灯设计

14.2.4 计数信号量应用:停车场车辆流量统计

14.2.5 互斥信号量应用:共享资源串口互斥访问设计

14.2.6 递归互斥信号量应用:递归锁设计

本章习题

第15章 智能家居系统设计与实现

15.1 智能家居系统方案设计

15.1.1 智能家居系统任务要求

15.1.2 智能家居系统方案分析

15.2 智能家居系统终端设备电路设计与实现

15.2.1 各模块设计

15.2.2 终端设备电路设计

15.3 智能家居系统云平台设计与实现

15.3.1 智能家居系统终端设备接入与管理开发

15.3.2 智能家居系统可视化开发

15.4 智能家居系统设备侧软件开发

15.4.1 设备侧软件框架

15.4.2 MQTT协议简介

15.4.3 ESP8266常用的AT指令

15.4.4 软件设计与实现

本章小结

本章习题

参考文献

NVIC配置

存储器保护单元

LED动态扫描显示设计

FreeRTOS软件定时器解析与应用

↑上一章 ↓下一章
关注公众号获取验证码
复制内容需要验证码(7.99元/天)