描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787302653783丛书名: 计算机科学与技术丛书
本书系统讲述嵌入式系统开发应用实例:
STM32嵌入式微控制器最小系统设计;
HMI人机接口设计与应用实例;
DGUS彩色液晶显示屏的应用实例;
旋转编码器设计实例;
PWM输出与看门狗定时器应用实例;
USART与MODBUS通信协议应用实例;
SPI与铁电存储器接口应用实例;
I2C与日历时钟接口应用实例;
CAN通信转换器设计实例;
电力网络仪表设计实例;
µC/OS-II在STM32上的移植与应用实例;
RTC时钟与万年历应用实例;
新型DCS控制系统设计实例。
本书从科研、教学和工程实际应用出发,理论联系实际,全面系统地讲述了基于 STM32系列单片机的 嵌入式系统应用实例;以“新工科”教育理念为指导,以产教融合为突破口,面向产业需求,全面重构教材内 容,将产业界的最新技术引入教学和科研。全书共13章,主要内容包括STM32 嵌入式微控制器最小系统 设计、人机接口设计与应用实例、DGUS彩色液晶显示屏应用实例、旋转编码器设计实例、PWM 输出与看 门狗定时器应用实例、USART与 Modbus通信协议应用实例、SPI与铁电存储器接口应用实例、I2C 与日 历时钟接口应用实例、CAN 通信转换器设计实例、电力网络仪表设计实例、μC/OS-Ⅱ在 STM32上的移植 与应用实例、RTC与万年历应用实例和新型分布式控制系统设计实例。全书内容丰富,体系先进,结构合 理,理论与实践相结合,尤其注重工程应用技术。 本书可作为高等院校各类自动化、机器人、自动检测、机电一体化、人工智能、电子与电气工程、计算机 应用、信息工程、物联网等相关专业的本、专科学生及研究生的教学参考书,也适合从事 STM32嵌入式系 统开发的工程技术人员参考。
第1章STM32嵌入式微控制器最小系统设计
1.1STM32微控制器概述
1.1.1STM32微控制器产品介绍
1.1.2STM32系统性能分析
1.1.3STM32微控制器的命名规则
1.1.4STM32微控制器内部资源
1.1.5STM32微控制器的选型
1.2STM32F1系列产品系统构架和STM32F103ZET6内部架构
1.2.1STM32F1系列产品系统架构
1.2.2STM32F103ZET6内部架构
1.3STM32F103ZET6的存储器映像
1.3.1STM32F103ZET6内置外设的地址范围
1.3.2嵌入式SRAM
1.3.3嵌入式Flash
1.4STM32F103ZET6的时钟结构
1.5STM32F103VET6的引脚
1.6STM32F103VET6 最小系统设计
第2章人机接口设计与应用实例
2.1独立式键盘接口设计
2.1.1键盘的特点及按键确认
2.1.2独立式按键扩展实例
2.2矩阵式键盘接口设计
2.2.1矩阵式键盘工作原理
2.2.2按键的识别方法
2.2.3键盘的编码
2.3矩阵式键盘的接口实例
2.3.14×4矩阵式键盘的硬件设计
2.3.24×4矩阵式键盘的软件设计
2.4显示技术的发展及其特点
2.4.1显示技术的发展
2.4.2显示器件的主要参数
2.5LED显示器接口设计
2.5.1LED显示器的结构
2.5.2LED显示器的扫描方式
2.6触摸屏技术及其在工程中的应用
2.6.1触摸屏发展历程
2.6.2触摸屏的工作原理
2.6.3工业用触摸屏产品介绍
2.6.4触摸屏在工程中的应用
第3章DGUS彩色液晶显示屏应用实例
3.1屏存储空间
3.1.1数据变量空间
3.1.2字库(图标)空间
3.1.3图片空间
3.1.4寄存器
3.2硬件配置文件
3.3DGUS组态软件安装
3.4DGUS组态软件使用说明
3.4.1界面介绍
3.4.2背景图片制作方法
3.4.3图标制作方法及图标文件的生成
3.4.4新建一个工程并进行界面配置
3.4.5工程文件说明
3.5工程下载
3.6DGUS屏显示变量配置方法及其指令详解
3.6.1串口数据帧架构
3.6.2数据变量
3.6.3文本变量
3.6.4图标变量
3.6.5基本图形变量
3.7通过USB对DGUS屏进行调试
第4章旋转编码器设计实例
4.1旋转编码器的接口设计
4.1.1旋转编码器的工作原理
4.1.2旋转编码器的接口电路设计
4.1.3旋转编码器的时序分析
4.2呼吸机按键与旋转编码器程序结构
4.3按键扫描与旋转编码器中断检测程序
4.3.1KEY1与KEY5的按键扫描程序
4.3.2KEY2与KEY3的中断检测程序
4.4键值存取程序
4.4.1环形FIFO按键缓冲区
4.4.2键值存取程序相关函数
第5章PWM输出与看门狗定时器应用实例
5.1STM32F103定时器概述
5.2STM32通用定时器
5.2.1通用定时器简介
5.2.2通用定时器的主要功能
5.2.3通用定时器的功能描述
5.2.4通用定时器的工作模式
5.3STM32 PWM输出应用实例
5.3.1PWM输出硬件设计
5.3.2PWM输出软件设计
5.4看门狗定时器
5.4.1看门狗应用介绍
5.4.2独立看门狗
5.4.3窗口看门狗
5.4.4看门狗操作相关的库函数
5.4.5独立看门狗程序设计
5.4.6窗口看门狗程序设计
第6章USART与Modbus通信协议应用实例
6.1串行通信基础
6.1.1串行异步通信数据格式
6.1.2连接握手
6.1.3确认
6.1.4中断
6.1.5轮询
6.2STM32的USART工作原理
6.2.1USART介绍
6.2.2USART主要特性
6.2.3USART功能概述
6.2.4USART通信时序
6.2.5USART中断
6.2.6USART相关寄存器
6.3STM32的USART串行通信应用实例
6.3.1STM32的USART的基本配置流程
6.3.2STM32的USART串行通信应用硬件设计
6.3.3STM32的USART串行通信应用软件设计
6.4外部总线
6.4.1RS232C串行通信接口
6.4.2RS485串行通信接口
6.5Modbus通信协议
6.5.1概述
6.5.2两种传输模式
6.5.3Modbus消息帧
6.5.4错误检测方法
6.5.5Modbus的编程方法
6.6PMM2000电力网络仪表ModbusRTU通信协议
6.6.1串口初始化参数
6.6.2开关量输入
6.6.3继电器控制
6.6.4错误处理
6.6.5读取标准电力参数
第7章SPI与铁电存储器接口应用实例
7.1STM32的SPI通信原理
7.1.1SPI概述
7.1.2SPI互连
7.2STM32F103的SPI工作原理
7.2.1SPI主要特征
7.2.2SPI内部结构
7.2.3时钟信号的相位和极性
7.2.4数据帧格式
7.2.5配置SPI为主模式
7.3STM32的SPI与铁电存储器接口应用实例
7.3.1STM32的SPI配置流程
7.3.2SPI与铁电存储器接口的硬件设计
7.3.3SPI与铁电存储器接口的软件设计
第8章I2C与日历时钟接口应用实例
8.1STM32的I2C通信原理
8.1.1I2C控制器概述
8.1.2I2C总线的数据传输
8.2STM32F103的I2C接口
8.2.1STM32F103的I2C主要特性
8.2.2STM32F103的I2C内部结构
8.2.3STM32F103的模式选择
8.3STM32的I2C与日历时钟接口应用实例
8.3.1STM32的I2C配置流程
8.3.2I2C与日历时钟接口的硬件设计
8.3.3I2C与日历时钟接口的软件设计
第9章CAN通信转换器设计实例
9.1CAN的特点
9.2STM32的CAN总线概述
9.2.1bxCAN的主要特点
9.2.2CAN物理层特性
9.2.3STM32的CAN控制器
9.2.4STM32的CAN过滤器
9.3STM32的bxCAN工作模式
9.3.1初始化模式
9.3.2正常模式
9.4STM32的bxCAN功能描述
9.4.1CAN发送流程
9.4.2CAN接收流程
9.5CAN总线收发器
9.5.1PCA82C250/251 CAN总线收发器
9.5.2TJA1051 CAN总线收发器
9.6CAN通信转换器概述
9.7CAN通信转换器微控制器主电路的设计
9.8CAN通信转换器UART驱动电路的设计
9.9CAN通信转换器CAN总线隔离驱动电路的设计
9.10CAN通信转换器USB接口电路的设计
9.11CAN通信转换器的程序设计
第10章电力网络仪表设计实例
10.1PMM2000电力网络仪表概述
10.2PMM2000电力网络仪表的硬件设计
10.2.1主板的硬件电路设计
10.2.2电压输入电路的硬件设计
10.2.3电流输入电路的硬件设计
10.2.4RS485通信电路的硬件设计
10.2.54~20mA模拟信号输出的硬件电路设计
10.3周期和频率测量
10.4STM32F103VBT6初始化程序
10.4.1NVIC中断初始化程序
10.4.2GPIO初始化程序
10.4.3ADC初始化程序
10.4.4DMA初始化程序
10.4.5定时器初始化程序
10.5电力网络仪表的算法
10.6LED数码管动态显示程序设计
10.6.1LED数码管段码表
10.6.2LED指示灯状态编码表
10.6.31ms系统滴答定时器中断服务程序
10.7PMM2000电力网络仪表在数字化变电站中的应用
10.7.1应用领域
10.7.2iMeaCon数字化变电站后台计算机监控网络系统
第11章μC/OSⅡ在STM32上的移植与应用实例
11.1μC/OSⅡ介绍
11.2嵌入式控制系统的软件平台
11.2.1软件平台的选择
11.2.2μC/OSⅡ内核调度基本原理
11.3μC/OSⅡ的移植与应用
11.3.1μC/OSⅡ的移植
11.3.2μC/OSⅡ的应用
第12章RTC与万年历应用实例
12.1RTC
12.1.1RTC简介
12.1.2RTC主要特性
12.1.3RTC内部结构
12.1.4RTC复位过程
12.2备份寄存器(BKP)
12.2.1BKP简介
12.2.2BKP特性
12.2.3BKP入侵检测
12.3RTC的操作
12.3.1RTC的初始化
12.3.2RTC时间写入初始化
12.4万年历应用实例
第13章新型分布式控制系统设计实例
13.1新型DCS概述
13.1.1通信网络的要求
13.1.2通信网络的要求控制功能的要求
13.1.3系统可靠性的要求
13.1.4其他方面的要求
13.2现场控制站的组成
13.2.1两个控制站的DCS结构
13.2.2DCS测控板卡的类型
13.3新型DCS通信网络
13.3.1以太网实际连接网络
13.3.2双CAN通信网络
13.4新型DCS控制卡的硬件设计
13.4.1控制卡的硬件组成
13.4.2W5100网络接口芯片
13.4.3双机冗余电路的设计
13.4.4存储器扩展电路的设计
13.5新型DCS控制卡的软件设计
13.5.1控制卡软件的框架设计
13.5.2双机热备程序的设计
13.5.3CAN通信程序的设计
13.5.4以太网通信程序的设计
13.6控制算法的设计
13.6.1控制算法的解析与运行
13.6.2控制算法的存储与恢复
13.78通道模拟量输入板卡(8AI)的设计
13.7.18通道模拟量输入板卡的功能概述
13.7.28通道模拟量输入板卡的硬件组成
13.7.38通道模拟量输入板卡微控制器主电路设计
13.7.422位ΣΔ型A/D转换器ADS1213
13.7.58通道模拟量输入板卡测量与断线检测电路设计
13.7.68通道模拟量输入板卡信号调理与通道切换电路设计
13.7.78通道模拟量输入板卡程序设计
13.88通道热电偶输入板卡(8TC)的设计
13.8.18通道热电偶输入板卡的功能概述
13.8.28通道热电偶输入板卡的硬件组成
13.8.38通道热电偶输入板卡测量与断线检测电路设计
13.8.48通道热电偶输入板卡程序设计
13.98通道热电阻输入板卡(8RTD)的设计
13.9.18通道热电阻输入板卡的功能概述
13.9.28通道热电阻输入板卡的硬件组成
13.9.38通道热电阻输入板卡测量与断线检测电路设计
13.9.48通道热电阻输入板卡的程序设计
13.104通道模拟量输出板卡(4AO)的设计
13.10.14通道模拟量输出板卡的功能概述
13.10.24通道模拟量输出板卡的硬件组成
13.10.34通道模拟量输出板卡PWM输出与断线检测电路设计
13.10.44通道模拟量输出板卡自检电路设计
13.10.54通道模拟量板卡输出算法设计
13.10.64通道模拟量板卡程序设计
13.1116通道数字量输入板卡(16DI)的设计
13.11.116通道数字量输入板卡的功能概述
13.11.216通道数字量输入板卡的硬件组成
13.11.316通道数字量输入板卡信号预处理电路的设计
13.11.416通道数字量输入板卡信号检测电路设计
13.11.516通道数字量输入板卡程序设计
13.1216通道数字量输出板卡(16DO)的设计
13.12.116通道数字量输出板卡的功能概述
13.12.216通道数字量输出板卡的硬件组成
13.12.316通道数字量输出板卡开漏极输出电路设计
13.12.416通道数字量输出板卡输出自检电路设计
13.12.516通道数字量输出板卡外配电压检测电路设计
13.12.616通道数字量输出板卡的程序设计
13.138通道脉冲量输入板卡(8PI)的设计
13.13.18通道脉冲量输入板卡的功能概述
13.13.28通道脉冲量输入板卡的硬件组成
13.13.38通道脉冲量输入板卡的程序设计
13.14嵌入式控制系统可靠性与安全性技术
13.14.1可靠性技术的发展过程
13.14.2可靠性基本概念和术语
13.14.3可靠性设计的内容
13.14.4系统安全性
13.14.5软件可靠性
参考文献
书主要讲述STM32嵌入式系统应用实例。为了让读者能够快速地掌握STM32 嵌入式系统的核心技术,本书从STM32 嵌入式微控制器最小系统设计入手,以实战为目的,介绍了多个STM32 嵌入式系统应用实例,读者借鉴书中实例,可以容易地设计出满足自己项目要求的嵌入式系统,达到事半功倍的效果。书中应用实例涉及面广、内容翔实,均为编者多年教学与科研成果的总结。
本书讲述了很多新技术,如DGUS彩色液晶显示屏应用实例。DGUS彩色液晶显示屏通过DGUS开发软件,可以非常方便地显示汉字、数字、符号、图形、图片、曲线、仪表盘等,特别易于今后的修改,彻底改变了液晶显示器采用点阵显示的开发方式,节省了大量的人力物力。不同于一般的液晶显示器的开发方式,DGUS是一种全新的开发方式。微控制器通过UART串行通信接口发送显示的命令,每页显示的内容通过页切换即可改变。
另外,本书还介绍了旋转编码器设计实例、CAN通信转换器设计实例、电力网络仪表设计实例和新型分布式控制系统(DCS)设计实例。这些实例以STM32F103为核心,均有独立的架构,能够培养读者的系统设计能力和实践能力。
本书的数字资源中提供了书中实例的STM32项目工程,如4×4键盘扫描程序代码、DMT32240C035_06WN屏程序代码、PWM输出程序代码、独立看门狗程序代码、窗口看门狗程序代码、USART串行通信程序代码、MB85RS16操作程序代码、PCF2129操作程序代码、RS232CAN(STM32F103) 程序代码、RTC程序代码、DCS程序代码和FBDCS(ST)_8AI程序代码。一方面,这些STM32项目工程给读者一个完整的工程模板,让读者不再需要自建; 另一方面,读者参照这些项目工程实例可以快速地完成自己的项目。
DCS程序代码是基于第13章讲述的控制卡运行的,可以与FBDCS(ST)_8AI程序之间进行CAN通信,对于初次学习μC/OSⅡ的读者,可以很容易地在μC/OSⅡ操作系统上编写自己项目的任务,由此打开学习μC/OSⅡ操作系统的大门。同时,在μC/OSⅡ操作系统的平台上,还提供了μC/OSⅡ的多个任务程序、STM32 CAN通信程序、TCP以太网通信程序、基于W5100芯片的以太网通信程序、双机备份程序、PID控制算法程序、FSMC存储器扩展程序、对DCS主站下载的组态信息进行解析等程序。
PWM输出程序代码、独立看门狗程序代码、窗口看门狗程序代码、USART串行通信程序代码和RTC程序代码是在目前使用最广泛的正点原子STM32F103战舰开发板上调试通过的; μC/OSⅡ程序代码是在奋斗STM32开发板V5上调试通过的。读者也可以将上述程序代码移植到自己的STM32开发板上。
本书共13章。第1章对STM32嵌入式微控制器最小系统设计进行了概述,介绍了STM32F1系列产品系统构架和STM32F103ZET6内部结构、STM32F103ZET6的存储器映像、STM32F103ZET6的时钟结构、STM32F103VET6的引脚、STM32F103VET6最小系统设计; 第2章讲述了人机接口设计与应用实例,包括独立式键盘接口设计、矩阵式键盘接口设计、矩阵式键盘的接口实例、显示技术的发展及其特点、LED显示器接口设计和触摸屏技术; 第3章讲述了DGUS彩色液晶显示屏应用实例,包括屏存储空间、硬件配置文件、DGUS组态软件安装和使用说明、工程下载、DGUS屏显示变量配置方法及其指令详解和通过USB对DGUS屏进行调试; 第4章讲述了旋转编码器设计实例,包括旋转编码器的接口设计、呼吸机按键与旋转编码器程序结构、按键扫描与旋转编码器中断检测程序和键值存取程序; 第5章讲述了PWM输出与看门狗定时器应用实例,包括STM32F103定时器概述、STM32通用定时器、STM32 PWM输出应用实例和看门狗定时器; 第6章讲述了USART与Modbus通信协议应用实例,包括串行通信基础、STM32的USART工作原理、STM32的USART串行通信应用实例、外部总线、Modbus通信协议和PMM2000电力网络仪表ModbusRTU通信协议; 第7章讲述了SPI与铁电存储器接口应用实例,包括STM32的SPI通信原理、STM32F103的SPI工作原理和STM32的SPI与铁电存储器接口应用实例; 第8章讲述了I2C与日历时钟接口应用实例,包括STM32的I2C通信原理、STM32F103的I2C接口和STM32的I2C与日历时钟接口应用实例; 第9章讲述了CAN通信转换器设计实例,包括CAN的特点、STM32的CAN总线概述、STM32的bxCAN工作模式、STM32的bxCAN功能描述、CAN总线收发器、CAN通信转换器概述、CAN通信转换器微控制器主电路的设计、CAN通信转换器UART驱动电路的设计、CAN通信转换器CAN总线隔离驱动电路的设计、CAN通信转换器USB接口电路的设计和CAN通信转换器的程序设计; 第10章讲述了电力网络仪表设计实例,包括PMM2000电力网络仪表概述、PMM2000电力网络仪表的硬件设计、周期和频率测量、STM32F103VBT6初始化程序、电力网络仪表的算法、LED数码管动态显示程序设计和PMM2000电力网络仪表在数字化变电站中的应用; 第11章讲述了μC/OSⅡ在STM32上的移植与应用实例,包括μC/OSⅡ介绍、嵌入式控制系统的软件平台和μC/OSⅡ的移植与应用; 第12章讲述了RTC与万年历应用实例,包括RTC、备份寄存器(BKP)、RTC的操作和万年历应用实例; 第13章讲述了新型分布式控制系统设计实例,包括新型DCS概述、现场控制站的组成、新型DCS通信网络、新型DCS控制卡的硬件设计、新型DCS控制卡的软件设计、控制算法的设计、8通道模拟量输入板卡(8AI)的设计、8通道热电偶板卡(8TC)的设计、8通道热电阻板卡(8RTD)的设计、4通道模拟量输出板卡(4AO)的设计、16通道数字量输入板卡(16DI)的设计、16通道数字量输出板卡(16DO)的设计、8通道脉冲量量输入板卡(8PI)的设计和嵌入式控制系统可靠性与安全性技术。
本书结合编者30多年的科研和教学经验,遵循“循序渐进,理论与实践并重,共性与个性兼顾”的原则,将理论实践一体化的教学方式融入其中。实践案例由浅入深,层层递进,在帮助读者快速掌握某一外设功能的同时,有效融合其他外部设备。
在此对本书引用的参考文献的作者一并表示真诚的感谢。由于编者水平有限,加上时间仓促,书中不妥之处在所难免,敬请广大读者不吝指正。
编者2024年3月
张承慧 山东大学讲席教授、控制科学与工程学院院长,教育厅长江学者特聘教授 | 国家基金委创新研究群体带头人,IEEE Fellow
《Arm嵌入式系统案例实战——手把手教你掌握STM32F103微控制器项目开发》是《Arm嵌入式系统原理及应用——STM32F103微控制器架构、编程与开发》一书的姊妹篇,作者具有丰富的嵌入式科研与教学经验。本书讲述了STM32嵌入式微控制器最小系统设计和12个嵌入式系统的典型应用实例,满足了读者当前嵌入式系统科研和教学亟需。
方雷 美国匹兹堡大学教授,美国斯坦福大学博士
《Arm嵌入式系统案例实战——手把手教你掌握STM32F103微控制器项目开发》采用流行的STM32F103系列嵌入式微控制器讲述嵌入式系统应用实例,内容精炼、图文并茂、循序渐进、重点突出。全书以应用为目标,内容安排逻辑性强、层次分明,是一部能快速帮助读者应用STM32F103系列嵌入式微控制器开发自己工程项目的优秀图书。
佟为明 哈尔滨工业大学电气工程与自动化学院教授,龙江科技英才获得者
《Arm嵌入式系统案例实战——手把手教你掌握STM32F103微控制器项目开发》讲述了STM32F103微控制器在不同领域中的应用,给出了各种外设模块的硬件设计和软件设计实例。书中实例代码均在作者自己开发的硬件电路板和第三方开发板上调试成功,并通过TFTLCD或串口调试助手验证,可以很好地锻炼学习者的硬件理解能力和软件编程能力,起到举一反三的效果。
蒋攀峰 赛默飞世尔科技(中国)有限公司创新中心研发总监
《Arm嵌入式系统案例实战——手把手教你掌握STM32F103微控制器项目开发》采取项目引领、任务驱动的方式,强调“教—学—做”一体化,注重对读者工程实践能力的培养。对于STM32F103ZET6的典型外设模块,围绕应用讲述其设计精髓,并给出完整的工程应用代码。
李希志 青岛海信日立空调系统有限公司预研技术部变频技术所所长
《Arm嵌入式系统案例实战——手把手教你掌握STM32F103微控制器项目开发》配套提供完整的程序代码、电路文件,以及全方位、立体化的新形态教学资源,适合嵌入式系统的科研、教学与项目开发参考。
评论
还没有评论。