为你推荐
内容简介
前言
作者简介
第1章 嵌入式系统概述
1.1 学习目标
1.2 嵌入式系统的概念
1.3 嵌入式系统的组成
1.3.1 嵌入式系统的硬件组成
1.3.2 嵌入式系统的软件组成
1.4 嵌入式系统的应用领域
1.5 嵌入式系统的发展
1.6 嵌入式系统的操作系统
1.6.1 嵌入式系统的操作系统分类
1.6.2 嵌入式系统的操作系统功能
1.7 常用嵌入式系统的操作系统介绍
1.7.1 μC/OS
1.7.2 VxWorks
1.7.3 FreeRTOS
1.7.4 RT-Thread
1.7.5 Embedded Linux
1.7.6 Android
1.7.7 LiteOS
1.8 习题
第2章 嵌入式系统开发过程及分层架构
2.1 学习目标
2.2 嵌入式系统开发过程
2.3 软件系统分层架构
2.3.1 为什么需要分层
2.3.2 软件系统分层的概念
2.4 驱动层与应用层的交互
2.5 裸机工程结构与分层架构设计
2.5.1 STM32CubeMX生成的裸机工程目录结构
2.5.2 裸机工程的启动过程
2.5.3 裸机工程的分层架构设计
2.6 基于LiteOS的嵌入式系统分层架构设计
2.7 分层架构实验
2.7.1 寄存器编程
2.7.2 LiteOS编程
2.8 习题
第3章 嵌入式系统开发基础
3.1 学习目标
3.2 CPU与外设的通信方式
3.2.1 CPU与外设的接口
3.2.2 外设寻址与外设寄存器变量
3.2.3 单个外设寄存器变量的定义
3.2.4 地址连续的多个外设寄存器变量定义
3.3 位运算
3.4 软件建模语言UML
3.4.1 类图
3.4.2 用例图
3.4.3 活动图
3.4.4 序列图
3.4.5 状态图
3.5 LiteOS开发基础
3.5.1 LiteOS的内核架构
3.5.2 LiteOS的目录结构
3.5.3 LiteOS的启动过程
3.5.4 LiteOS任务及其创建
3.6 习题
第4章 Cortex-M3与STM32F103ZET6
4.1 学习目标
4.2 Cortex-M3介绍
4.2.1 Cortex-M3的架构
4.2.2 Cortex-M3寄存器
4.2.3 Cortex-M3的工作模式和特权级别
4.2.4 指令集
4.2.5 指令流水线
4.3 STM32F103ZET6介绍
4.3.1 STM32F103ZET6架构
4.3.2 STM32F103ZET6时钟
4.3.3 STM32F103ZET6存储器映射
4.3.4 STM32F103ZET6引脚定义
4.4 习题
第5章 GPIO编程
5.1 学习目标
5.2 信号类型
5.3 STM32F103ZET6 GPIO特性
5.4 GPIO的端口结构
5.5 GPIO的工作模式
5.6 GPIO的复用功能AFIO
5.7 GPIO与AFIO相关寄存器
5.7.1 工作方式配置寄存器GPIOx_CRL与GPIOx_CRH
5.7.2 输入数据寄存器GPIOx_IDR
5.7.3 输出数据寄存器GPIOx_ODR
5.7.4 位置位/复位寄存器GPIOx_BSRR
5.7.5 位复位寄存器GPIOx_BRR
5.7.6 锁定寄存器GPIOx_LCKR
5.7.7 事件控制寄存器AFIO_EVCR
5.7.8 外部中断控制寄存器AFIO_EXTICRx
5.7.9 引脚映射寄存器AFIO_MAPR
5.7.10 GPIO寄存器映射
5.7.11 AFIO寄存器映射
5.8 GPIO编程方法
5.8.1 寄存器编程方法
5.8.2 库函数编程方法
5.9 GPIO编程举例
5.9.1 寄存器编程举例
5.9.2 库函数编程举例
5.10 项目实战——智慧教室:人走关扇熄灯
5.10.1 项目需求
5.10.2 实验环境
5.10.3 人体红外检测传感器的工作原理
5.10.4 系统分析
5.10.5 系统设计
5.10.6 LiteOS+库函数编程
5.10.7 系统实现
5.11 习题
第6章 中断控制
6.1 学习目标
6.2 中断的工作原理
6.2.1 NVIC中断控制器
6.2.2 NVIC中断相关寄存器
6.2.3 EXTI外部中断控制器
6.3 STM32F103ZET6异常与中断向量表
6.4 裸机工程默认的中断设置
6.5 中断编程方法
6.5.1 寄存器编程方法
6.5.2 库函数编程方法
6.6 中断编程举例
6.6.1 寄存器编程举例
6.6.2 库函数编程举例
6.7 项目实战——按键报警
6.7.1 项目需求
6.7.2 实验环境
6.7.3 系统分析
6.7.4 系统设计
6.7.5 系统实现
6.8 习题
第7章 DMA编程
7.1 学习目标
7.2 DMA的工作原理
7.3 DMA的主要特性
7.4 DMA处理
7.4.1 通道
7.4.2 数据宽度与数据对齐方式
7.4.3 中断
7.4.4 错误管理
7.4.5 DMA的工作模式
7.4.6 DMA请求的处理流程
7.5 DMA寄存器
7.6 DMA寄存器映射
7.7 DMA的编程方法
7.7.1 库函数接口
7.7.2 库函数编程方法
7.8 DMA编程举例
7.9 习题
第8章 UART通信
8.1 学习目标
8.2 STM32F103ZET6 USART概述
8.3 STM32F103ZET6 UART的特性
8.4 STM32F103ZET6 UART的工作原理
8.5 串行通信帧格式
8.6 波特率的生成
8.7 多处理器模式
8.8 USART寄存器
8.9 USART寄存器映射
8.10 UART编程方法
8.10.1 寄存器编程方法
8.10.2 库函数编程方法
8.11 UART编程举例
8.11.1 寄存器编程举例
8.11.2 库函数编程举例
8.11.3 printf()输出重定向
8.12 项目实战——智慧教室系统人机交互调试接口
8.12.1 项目需求
8.12.2 实验环境
8.12.3 系统分析
8.12.4 系统设计
8.12.5 系统实现
8.13 习题
第9章 定时器
9.1 学习目标
9.2 定时器的基本工作原理
9.3 计数模式
9.3.1 上计数
9.3.2 下计数
9.3.3 上/下计数
9.4 定时事件
9.4.1 溢出事件
9.4.2 更新事件
9.4.3 比较事件
9.4.4 捕获事件
9.5 PWM
9.6 死区
9.7 STM32F103ZET6的定时器类型
9.8 基本定时器(TIM6和TIM7)
9.8.1 主要特性
9.8.2 计数时序与更新事件
9.8.3 自动重装载值的计算
9.8.4 基本定时器寄存器
9.8.5 基本定时器寄存器映射
9.9 高级定时器(TIM1和TIM8)
9.9.1 主要特性
9.9.2 重复计数器
9.9.3 计数时钟源
9.9.4 输入捕获
9.9.5 输出比较
9.9.6 生成PWM信号
9.9.7 高级定时器寄存器
9.9.8 高级定时器寄存器映射
9.10 通用定时器
9.11 系统节拍定时器SysTick
9.11.1 系统节拍定时器的工作原理
9.11.2 系统节拍定时器寄存器
9.11.3 系统节拍定时器寄存器映射
9.11.4 裸机工程对系统节拍定时器的使用
9.12 看门狗定时器
9.12.1 独立看门狗IWDG
9.12.2 窗口看门狗WWDG
9.13 定时器编程方法
9.13.1 库函数接口
9.13.2 库函数编程方法
9.14 定时器编程举例
9.14.1 基本定时器编程举例
9.14.2 高级定时器编程举例
9.15 项目实战——人体智慧检测
9.15.1 项目需求
9.15.2 实验环境
9.15.3 步进电机的工作原理与工作方式
9.15.4 系统分析
9.15.5 系统设计
9.15.6 系统实现
9.16 习题
第10章 FSMC编程
10.1 学习目标
10.2 FSMC控制概述
10.3 FSMC功能框图
10.4 各类存储器地址映射
10.5 NOR Flash和PSRAM控制器
10.5.1 支持的存储器类型
10.5.2 读/写时序
10.6 FSMC NOR/PSRAM控制器寄存器
10.7 寄存器映射
10.8 FSMC编程方法
10.8.1 库函数接口
10.8.2 库函数编程方法
10.9 FSMC编程举例
10.9.1 IS62WV51216BLL芯片介绍
10.9.2 利用库函数读/写SRAM
10.10 习题
第11章 I2C编程
11.1 学习目标
11.2 I2C协议简介
11.2.1 I2C网络
11.2.2 I2C总线信号与时序
11.2.3 I2C设备地址格式
11.2.4 I2C数据传送过程
11.3 STM32F103ZET6 I2C的工作原理
11.3.1 主要特性
11.3.2 功能结构
11.3.3 工作方式
11.3.4 通信故障
11.3.5 SDA/SCL控制
11.3.6 中断
11.4 I2C寄存器
11.5 I2C寄存器映射
11.6 I2C编程方法
11.6.1 库函数接口
11.6.2 库函数编程方法
11.7 I2C编程举例
11.7.1 AT24C02 EEPROM介绍
11.7.2 基于程序查询方式
11.7.3 基于中断方式
11.8 项目实战——智慧教室:温度控制
11.8.1 项目需求
11.8.2 实验环境
11.8.3 AHT10温湿度传感器简介
11.8.4 系统分析
11.8.5 系统设计
11.8.6 系统实现
11.9 习题
第12章 串行外设接口SPI
12.1 学习目标
12.2 SPI的功能及主要特性
12.3 SPI的工作原理
12.3.1 SPI功能框图
12.3.2 SPI的工作模式
12.3.3 SPI用作主设备
12.3.4 SPI用作从设备
12.3.5 状态标志
12.3.6 DMA传输
12.4 寄存器
12.5 寄存器映射
12.6 SPI编程方法
12.6.1 库函数接口
12.6.2 库函数编程方法
12.7 SPI编程举例
12.8 项目实战——智慧教室:OLED显示教室温湿度
12.8.1 项目需求
12.8.2 实验环境
12.8.3 OLED SSD1306介绍
12.8.4 系统分析
12.8.5 系统设计
12.8.6 系统实现
12.9 习题
第13章 模数转换器ADC
13.1 学习目标
13.2 ADC的主要特性
13.3 ADC的功能结构与基本概念
13.3.1 ADC转换的触发方式
13.3.2 模拟信号输入通道
13.3.3 通道序列/通道分组
13.3.4 规则序列与注入序列
13.3.5 自动注入
13.3.6 序列的定义与转换结果的保存
13.4 ADC的工作方式
13.5 注入序列转换的启动方式
13.6 中断和DMA
13.7 ADC的时钟与采样时间
13.8 ADC的触发
13.9 数据对齐
13.10 校准
13.11 模拟看门狗
13.12 转换结果
13.13 ADC寄存器
13.14 ADC寄存器映射
13.15 ADC编程方法
13.15.1 库函数接口
13.15.2 库函数编程方法
13.16 ADC编程举例
13.16.1 使用STM32CubeMX配置ADC
13.16.2 使用STM32CubeMX生成代码
13.16.3 电位器驱动
13.17 项目实践——智慧教室:光照强度控制
13.17.1 项目需求
13.17.2 实验环境
13.17.3 光照强度传感器——光敏电阻特性
13.17.4 系统分析
13.17.5 系统设计
13.17.6 系统实现
13.18 习题
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜