《基于STM32的嵌入式系统原理与设计》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:卢有亮编著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2014
  • ISBN:9787111444169
  • 页数:239 页
图书介绍:本书内容包括了基于STM32的嵌入式系统设计的原理、硬件设计、软件开发及工程实践。在原理部分针对最关键的部分给出了较为详细的解析。在硬件设计部分设计分析了一套STM32开发板的详细电路。在软件编程部分不仅引领读者使用库函数编程实现对外设的编程,部分环节还使用寄存器方式实现,另外给出了双缓冲乒乓操作等高级编程方法,及利用uIP、FatFs等编程实现网络通信和文件系统。最后在工程实践部分给出了工程实例。本书的硬件和代码由作者设计及编程。

第1章 STM32基本原理 1

1.1 STM32性能和结构 1

1.1.1总体性能 1

1.1.2系统结构分析 2

1.1.3芯片封装和引脚概述 4

1.2 Cortex-M3处理器 5

1.2.1 Cortex-M3的定位和应用 5

1.2.2 Cortex-M3处理器结构 6

1.2.3 Cortex-M3寄存器 7

1.2.4堆栈 10

1.3 STM32储存地址映射 11

1.4引脚功能描述 15

1.5电源连接 16

1.6复位和时钟控制(RCC) 17

1.6.1复位 17

1.6.2时钟源 17

1.6.3时钟管理寄存器 20

1.7输入/输出端口 20

1.7.1常规输入/输出GPIO 20

1.7.2 GPIO复用 21

1.8模-数转换器和数-模转换器 22

1.8.1模-数转换器 22

1.8.2数-模转换器 23

1.9中断 24

1.9.1 STM32的中断通道和中断向量处理 25

1.9.2 STM32的外部中断 28

1.9.3 STM32的中断优先级分组 28

1.10 DMA 30

1.10.1 DMA解析 30

1.10.2 DMA通道和请求 31

1.11定时器 34

1.11.1系统滴答定时器(SysTick) 34

1.11.2 STM32常规定时器 39

1.12同步串行口SPI和I2C 40

1.12.1 SPI 40

1.12.2 I2C 43

1.13同步异步收发器 45

1.14灵活的FSMC 46

1.14.1 FSMC概述 46

1.14.2 FSMC控制液晶控制器 48

习题1 48

第2章 硬件设计 50

2.1 STM32主板设计 50

2.1.1 MCU及其周围电路设计 50

2.1.2 USB转串口电路设计 51

2.1.3 TTL转RS232电路设计 52

2.1.4网络端口电路 53

2.1.5 SPI FLASH端口电路 54

2.1.6 I2C端口电路 54

2.1.7 TF卡端口电路 55

2.1.8按键、LED显示电路和其他端口 55

2.2液晶屏与触摸屏控制板设计 56

2.2.1带触摸TFT液晶屏 56

2.2.2 TFT LCD屏的时序 58

2.2.3触摸屏 58

2.2.4 TFT LCD的背光LED 59

2.2.5 TFT LCD控制器RA8875 60

2.2.6 TF T液晶控制板具体设计 65

习题2 71

第3章 STM32软件开发 72

3.1 STM32软件开发环境 72

3.1.1 MDK Keil开发环境 73

3.1.2串口编程软件ISP 74

3.1.3 JLINK 76

3.2使用固件库开发我的第一个工程 81

3.2.1获得和理解固件库 81

3.2.2我的第一个工程 83

3.3操作GPIO和管理中断 99

3.3.1 GPIO寄存器 99

3.3.2 GPIO库函数 102

3.3.3嵌套向量中断控制器NVIC库函数 107

3.3.4外部中断/事件管理库函数 108

3.3.5带按键控制的流水灯实验 109

3.4串口通信和DMA编程 115

3.4.1串行异步通信USART库函数 115

3.4.2一个串口发送和中断接收例程的实现 116

3.4.3 DMA库函数 118

3.4.4使用DMA和双缓冲乒乓操作实现串口接收、发送 119

3.5 SPI与I2C编程 125

3.5.1 SPI库函数 125

3.5.2 SPI FLASH原理 126

3.5.3 SPI FLASH编程实验 130

3.5.4 TF卡编程 135

3.5.5 I2C编程及实例 145

3.6液晶屏及触摸屏编程 152

3.6.1 FSMC端口配置和简单图形显示 152

3.6.2触摸屏编程 161

3.6.3汉字输出 163

3.6.4图片显示和操作 173

3.7定时器编程 185

3.7.1 SysTick编程实验 185

3.7.2定时器库函数 187

3.7.3定时器编程实验 189

3.8 DAC和ADC编程 192

3.8.1 DAC库函数 192

3.8.2 DAC编程 193

3.8.3 ADC库函数 195

3.8.4 DMA方式ADC采集实验 197

3.9网络编程 201

3.9.1网络端口芯片ENC28J60驱动 201

3.9.2 uIP编程 207

3.9.3使用uIP实现Ping响应 210

3.9.4 AD采集和网络UDP传输 214

3.9.5 TCP接收和发送实验 219

习题3 220

第4章 工程项目实例 222

4.1需求分析 222

4.1.1需求 222

4.1.2分析 222

4.2工程设计 223

4.2.1整体设计 223

4.2.2从机硬件端口设计 223

4.2.3从机软件设计 225

4.3软件开发 225

4.3.1宏和变量定义 225

4.3.2主程序编程 226

设计题 228

附录 229

附录A 亮点STM32开发板资源 229

附录B 实验教学安排 237

参考文献 239