本书以基于ARM的STM32微控制器的基本概念、基本原理为主线,详细阐述了STM32的学习方法与应用系统开发技术。本书在内容组织和框架设计上具有两个鲜明的特点,即全案例和基于学习者学习需求。从学习者的角度,精心组织每个章节的内容体系,并给出各个外设模块的硬件设计和软件设计实例,其代码均在开发板上调试通过,可通过TFT LCD或串口调试助手查看调试结果,可以很好地锻炼学生的硬件理解能力和软件编程能力,培养举一反三的能力。
本书共分17章,主要内容包括绪论、STM32嵌入式微控制器与最小系统设计、嵌入式开发环境的搭建、STM32通用输入/输出接口及其应用、STM32中断系统与按键中断设计实例、STM32定时器系统与PWM、STM32 USART及其应用、STM32 SPI与铁电存储器接口应用实例、STM32 I2C与日历时钟接口应用实例、STM32模-数转换器(ADC)及其应用、STM32 DMA及其应用、STM32 CAN总线系统设计、人机接口和DGUS屏的应用开发、旋转编码器的设计、CAN通信转换器的设计、电力网络仪表设计实例和嵌入式控制系统设计。本书内容丰富,体系先进,结构合理,理论与实践相结合,尤其注重工程应用技术的讲解。
本书可作为检测、自动控制等领域嵌入式系统开发工程技术人员的参考用书,也可作为高等院校自动化、机器人、自动检测、机电一体化、人工智能、电子与电气工程、计算机应用、信息工程、物联网等相关专业的本科、专科学生及研究生的教材。
封面
前折页
书名页
版权
前言
第1章 绪论
1.1 嵌入式系统
1.1.1 嵌入式系统概述
1.1.2 嵌入式系统和通用计算机系统的比较
1.1.3 嵌入式系统的特点
1.2 嵌入式系统的组成
1.3 嵌入式系统的软件
1.3.1 无操作系统的嵌入式软件
1.3.2 带操作系统的嵌入式软件
1.3.3 嵌入式操作系统的分类
1.3.4 嵌入式实时操作系统的功能
1.3.5 典型嵌入式操作系统
1.3.6 软件架构选择建议
1.4 嵌入式系统的分类
1.4.1 按应用对象的分类
1.4.2 按功能和性能的分类
1.4.3 按结构复杂度的分类
1.5 嵌入式系统的应用领域
1.6 嵌入式微处理器的分类
1.6.1 嵌入式微处理器
1.6.2 嵌入式微控制器
1.6.3 嵌入式DSP
1.6.4 嵌入式SoC
第2章 STM32 嵌入式微控制器与最小系统设计
2.1 STM32微控制器概述
2.1.1 STM32 微控制器产品线
2.1.2 STM32微控制器的命名规则
2.1.3 STM32微控制器的选型
2.2 STM32F1系列产品系统架构和STM32F103ZET6内部架构
2.2.1 STM32F1系列产品系统架构
2.2.2 STM32F103ZET6内部架构
2.3 STM32F103ZET6的存储器映像
2.3.1 STM32F103ZET6内置外设的地址范围
2.3.2 嵌入式SRAM
2.3.3 嵌入式Flash
2.4 STM32F103ZET6的时钟结构
2.5 STM32F103VET6的引脚
2.6 STM32F103VET6 最小系统设计
2.7 学习STM32的方法
第3章 嵌入式开发环境的搭建
3.1 Keil MDK5安装配置
3.1.1 Keil MDK简介
3.1.2 MDK下载
3.1.3 MDK安装
3.1.4 安装库文件
3.2 Keil MDK下新工程的创建
3.2.1 建立文件夹
3.2.2 打开KeilμVision
3.2.3 新建工程
3.3 J-Link驱动安装
3.3.1 J-Link简介
3.3.2 J-Link驱动安装
3.4 Keil MDK5调试方法
3.4.1 进入调试模式
3.4.2 调试界面介绍
3.4.3 变量查询功能
3.4.4 断点功能
3.4.5 结束调试模式
3.5 STM32F103开发板的选择
3.6 STM32仿真器的选择
第4章 STM32通用输入/输出接口及其应用
4.1 STM32通用输入/输出接口概述
4.2 STM32的GPIO功能
4.2.1 普通I/O功能
4.2.2 单独的位设置或位清除
4.2.3 外部中断/唤醒线
4.2.4 复用功能(AF)
4.2.5 软件重新映射I/O复用功能
4.2.6 GPIO锁定机制
4.2.7 输入配置
4.2.8 输出配置
4.2.9 复用功能配置
4.2.10 模拟输入配置
4.3 STM32的GPIO常用库函数
4.4 STM32的GPIO使用流程
4.4.1 普通GPIO配置
4.4.2 复用功能I/O配置
4.5 STM32的GPIO按键输入应用实例
4.5.1 按键输入硬件设计
4.5.2 按键输入软件设计
4.6 STM32的GPIO LED输出应用实例
4.6.1 LED输出硬件设计
4.6.2 LED输出软件设计
第5章 STM32中断系统与按键中断设计实例
5.1 中断的基本概念
5.1.1 中断的定义
5.1.2 中断的应用
5.1.3 中断源与中断屏蔽
5.1.4 中断处理过程
5.1.5 中断优先级与中断嵌套
5.2 STM32F103中断系统
5.2.1 嵌套向量中断控制器
5.2.2 STM32F103中断优先级
5.2.3 STM32F103中断向量表
5.2.4 STM32F103中断服务函数
5.3 STM32F103外部中断/事件控制器
5.3.1 STM32F103 EXTI内部结构
5.3.2 STM32F103 EXTI工作原理
5.3.3 STM32F103 EXTI主要特性
5.4 STM32F10x的中断系统库函数
5.5 STM32外部中断设计流程
5.5.1 NVIC设置
5.5.2 中断端口配置
5.5.3 中断处理
5.6 STM32的外部中断设计实例
5.6.1 STM32的外部中断硬件设计
5.6.2 STM32的外部中断软件设计
第6章 STM32定时器系统与PWM
6.1 STM32F103定时器概述
6.2 STM32基本定时器
6.2.1 基本定时器简介
6.2.2 基本定时器的主要功能
6.2.3 基本定时器的功能描述
6.3 STM32通用定时器
6.3.1 通用定时器简介
6.3.2 通用定时器的主要功能
6.3.3 通用定时器的功能描述
6.3.4 通用定时器的工作模式
6.4 STM32高级控制定时器
6.4.1 高级控制定时器简介
6.4.2 高级控制定时器的主要功能
6.4.3 高级控制定时器的结构
6.5 STM32定时器库函数
6.6 STM32定时器应用实例
6.6.1 STM32的通用定时器配置流程
6.6.2 STM32的定时器应用硬件设计
6.6.3 STM32的定时器应用软件设计
6.7 STM32 PWM输出应用实例
6.7.1 PWM输出硬件设计
6.7.2 PWM输出软件设计
6.8 看门狗定时器
6.8.1 看门狗应用介绍
6.8.2 独立看门狗
6.8.3 窗口看门狗
6.8.4 看门狗操作相关的库函数
6.8.5 独立看门狗程序设计
6.8.6 窗口看门狗程序设计
第7章 STM32 USART及其应用
7.1 STM32的USART工作原理
7.1.1 USART介绍
7.1.2 USART的主要功能
7.1.3 USART的功能描述
7.2 STM32的USART库函数
7.3 STM32的USART串行通信应用实例
7.3.1 STM32的USART基本配置流程
7.3.2 STM32的USART串行通信应用硬件设计
7.3.3 STM32的USART串行通信应用软件设计
第8章 STM32 SPI与铁电存储器接口应用实例
8.1 STM32的SPI通信原理
8.1.1 SPI概述
8.1.2 SPI互连
8.2 STM32F103的SPI工作原理
8.2.1 SPI的主要功能
8.2.2 SPI的内部结构
8.2.3 时钟信号的相位和极性
8.2.4 数据帧格式
8.2.5 配置SPI为主模式
8.3 STM32的SPI库函数
8.4 STM32的SPI串行总线应用实例
8.4.1 STM32的SPI配置流程
8.4.2 SPI与MB85RS16铁电存储器接口的硬件设计
8.4.3 SPI与MB85RS16铁电存储器接口的软件设计
第9章 STM32 I2C与日历时钟接口应用实例
9.1 STM32的I2C通信原理
9.1.1 I2C总线概述
9.1.2 I2C总线的数据传送
9.2 STM32F103的I2C接口
9.2.1 STM32F103的I2C主要功能
9.2.2 STM32F103的I2C内部结构
9.3 STM32F103的I2C库函数
9.4 STM32的I2C控制器应用实例
9.4.1 STM32的I2C配置流程
9.4.2 I2C与日历时钟PCF2129接口的硬件设计
9.4.3 I2C与日历时钟PCF2129接口的软件设计
第10章 STM32模-数转换器(ADC)及其应用
10.1 STM32F103ZET6集成的ADC模块
10.1.1 STM32的ADC的主要功能
10.1.2 STM32的ADC模块结构
10.1.3 STM32的ADC配置
10.1.4 STM32的ADC应用特征
10.2 STM32的ADC库函数
10.3 STM32的ADC应用实例
10.3.1 STM32的ADC配置流程
10.3.2 STM32的ADC应用硬件设计
10.3.3 STM32的ADC应用软件设计
第11章 STM32 DMA及其应用
11.1 STM32 DMA的基本概念
11.2 STM32 DMA的结构和主要功能
11.3 STM32 DMA的功能描述
11.3.1 DMA处理
11.3.2 仲裁器
11.3.3 DMA通道
11.3.4 DMA中断
11.4 STM32的DMA库函数
11.5 STM32的DMA应用实例
11.5.1 STM32的DMA配置流程
11.5.2 STM32的DMA应用硬件设计
11.5.3 STM32的DMA应用软件设计
第12章 STM32 CAN总线系统设计
12.1 CAN的特点
12.2 STM32的CAN总线概述
12.2.1 bxCAN的主要特点
12.2.2 CAN物理层特性
12.2.3 CAN的位时序
12.2.4 STM32的CAN控制器
12.2.5 STM32的CAN过滤器
12.3 STM32的bxCAN工作模式
12.3.1 初始化模式
12.3.2 正常模式
12.3.3 睡眠模式(低功耗)
12.4 STM32的bxCAN测试模式
12.4.1 静默模式
12.4.2 环回模式
12.5 STM32的bxCAN功能描述
12.5.1 CAN发送流程
12.5.2 CAN接收流程
12.5.3 STM32的CAN位时间特性
12.6 STM32的CAN总线操作
12.7 STM32的CAN通信应用实例
12.7.1 STM32的CAN通信应用硬件设计
12.7.2 STM32的CAN通信应用软件设计
第13章 人机接口和DGUS屏的应用开发
13.1 独立式键盘接口设计
13.1.1 键盘的特点及确认
13.1.2 独立式按键扩展实例
13.2 矩阵式键盘接口设计
13.2.1 矩阵式键盘工作原理
13.2.2 按键的识别方法
13.2.3 键盘的编码
13.3 LED显示器接口设计
13.3.1 LED显示器的结构
13.3.2 LED显示器的扫描方式
13.4 DGUS彩色液晶显示屏的开发
13.4.1 屏存储空间
13.4.2 硬件配置文件
13.4.3 DGUS组态软件安装
13.4.4 软件使用说明
13.4.5 工程下载
13.4.6 DGUS彩色液晶显示屏显示变量配置方法及其指令详解
第14章 旋转编码器的设计
14.1 旋转编码器的接口设计
14.1.1 旋转编码器的工作原理
14.1.2 旋转编码器的接口电路设计
14.1.3 旋转编码器的时序分析
14.2 呼吸机按键与旋转编码器程序结构
14.3 按键扫描与旋转编码器中断检测程序
14.3.1 KEY1与KEY5的按键扫描程序
14.3.2 KEY2与KEY3的中断检测程序
14.4 键值存取程序
14.4.1 环形FIFO键值缓冲区
14.4.2 键值存取程序
第15章 CAN通信转换器的设计
15.1 CAN总线收发器
15.1.1 PCA82C250/251CAN总线收发器
15.1.2 TJA1051 CAN总线收发器
15.2 CAN通信转换器概述
15.3 CAN通信转换器微控制器主电路的设计
15.4 CAN通信转换器UART驱动电路的设计
15.5 CAN通信转换器CAN总线隔离驱动电路的设计
15.6 CAN通信转换器USB接口电路的设计
15.7 CAN通信转换器的程序设计
第16章 电力网络仪表设计实例
16.1 PMM2000系列电力网络仪表概述
16.2 PMM2000系列电力网络仪表的硬件设计
16.2.1 主板的硬件电路设计
16.2.2 电压输入电路的硬件设计
16.2.3 电流输入电路的硬件设计
16.2.4 RS485通信电路的硬件设计
16.2.5 4~20mA模拟信号输出的硬件电路设计
16.3 周期和频率测量
16.4 STM32F103VBT6初始化程序
16.4.1 NVIC中断初始化程序
16.4.2 GPIO初始化程序
16.4.3 ADC初始化程序
16.4.4 DMA初始化程序
16.4.5 定时器初始化程序
16.5 PMM2000系列电力网络仪表的算法
16.6 LED数码管动态显示程序设计
16.6.1 LED数码管段码表
16.6.2 LED指示灯状态编码表
16.6.3 1ms系统滴答定时器中断服务程序
16.7 PMM2000系列电力网络仪表在数字化变电站中的应用
16.7.1 应用领域
16.7.2 iMeaCon数字化变电站后台计算机监控网络系统
第17章 嵌入式控制系统设计
17.1 嵌入式控制系统的结构
17.2 嵌入式控制系统软件概述
17.2.1 嵌入式控制系统应用软件的分层结构
17.2.2 嵌入式控制系统软件的设计策略
17.2.3 嵌入式控制系统软件的功能和性能指标
17.3 8通道模拟量输入智能测控模块(8AI)的设计
17.3.1 8通道模拟量输入智能测控模块的功能概述
17.3.2 智能测控模块微控制器主电路设计
17.3.3 8AI模拟量输入模块A/D采样电路设计
17.3.4 8AI模拟量输入模块切换电路设计
17.3.5 8AI模拟量输入模块电源电路设计
17.4 8通道热电偶输入智能测控模块(8TC)的设计
17.4.1 8通道热电偶输入智能测控模块的功能概述
17.4.2 8TC热电偶输入模块A/D采样电路设计
17.4.3 8TC热电偶输入模块通道切换电路设计
17.4.4 热电偶冷端补偿电路设计
17.5 4通道热电阻输入智能测控模块(4RTD)的设计
17.5.1 4通道热电阻输入智能测控模块的功能概述
17.5.2 4RTD热电阻输入模块A/D采样电路设计
17.5.3 4RTD热电阻输入模块通道切换电路设计
17.6 4通道模拟量输出智能测控模块(4AO)的设计
17.6.1 4通道模拟量输出智能测控模块的功能概述
17.6.2 4AO模拟量输出模块D-A转换电路设计
17.6.3 4AO模拟量输出模块V-I转换电路设计
17.7 8通道数字量输入智能测控模块(8DI)的设计
17.7.1 8通道数字量输入智能测控模块的功能概述
17.7.2 8DI数字量输入模块检测电路设计
17.8 8通道数字量输出智能测控模块(8DO)的设计
17.8.1 8通道数字量输出智能测控模块的功能概述
17.8.2 8DO数字量输出模块集电极开路输出电路设计
17.9 嵌入式控制系统的软件平台
17.9.1 软件平台的选择
17.9.2 μC/OS-Ⅱ内核调度基本原理
参考文献
后折页
封底
机械工业出版社 京icp备14043556号-1 (署)网出证(京)字第214号 Copyright (C) 2001 CmpBook. All Rights Reserved