网站首页  软件下载  游戏下载  翻译软件  电子书下载  电影下载  电视剧下载  教程攻略

请输入您要查询的图书:

 

书名 嵌入式系统原理与应用
分类 教育考试-大中专教材-大学教材
作者 杨卫波、庄友谊、阮秀凯
出版社 清华大学出版社
下载
简介
内容推荐
全书以STM32F103系列微控制器为硬件核心,采用HAL库和嵌入式操作系统RT-Thread两条主线层次递进地介绍嵌入式系统原理与应用。全书共16章,第一部分内容包括嵌入式背景、寄存器模式开发,HAL库开发GPIO、中断系统、定时器和蜂鸣器、数码管和按键、DMA、通用异步通信、模数转换和数模转换、RTC时钟和电源控制及实践项目多功能电子钟。第二部分内容包括RTT基础、线程管理、中断管理、定时器以及内存管理、信号量、互斥量、事件集、邮箱、消息队列及实践项目步进电机控制。第三部分介绍嵌入式物联网实战。
本书的适用对象广泛,可作为高等学校各专业本科生电子科学技术、自动化、机电一体化、物联网等专业嵌入式课程的教材,也适用于对STM32微控制器及RTT操作系统感兴趣的广大读者阅读。
目录
目录


第1章ARM CortexM3嵌入式系统1
1.1嵌入式系统概述1
1.1.1嵌入式系统的定义和特点1
1.1.2嵌入式系统的应用领域1
1.2ARM与STM32概述2
1.2.1ARM简介2
1.2.2STM323
1.2.3微控制器软件接口标准6
1.3嵌入式系统的软件6
1.3.1不使用操作系统的嵌入式软件6
1.3.2使用操作系统的嵌入式软件7
1.4学习STM32的方法8
练习题10

第2章使用寄存器模式开发11
2.1STM32F1系统架构11
2.2STM32F1存储器系统12
2.2.1存储器组织12
2.2.2存储器映射13
2.3通用输入/输出14
2.3.1STM32F1通用输入/输出简介14
2.3.2GPIO的位结构16
2.3.3GPIO的工作模式17
2.3.4GPIO的寄存器20
2.4复位和时钟控制23
2.4.1RCC框图24
2.4.2RCC的主要作用25
2.4.3RCC_APB2ENR寄存器26
2.5寄存器编程模式点亮LED灯示例27
2.5.1硬件设计27
2.5.2工程文件分析27
2.5.3用户文件31
2.5.4配置下载调试工具33
2.5.5编译下载33
练习题34

第3章使用HAL库开发GPIO35
3.1STM32CubeMX概述35
3.2STM32 HAL库35
3.2.1HAL固件库简介35
3.2.2HAL库文件36
3.3GPIO的HAL库用法39
3.3.1GPIO寄存器结构体GPIO_TypeDef39
3.3.2GPIO初始化结构体GPIO_InitTypeDef40
3.3.3GPIO相关HAL库函数41
3.4STM32CubeMX应用示例44
3.4.1硬件设计44
3.4.2STM32CubeMX工程配置44
3.4.3main文件解析50
3.4.4编译下载53
练习题54

第4章STM32中断系统55
4.1中断的基本概念55
4.2STM32F103的中断系统56
4.2.1中断和异常向量56
4.2.2嵌套向量中断控制器59
4.2.3中断优先级59
4.2.4中断服务处理61
4.2.5NVIC相关HAL库函数63
4.3外部中断/事件控制器65
4.3.1外部中断/事件控制器简介65
4.3.2外部中断/事件线66
4.4外部中断控制示例67
4.4.1STM32CubeMX工程配置67
4.4.2中断配置与中断服务函数68
4.4.3用户代码70
4.4.4下载验证71
练习题71

第5章定时器与蜂鸣器72
5.1STM32F103定时器概述72
5.2基本定时器原理72
5.3定时器的HAL库用法75
5.3.1定时器寄存器结构体TIM_TypeDef75
5.3.2定时器句柄结构体TIM_HandleTypeDef76
5.3.3TIM相关HAL库函数77
5.4基本定时器应用示例78
5.4.1STM32CubeMX工程配置78
5.4.2定时器配置与中断服务函数79
5.4.3用户代码81
5.4.4下载验证82
5.5蜂鸣器发出不同频率声音应用示例82
5.5.1蜂鸣器简介82
5.5.2动态调整定时器输出频率83
5.6定时器PWM输出86
5.6.1PWM简介86
5.6.2简单音乐播放示例87
5.7系统嘀嗒定时器91
5.7.1系统嘀嗒定时器简介91
5.7.2延时函数HAL_Delay的实现原理93
练习题94

第6章串口通信与DMA95
6.1数据通信的基本概念95
6.1.1数据通信方式95
6.1.2串行通信简介95
6.2STM32F1的USART 96
6.2.1USART介绍96
6.2.2USART的工作原理97
6.2.3USART中断控制99
6.3串口的HAL库用法101
6.3.1串口寄存器结构体USART_TypeDef101
6.3.2串口句柄结构体UART_HandleTypeDef101
6.3.3USART相关HAL库函数102
6.4USART1接收不定长数据及回显示例104
6.4.1STM32CubeMX工程配置104
6.4.2串口配置及中断服务函数106
6.4.3重定义printf函数109
6.4.4用户代码109
6.4.5下载验证111
6.5直接存储器存取111
6.5.1直接存储器存取简介111
6.5.2STM32F103的DMA112
6.5.3DMA寄存器结构体DMA_Channel_TypeDef114
6.5.4DMA句柄结构体DMA_HandleTypeDef115
6.6串口DMA控制116
6.6.1串口DMA发送116
6.6.2串口DMA接收117
6.6.3USART DMA相关HAL库函数117
6.7USART1的DMA通信示例118
6.7.1STM32CubeMX工程配置118
6.7.2串口配置代码119
6.7.3用户代码121
6.7.4下载验证122
练习题123

第7章模数转换与数模转换124
7.1ADC简介124
7.2STM32F103的ADC125
7.2.1ADC模块结构125
7.2.2ADC的分组及数据对齐126
7.2.3ADC触发与启动127
7.2.4ADC时钟与转换时间127
7.2.5ADC的转换模式128
7.2.6ADC中断和DMA请求129
7.2.7ADC校准130
7.3ADC的HAL库用法130
7.3.1ADC寄存器结构体ADC_TypeDef130
7.3.2ADC句柄结构体ADC_HandleTypeDef130
7.3.3ADC相关HAL库函数131
7.4ADC应用示例133
7.4.1硬件设计133
7.4.2STM32CubeMX工程配置133
7.4.3ADC1配置代码134
7.4.4用户代码137
7.4.5下载验证138
7.5DAC简介138
7.6STM32F103的DAC工作原理139
7.6.1DAC模块结构139
7.6.2DAC数据格式与转换启动140
7.6.3DAC的触发选择141
7.6.4DAC的输出电压141
7.6.5DAC的DMA请求141
7.7DAC的HAL库用法141
7.7.1DAC寄存器结构体DAC_TypeDef141
7.7.2DAC规则通道结构体定义DAC_ChannelConfTypeDef142
7.7.3DAC相关HAL库函数143
7.8简易波形发生器示例144
7.8.1STM32CubeMX工程配置144
7.8.2DAC配置代码145
7.8.3用户代码148
7.8.4下载验证150
练习题151

第8章实时时钟与电源控制152
8.1实时时钟(RTC)152
8.1.1RTC简介152
8.1.2BCD码简介152
8.1.3STM32F1的RTC153
8.2备份寄存器154
8.3RTC的HAL库用法155
8.3.1RTC寄存器结构体RTC_TypeDef155
8.3.2RTC句柄结构体RTC_HandleTypeDef155
8.3.3RTC相关的结构体156
8.3.4RTC相关HAL库函数157
8.4实时时钟应用示例159
8.4.1硬件设计160
8.4.2STM32CubeMX工程配置160
8.4.3RTC配置代码162
8.4.4用户代码164
8.4.5下载验证165
8.5STM32F103电源控制166
8.5.1STM32F103的电源系统166
8.5.2低功耗模式167
8.6PWR的HAL库用法168
8.6.1PWR寄存器结构体PWR_TypeDef168
8.6.2WFI和WFE命令168
8.6.3进入低功耗模式库函数169
8.7电源控制应用示例170
8.7.1硬件设计170
8.7.2STM32CubeMX工程配置170
8.7.3用户代码171
8.7.4下载验证175
练习题176

第9章HAL库开发实例——电子钟系统177
9.1电子钟系统设计概况177
9.2LED数码管动态显示驱动程序设计178
9.2.1LED数码管及动态显示原理178
9.2.2数码管输出接口设计180
9.3通用按键驱动程序设计183
9.3.1按键基本介绍183
9.3.2按键输入接口设计184
9.4RTC驱动程序设计189
9.5简单的多任务时间片轮询框架191
9.6电子钟应用系统示例193
9.6.1STM32CubeMX工程配置193
9.6.2工程添加板级支持包193
9.6.3用户代码195
9.6.4下载验证198
练习题199

第10章嵌入式操作系统RTThread Nano200
10.1RTThread Nano简介200
10.2在MDK中移植RTThread Nano201
10.2.1移植RTThread Nano的步骤201
10.2.2编写第一个RTThread Nano应用205
10.2.3RTThread程序的运行方法206
10.3RTThread的启动流程210
10.3.1扩展main210
10.3.2进入main211
10.4RTThread的线程管理212
10.4.1线程与线程管理212
10.4.2组成线程的三要素212
10.4.3线程的重要属性214
10.4.4默认启动的线程216
10.4.5线程管理API函数217
10.4.6线程管理示例219
10.4.7线程管理应用小结222
10.5RTThread的时钟管理222
10.5.1RTThread的时钟节拍222
10.5.2RTThread的软件定时器223
10.5.3软件定时器管理API函数224
10.5.4软件定时器应用示例227
10.6RTThread内存管理229
10.6.1内存管理概述229
10.6.2内存堆管理之小内存管理230
10.6.3内存堆管理API函数232
10.6.4内存池管理233
10.6.5内存池管理API函数235
10.6.6内存堆与内存池管理应用示例237
10.7RTThread中断管理241
10.7.1RTThread中断工作机制241
10.7.2中断处理示例243
10.7.3全局中断开关243
10.7.4全局中断开关示例244
练习题245

第11章RTThread线程间同步与通信246
11.1线程间同步与通信简介246
11.2信号量247
11.2.1信号量的概念及工作机制247
11.2.2RTThread信号量控制块248
11.2.3信号量管理API函数249
11.2.4信号量应用场合252
11.2.5信号量应用示例253
11.3互斥量256
11.3.1互斥量的概念及工作机制256
11.3.2线程优先级反转与继承257
11.3.3死锁259
11.3.4RTThread互斥量控制块259
11.3.5互斥量管理API函数260
11.3.6互斥量应用场合262
11.3.7互斥量应用示例263
11.4事件集266
11.4.1事件集的概念及工作机制266
11.4.2RTThread事件集控制块267
11.4.3事件集管理API函数267
11.4.4事件集应用示例270
11.5邮箱273
11.5.1邮箱的概念及工作机制273
11.5.2RTThread邮箱控制块274
11.5.3邮箱管理API函数275
11.5.4邮箱的典型用法278
11.5.5邮箱应用示例279
11.6消息队列283
11.6.1消息队列的概念及工作机制283
11.6.2RTThread消息队列控制块284
11.6.3消息队列管理API函数284
11.6.4消息队列应用示例289
练习题292

第12章RTThread应用实践——步进电机控制294
12.1步进电机控制系统设计目标294
12.2步进电机28BYJ48294
12.2.1步进电机简介294
12.2.2步进电机驱动电路295
12.2.3步进电机的控制原理295
12.3步进电机28BYJ48控制软件设计296
12.3.1步进电机驱动设计296
12.3.2按键控制电机设计301
12.3.3数码管显示电机信息设计303
12.3.4串口输出电机信息设计305
12.3.5蜂鸣器鸣响设计306
12.3.6电机控制系统主函数307
12.4步进电机控制示例结果308
练习题309

第13章嵌入式物联网基础实战311
13.1TCP/IP协议简介311
13.2简单的TCP/IP协议栈312
13.3ENC28J60网卡移植313
13.3.1初始化ENC28J60314
13.3.2实现ENC28J60的操作函数317
13.3.3接收网络数据包318
13.3.4网卡移植测试321
13.4TCP/IP协议栈分层实验324
13.4.1ARP协议实验324
13.4.2IP&ICMP协议实验330
13.4.3UDP协议实验336
13.4.4TCP协议实验339
13.5嵌入式Web服务器344
13.5.1HTTP协议简介344
13.5.2Web服务器实验345
练习题347
随便看

 

霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。

 

Copyright © 2002-2024 101bt.net All Rights Reserved
更新时间:2025/3/29 18:01:46