嵌入式系统设计与全案例实践 pdf下载
选择版本
内容简介
本篇主要提供嵌入式系统设计与全案例实践电子书的pdf版本下载,本电子书下载方式为百度网盘方式,点击以上按钮下单完成后即会通过邮件和网页的方式发货,有问题请联系邮箱ebook666@outlook.com

本书以基于ARM的STM32微控制器的基本概念、基本原理为主线,详细阐述了STM32的学习方法与应用系统开发技术。本书在内容组织和框架设计上具有两个鲜明的特点,即全案例和基于学习者学习需求。从学习者的角度,精心组织每个章节的内容体系,并给出各个外设模块的硬件设计和软件设计实例生的硬件理解能力和软件编程能力,培养举一反三的能力。
本,书共分17章,主要内容包括绪论、STM32嵌入式微控制器与最小系统设计、嵌入式开发环境的搭建、STM32通其代码均在开发板上调试通过,可通过TFT LCD或串口调试助手查看调试结果,可以很好地锻炼学用输入/输出接口及其应用、STM32中断系统与按键中断设计实例、STM32定时器系统与PWM、STM32 USART及其应用、STM32 SPI与铁电存储器接口应用实例、STM32 I2C与日历时钟接口应用实例、STM32模-数转换器(ADC)及其应用、STM32 DMA及其应用、STM32 CAN总线系统设计、人机接口和DGUS屏的应用开发、旋转编码器的设计、CAN通信转换器的设计、电力网络仪表设计实例和嵌入式控制系统设计。本书内容丰富,体系先进,结构合理,理论与实践相结合,尤其注重工程应用技术的讲解。
本书可作为检测、自动控制等领域嵌入式系统开发工程技术人员的参考用书,也可作为高等院校自动化、机器人、自动检测、机电一体化、人工智能、电子与电气工程、计算机应用、信息工程、物联网等相关专业的本科、专科学生及研究生的教材。
李正军
山东大学教授,嵌入式系统专家。1984年毕业于山东大学数学系、同年留山东大学数学系任教。先后担任“211工程”重点建设项目“现场总线技术实验室”负责人、控制科学与工程学院微机原理课程负责人,硕士研究生导师,并获山东大学优秀教师荣誉称号。中国电气工业协会设备网现场总线分会理事、中华人民共和国机械行业标准《低压电气通信规约》审稿人,全国电器设备网络通信接口标准化委员会委员。发表科研与教学论文50余篇,出版著作16部,并获机械工业出版社百佳作者和金牌作者荣誉称号。承担省部级与企业科研课题30余项。主要研究方向包括嵌入式系统、RISC-V开源技术、计算机控制、现场总线与工业以太网应用技术、高端医疗器械、电力网络监测仪表等。
前言
第1章 绪论1
1.1 嵌入式系统1
1.2 嵌入式系统的组成4
1.3 嵌入式系统的软件6
1.4 嵌入式系统的分类12
1.5 嵌入式系统的应用领域14
1.6 嵌入式微处理器的分类14
第2章 STM32嵌入式微控制器与最小系统设计16
2.1 STM32微控制器概述16
2.2 STM32F1系列产品系统架构和STM32F103ZET6内部架构23
2.3 STM32F103ZET6的存储器映像28
2.4 STM32F103ZET6的时钟结构32
2.5 STM32F103VET6的引脚35
2.6 STM32F103VET6 最小系统设计39
2.7 学习STM32的方法41
第3章 嵌入式开发环境的搭建43
3.1 Keil MDK5安装配置43
3.2 Keil MDK下新工程的创建49
3.3 J-Link驱动安装53
3.4 Keil MDK5调试方法55
3.5 STM32F103开发板的选择60
3.6 STM32仿真器的选择63
第4章 STM32通用输入/输出接口及其应用65
4.1 STM32通用输入/输出接口概述65
4.2 STM32的GPIO功能66
4.3 STM32的GPIO常用库函数69
4.4 STM32的GPIO使用流程70
4.5 STM32的GPIO按键输入应用实例71
4.6 STM32的GPIO LED输出应用实例74
第5章 STM32中断系统与按键中断设计实例77
5.1 中断的基本概念77
5.2 STM32F103中断系统80
5.3 STM32F103外部中断/事件控制器84
5.4 STM32F10x的中断系统库函数87
5.5 STM32外部中断设计流程88
5.6 STM32的外部中断设计实例91
第6章 STM32定时器系统与PWM97
6.1 STM32F103定时器概述97
6.2 STM32基本定时器98
6.3 STM32通用定时器101
6.4 STM32高级控制定时器105
6.5 STM32定时器库函数106
6.6 STM32定时器应用实例108
6.7 STM32 PWM输出应用实例112
6.8 看门狗定时器116
第7章 STM32 USART及其应用124
7.1 STM32的USART工作原理124
7.2 STM32的USART 库函数127
7.3 STM32的USART串行通信应用实例127
第8章 STM32 SPI与铁电存储器接口应用实例135
8.1 STM32的SPI通信原理135
8.2 STM32F103的SPI工作原理138
8.3 STM32的SPI库函数141
8.4 STM32的SPI串行总线应用实例142
第9章 STM32 I2C与日历时钟接口应用实例148
9.1 STM32的I2C通信原理148
9.2 STM32F103的I2C接口152
9.3 STM32F103的I2C库函数153
9.4 STM32的I2C控制器应用实例154
第10章 STM32模-数转换器(ADC)及其应用168
10.1 STM32F103ZET6集成的ADC模块168
10.2 STM32的ADC库函数175
10.3 STM32的ADC应用实例176
第11章 STM32 DMA及其应用181
11.1 STM32 DMA的基本概念181
11.2 STM32 DMA的结构和主要功能182
11.3 STM32 DMA的功能描述183
11.4 STM32的DMA库函数185
11.5 STM32的DMA应用实例185
第12章 STM32 CAN总线系统设计193
12.1 CAN的特点193
12.2 STM32的CAN总线概述193
12.3 STM32的bxCAN工作模式202
12.4 STM32的bxCAN测试模式203
12.5 STM32的bxCAN功能描述204
12.6 STM32的CAN总线操作206
12.7 STM32的CAN通信应用实例207
第13章 人机接口和DGUS屏的应用开发214
13.1 独立式键盘接口设计214
13.2 矩阵式键盘接口设计216
13.3 LED显示器接口设计217
13.4 DGUS彩色液晶显示屏的开发220
第14章 旋转编码器的设计242
14.1 旋转编码器的接口设计242
14.2 呼吸机按键与旋转编码器程序结构244
14.3 按键扫描与旋转编码器中断检测程序246
14.4 键值存取程序261
第15章 CAN通信转换器的设计269
15.1 CAN 总线收发器269
15.2 CAN通信转换器概述271
15.3 CAN通信转换器微控制器主电路的设计272
15.4 CAN通信转换器UART驱动电路的设计273
15.5 CAN通信转换器CAN总线隔离驱动电路的设计273
15.6 CAN通信转换器USB接口电路的设计274
15.7 CAN通信转换器的程序设计274
第16章 电力网络仪表设计实例287
16.1 PMM2000系列电力网络仪表概述287
16.2 PMM2000系列电力网络仪表的硬件设计288
16.3 周期和频率测量300
16.4 STM32F103VBT6初始化程序302
16.5 PMM2000系列电力网络仪表的算法313
16.6 LED数码管动态显示程序设计314
16.7 PMM2000系列电力网络仪表在数字化变电站中的应用318
第17章 嵌入式控制系统设计320
17.1 嵌入式控制系统的结构320
17.2 嵌入式控制系统软件概述322
17.3 8通道模拟量输入智能测控模块(8AI)的设计325
17.4 8通道热电偶输入智能测控模块(8TC)的设计330
17.5 4通道热电阻输入智能测控模块(4RTD)的设计337
17.6 4通道模拟量输出智能测控模块(4AO)的设计340
17.7 8通道数字量输入智能测控模块(8DI)的设计342
17.8 8通道数字量输出智能测控模块(8DO)的设计344
17.9 嵌入式控制系统的软件平台346
参考文献
前 言
自进入21世纪以来,嵌入式系统因具有体积小、功耗低、成本低、可靠、实时等优点,在生产生活中得到了广泛的应用。大到国防军事、工业控制,小到消费电子、办公自动化,嵌入式系统无处不在。同时,业界对嵌入式技术人才的需求量也日趋上升,具有一定开发经验的嵌入式工程师成为职场上的紧缺人才。
正是基于市场需求,ARM公司率先推出了一款基于ARMV7架构的32位ARM Cortex-M微控制器内核。Cortex-M系列内核支持两种运行模式,即线程模式(Thread Mode)与处理模式(Handler Mode)。这两种模式都有各自独立的堆栈,使内核更加支持实时操作系统,并且 Cortex-M系列内核支持Thumb-2指令集。因此,基于Cortex-M系列内核的微控制器的开发和应用可以在C语言环境中完成。
继Cortex-M系列内核之后,ST公司积极响应当今嵌入式产品市场的新要求和新挑战,推出了基于Cortex-M系列内核的STM32微控制器。它具有出色的微控制器内核和完善的系统结构设计,以及易于开发、性能高、兼容性好、功耗低、实时处理能力和数字信号处理能力强等优点,这使得STM32微控制器一上市就迅速占领了中低端微控制器市场。
本书不仅详细介绍了STM32的外设子系统及其应用程序设计,而且还介绍了旋转编码器的应用设计、DGUS彩色液晶显示屏的开发、CAN通信转换器的设计、电力网络仪表设计实例和大量的嵌入式控制系统设计应用案例。
本书共分17章。第1章对嵌入式系统进行了概述,介绍了嵌入式系统的组成、软件、分类、应用领域,以及嵌入式微处理器的分类;第2章介绍了STM32嵌入式微控制器与最小系统设计,包括STM32微控制器概述、STM32F1系列产品系统架构和STM32F103ZET6内部架构、STM32F103ZET6的存储器映像和时钟结构、STM32F103VET6的引脚和最小系统设计、学习STM32的方法;第3章介绍了嵌入式开发环境的搭建,包括Keil MDK5安装配置、Keil MDK下新工程的创建、J-Link驱动安装、Keil MDK5调试方法、STM32F103开发板的选择和STM32仿真器的选择;第4章介绍了STM32通用输入/输出接口及其应用,包括通用输入/输出接口概述、GPIO功能、GPIO常用库函数、GPIO使用流程、GPIO按键输入应用实例和GPIO LED输出应用实例;第5章介绍了STM32中断系统与按键中断设计实例,包括中断的基本概念、STM32F103 中断系统、STM32F103外部中断/事件控制器、STM32F10x的中断系统库函数、STM32外部中断设计流程和外部中断设计实例;第6章介绍了STM32定时器系统与PWM,包括STM32F103定时器概述、STM32基本定时器、STM32通用定时器、STM32高级控制定时器、STM32定时器库函数和STM32定时器应用实例、STM32 PWM输出应用实例和看门狗定时器;第7章介绍了STM32 USART及其应用,包括USART工作原理、USART 库函数和USART串行通信应用实例;第8章介绍了STM32 SPI与铁电存储器接口应用实例,包括STM32的SPI通信原理、STM32F103的SPI工作原理、STM32的SPI库函数和SPI串行总线应用实例;第9章介绍了STM32 I2C与日历时钟接口应用实例,包括STM32的I2C通信原理、STM32F103的I2C接口、STM32F103的I2C库函数和STM32的I2C控制器应用实例;第10章介绍了STM32模-数转换器(ADC)及其应用,包括STM32F103ZET6集成的ADC模块、STM32的ADC库函数和ADC应用实例;第11章介绍了STM32 DMA及其应用,包括STM32 DMA的基本概念、DMA的结构和主要功能、DMA的功能描述、DMA库函数和DMA应用实例;第12章介绍了STM32 CAN总线系统设计,包括CAN的特点、STM32的CAN总线概述、bxCAN工作模式、bxCAN测试模式、bxCAN功能描述、CAN总线操作和CAN通信应用实例;第13章介绍了人机接口和DGUS屏的应用开发,包括独立式键盘接口设计、矩阵式键盘接口设计、LED显示器接口设计和DGUS彩色液晶显示屏的开发;第14章介绍了旋转编码器的设计,包括旋转编码器的接口设计、呼吸机按键与旋转编码器程序结构、按键扫描与旋转编码器中断检测程序、键值存取程序;第15章介绍了CAN通信转换器的设计,包括CAN总线收发器、CAN通信转换器概述、CAN通信转换器微控制器主电路的设计、CAN通信转换器UART驱动电路的设计、CAN通信转换器CAN总线隔离驱动电路的设计、CAN通信转换器USB接口电路的设计和CAN通信转换器的程序设计;第16章介绍了电力网络仪表设计实例,包括PMM2000系列电力网络仪表概述、PMM2000系列电力网络仪表的硬件设计、周期和频率测量、STM32F103VBT6初始化程序、PMM2000系列电力网络仪表的算法、LED数码管动态显示程序设计和PMM2000系列电力网络仪表在数字化变电站中的应用;第17章介绍了嵌入式控制系统设计,包括嵌入式控制系统的结构、嵌入式控制系统软件概述、8通道模拟量输入智能测控模块(8AI)的设计、8通道热电偶输入智能测控模块(8TC)的设计、4通道热电阻输入智能测控模块(4RTD)的设计、4通道模拟量输出智能测控模块(4AO)的设计、8通道数字量输入智能测控模块(8DI)的设计、8通道数字量输出智能测控模块(8DO)的设计和嵌入式控制系统的软件平台。
本书结合编者多年的科研和教学经验,遵循循序渐进、理论与实践并重、共性与个性兼顾的原则,将理论与实践一体化的教学方式融入其中。实践案例由浅入深、层层递进,在帮助读者快速掌握某一外设功能的同时,有效融合其他外部设备,如按键、LED显示、USART串行通信、模-数转换器和各类传感器等设计嵌入式系统,体现学习的系统性。本书实例开发过程用到的是目前使用最广的正点原子STM32F103战舰开发板和编者开发的工程项目硬件系统,在此基础上开发各种功能,书中实例均进行了调试。读者也可以结合实际或者现有的开发板开展实验,均能获得实验结果。
对于本书所引用参考文献的作者,在此一并表示真诚的感谢。由于编者水平有限,加上时间仓促,书中错误和不妥之处在所难免,敬请广大读者不吝指正。
编 者