当前位置首页 > 百科资料> 正文

嵌入式系统设计

2022-07-05 11:44:05 百科资料

《嵌入式系统设计(基于STM32F4)》是由徐灵飞,黄宇,贾国强所著。由电子工业出版社于2020年8月出版。本书主要以STM32F429微控制器为对象讲解嵌入式系统设计方法、实例。

  • 书名 嵌入式系统设计(基于STM32F4)
  • 作者 徐灵飞,黄宇,贾国强
  • 出版时间 2020年8月
  • 页数 344 页
  • 开本 16 开

简介

  本书主要以STM32F429微控制器为对象讲解嵌入式系统设计方法、实例。全书分为17章,主要对嵌入式系统,ARM Cortex-M体系架构,STM32F429微控制器内部构造及其常用的片上外设结构、应用实例、程序开发方法进行了讲解。书中对常用的应用进行了实例讲解,给出了清晰的系统应用设计思路,并明确了每个应用的设计步骤,提供了每个应用的程序源代码,使初学者在学习了相关基本知识后能够对具体的设计一看即懂。本书设计了适量习题,习题内容紧贴各章核心内容,涵盖基本概念及相关应用,能够起到巩固重要知识点的作用。本书适用于电子、通信、电气、测控、计算机、物联网等专业的在校生和嵌入式系统设计的爱好者。

目录

  第1章 嵌入式系统 1

  1.1 嵌入式系统概述 1

  1.1.1 嵌入式系统的定义 1

  1.1.2 嵌入式系统的特点 1

  1.1.3 嵌入式系统的应用 2

  1.2 嵌入式系统的体系 2

  1.2.1 硬件架构 3

  1.2.2 软件层次 3

  1.3 嵌入式硬件系统 6

  1.3.1 嵌入式处理器分类 6

  1.3.2 典型嵌入式处理器 7

  1.3.3 存储系统 9

  1.3.4 I/O接口 10

  1.3.5 人机接口 10

  1.3.6 电源及其他设备 10

  1.4 嵌入式操作系统 10

  1.4.1 嵌入式操作系统的发展 10

  1.4.2 嵌入式操作系统的分类 11

  1.4.3 嵌入式实时操作系统的功能 12

  1.4.4 常用的嵌入式操作系统 13

  1.5 嵌入式系统的设计 14

  1.5.1 嵌入式系统设计流程 14

  1.5.2 嵌入式系统开发环境搭建 15

  习题 16

  第2章 ARM Cortex-M体系架构 18

  2.1 ARM Cortex体系架构概述 18

  2.1.1 CISC和RISC 18

  2.1.2 ARM架构发展史 20

  2.1.3 ARM处理器的类型 20

  2.1.4 Cortex-M系列处理器 22

  2.2 Cortex-M4内核基础 23

  2.2.1 寄存器组 24

  2.2.2 堆栈操作 26

  2.2.3 特殊功能寄存器组 27

  2.2.4 操作模式 28

  2.3 存储器系统 30

  2.3.1 数据类型 30

  2.3.2 存储形式 30

  2.3.3 存储器映射 31

  2.3.4 位带区 32

  2.4 异常和中断 33

  2.4.1 向量表 34

  2.4.2 优先级 35

  2.4.3 响应过程 36

  2.4.4 复位 38

  习题 39

  第3章 STM32F429微控制器 40

  3.1 STM32系列微控制器 40

  3.1.1 STM32系列微控制器概述 40

  3.1.2 芯片命名规则 41

  3.1.3 开发工具 41

  3.1.4 STM32标准函数库介绍 46

  3.2 STM32F429微控制器结构 51

  3.2.1 芯片资源 51

  3.2.2 芯片内部结构 52

  3.2.3 芯片引脚和功能 55

  3.2.4 电源系统 57

  3.2.5 复位系统 60

  3.3 STM32F4系列微控制器存储器映射和寄存器 61

  3.3.1 存储器映射 61

  3.3.2 自举配置 63

  3.3.3 寄存器映射 63

  习题 67

  第4章 启动文件和SysTick 69

  4.1 启动文件 69

  4.1.1 启动文件概述 69

  4.1.2 启动步骤 69

  4.2 启动文件代码讲解 70

  4.3 SysTick 75

  4.3.1 SysTick概述 75

  4.3.2 SysTick的库函数 76

  4.3.3 应用实例 78

  习题 79

  第5章 GPIO 80

  5.1 GPIO结构原理 80

  5.1.1 GPIO功能描述 80

  5.1.2 GPIO输入配置 81

  5.1.3 GPIO输出配置 82

  5.1.4 GPIO复用功能配置 84

  5.1.5 GPIO模拟功能配置 85

  5.2 GPIO相关寄存器 86

  5.2.1 模式寄存器 86

  5.2.2 输出类型寄存器 86

  5.2.3 输出速度寄存器 87

  5.2.4 上拉/下拉寄存器 87

  5.2.5 输入数据寄存器 88

  5.2.6 输出数据寄存器 88

  5.2.7 置位/复位寄存器 89

  5.2.8 配置锁存寄存器 90

  5.2.9 复用功能寄存器 90

  5.3 GPIO典型应用步骤及常用库函数 92

  5.3.1 GPIO典型应用步骤 92

  5.3.2 常用库函数 93

  5.4 应用实例 97

  5.4.1 GPIO输出应用实例 97

  5.4.2 GPIO输入应用实例 99

  5.4.3 GPIO复用应用实例 101

  5.4.4 矩阵按键应用 102

  习题 106

  第6章 NVIC 108

  6.1 NVIC的中断类型及中断管理方法 108

  6.1.1 中断类型 108

  6.1.2 中断管理方法 109

  6.2 常用库函数 110

  6.3 应用实例 112

  习题 113

  第7章 EXTI 114

  7.1 EXTI概述 114

  7.1.1 EXTI结构 114

  7.1.2 GPIO相关EXTI线 116

  7.2 EXTI典型应用步骤及常用库函数 116

  7.2.1 EXTI典型应用步骤 116

  7.2.2 常用库函数 117

  7.3 应用实例 119

  习题 121

  第8章 时钟系统 122

  8.1 时钟系统结构 122

  8.1.1 时钟源 124

  8.1.2 HSE时钟 124

  8.1.3 PLL配置 125

  8.1.4 LSE 时钟 126

  8.1.5 LSI时钟 126

  8.1.6 时钟输出功能 126

  8.2 PLL时钟系统配置步骤及常用库函数 126

  8.2.1 PLL时钟系统配置步骤 127

  8.2.2 常用库函数 127

  8.3 应用实例 130

  习题 132

  第9章 定时器系统 133

  9.1 定时器系统概述 133

  9.1.1 定时器结构 134

  9.1.2 时钟源 134

  9.2 基本定时功能 137

  9.2.1 时基单元 137

  9.2.2 计数模式 138

  9.3 捕抓/比较功能 141

  9.3.1 输入捕抓/比较输出通道 141

  9.3.2 输入捕抓模式 143

  9.3.3 输出模式 144

  9.3.4 编码器接口模式 147

  9.4 定时器典型应用步骤及常用库函数 150

  9.4.1 基本定时功能应用步骤 150

  9.4.2 输入捕抓模式应用步骤 150

  9.4.3 PWM输出应用步骤 152

  9.4.4 编码器接口应用步骤 153

  9.4.5 常用库函数 155

  9.5 应用实例 159

  9.5.1 定时器控制实现灯闪烁 159

  9.5.2 直流电机调速控制 161

  9.5.3 测量外部输入脉冲频率 164

  9.5.4 测量电机转速和方向 167

  习题 170

  第10章 DMA控制器 171

  10.1 DMA控制器概述 171

  10.1.1 DMA控制器主要特性 171

  10.1.2 DMA控制器结构 172

  10.2 DMA控制器功能 173

  10.2.1 DMA事务 173

  10.2.2 数据流 174

  10.2.3 通道 174

  10.2.4 仲裁 175

  10.2.5 循环模式 176

  10.2.6 单次和突发模式 176

  10.2.7 FIFO 176

  10.2.8 DMA中断 177

  10.2.9 DMA数据流配置过程 177

  10.3 DMA典型应用步骤及常用库函数 178

  10.3.1 DMA典型应用步骤 178

  10.3.2 常用库函数 179

  10.4 应用实例 181

  习题 183

  第11章 通用同步异步收发器(USART) 184

  11.1 通信概述 184

  11.1.1 并行通信和串行通信 184

  11.1.2 单工通信、半双工通信、全双工通信 185

  11.1.3 同步通信和异步通信 185

  11.1.4 RS-232 186

  11.2 STM32F429微控制器的USART结构 188

  11.2.1 USART概述 188

  11.2.2 波特率设置 192

  11.2.3 USART中断 193

  11.2.4 DMA控制 193

  11.3 USART典型应用步骤及常用库函数 194

  11.3.1 USART典型应用步骤 194

  11.3.2 常用库函数 194

  11.4 应用实例 197

  11.4.1 通过串口向计算机传输100个字节 197

  11.4.2 串口与计算机回显功能实现 199

  11.4.3 利用DMA通过串口向计算机传输1000个字节 202

  习题 204

  第12章 模数转换器(ADC) 205

  12.1 ADC概述 205

  12.1.1 A/D转换过程 205

  12.1.2 ADC原理 206

  12.2 STM32F429微控制器的ADC结构 208

  12.3 STM32F429微控制器的ADC功能 212

  12.3.1 ADC使能和启动 212

  12.3.2 时钟配置 213

  12.3.3 转换模式 213

  12.3.4 DMA控制 214

  12.4 ADC典型应用步骤及常用库函数 215

  12.4.1 ADC典型应用步骤 215

  12.4.2 常用库函数 216

  12.5 应用实例 220

  12.5.1 规则组单通道采集外部电压 220

  12.5.2 使用DMA和规则组通道实现多路模拟信号采集 222

  习题 227

  第13章 数模转换器(DAC) 228

  13.1 DAC概述 228

  13.1.1 基本概念 228

  13.1.2 DAC原理 229

  13.2 STM32F429微控制器的DAC结构 230

  13.3 STM32F429微控制器的DAC功能 231

  13.4 DAC典型应用步骤及常用库函数 234

  13.4.1 DAC典型应用步骤 234

  13.4.2 常用库函数 235

  13.5 应用实例 236

  习题 239

  第14章 I2C控制器 240

  14.1 I2C协议 240

  14.1.1 I2C物理层 240

  14.1.2 I2C协议层 241

  14.2 软件模拟I2C协议程序分析 244

  14.2.1 I2C引脚配置 244

  14.2.2 软件模拟开始信号和结束信号 246

  14.2.3 软件模拟检测ACK信号 246

  14.2.4 软件模拟产生ACK信号和NACK信号 247

  14.2.5 软件模拟发送一个字节数据 247

  14.2.6 软件模拟接收一个字节数据 248

  14.2.7 软件模拟I2C完整写操作 248

  14.2.8 软件模拟I2C完整读操作 249

  14.3 模拟I2C总线协议读写AT24CXX系列EEPROM实验 250

  14.4 I2C控制器概述 254

  14.4.1 I2C控制器主要特性 254

  14.4.2 I2C控制器结构 254

  14.4.3 I2C控制器主模式 255

  14.4.4 I2C控制器从模式 256

  14.4.5 I2C控制器中断 257

  14.5 I2C典型应用步骤及常用库函数 258

  14.5.1 I2C典型应用步骤 258

  14.5.2 常用库函数 258

  14.6 应用实例 261

  14.6.1 I2C控制器主模式测试 261

  14.6.2 I2C控制器从模式测试 266

  习题 269

  第15章 SPI控制器 270

  15.1 SPI协议 270

  15.1.1 SPI数据传输 270

  15.1.2 SPI通信的时钟极性和时钟相位 271

  15.1.3 4种SPI模式 271

  15.2 SPI控制器概述 273

  15.2.1 SPI控制器主要特性 273

  15.2.2 SPI控制器结构 273

  15.2.3 SPI主机配置 274

  15.2.4 SPI从机配置 275

  15.2.5 主模式的全双工发送和接收过程 275

  15.2.6 SPI状态标志 276

  15.2.7 SPI中断 276

  15.3 SPI典型应用步骤及常用库函数 277

  15.3.1 SPI典型应用步骤 277

  15.3.2 常用库函数 277

  15.4 应用实例 279

  习题 289

  第16章 外部存储控制器 290

  16.1 FMC概述 290

  16.1.1 FMC主要特性 290

  16.1.2 FMC结构 291

  16.1.3 SDRAM简介 292

  16.1.4 SDRAM初始化 294

  16.2 FMC扩展SDRAM典型应用步骤及常用库函数 295

  16.2.1 FMC扩展SDRAM典型应用步骤 295

  16.2.2 常用库函数 296

  16.3 应用实例 299

  习题 302

  第17章 LCD控制器 303

  17.1 液晶显示技术及液晶显示器控制原理 303

  17.1.1 液晶显示技术 303

  17.1.2 液晶显示器控制原理 304

  17.2 LTDC控制器概述 307

  17.2.1 LTDC控制器主要特性 307

  17.2.2 LTDC控制器结构 308

  17.3 DMA2D控制器概述 310

  17.3.1 DMA2D控制器结构 310

  17.3.2 DMA2D控制器事务 311

  17.3.3 DMA2D控制器配置 312

  17.4 字符显示 312

  17.4.1 字符编码 312

  17.4.2 字模的生成 313

  17.5 LTDC典型应用步骤及常用库函数 317

  17.5.1 LTDC典型应用步骤 317

  17.5.2 常用库函数 318

  17.6 应用实例 323

  习题 332

  参考文献 334

声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:baisebaisebaise@yeah.net