主页 详情

《STM32库开发实战指南》_刘火良,杨森编著_13336799_9787111426370

【书名】:《STM32库开发实战指南》
【作者】:刘火良,杨森编著
【出版社】:北京:机械工业出版社
【时间】:2013
【页数】:482
【ISBN】:9787111426370
【SS码】:13336799

最新查询

内容简介

前言

第一部分 库开发初级篇

第1章 为什么学习STM32

1.1嵌入式技术知识结构

1.2嵌入式工程师成长之路

1.3为什么学习STM32

1.4如何学习STM32

第2章 初识STM32固件库

2.1 STM32神器之库开发

2.1.1什么是STM32库

2.1.2为什么采用库开发

2.2 STM32结构及库层次关系

2.2.1 CMSIS标准

2.2.2库目录、文件简介

2.2.3 STM32固件库文件间的关系

2.2.4使用库帮助文档

第3章GPIO入门之流水灯

3.1安装MDK

3.2建立工程模板

3.2.1新建工程

3.2.2配置J-LINK硬件调试

3.3如何编译和下载程序

3.3.1如何编译程序

3.3.2如何下载程序

第4章 深入分析流水灯例程

4.1 STM32的GPIO

4.2 STM32的地址映射

4.2.1温故而知新stm32f10x.h文件

4.2.2外设基地址

4.2.3总线外设基地址

4.2.4寄存器组基地址

4.3 STM32固件库对寄存器的封装

4.4 STM32的时钟系统

4.4.1时钟树&时钟源

4.4.2高速外部时钟

4.4.3 HCLK、 FCLK、 PCLK1、PCL K2

4.5 LED具体代码分析

4.5.1实验描述及工程文件清单

4.5.2配置工程环境

4.5.3编写用户文件

4.5.4初始化结构体 ——GPIO-InitIypeDef类型

4.5.5初始化库函数——GPIO-Init()

4.5.6开启外设时钟

4.5.7控制I/O输出高、低电平

4.5.8 led.h文件

4.5.9 main文件

4.6 GPIO-Init()函数的实现

4.6.1规范的位操作方法

4.6.2 GPIO-Init()实现代码分析

4.6.3再论开发方式

4.7开发步骤总结

第5章 调试程序

5.1 MDK软件仿真调试

5.2使用J-LINK进行硬件调试

5.2.1硬件调试

5.2.2软件编译过程

53 MDK使用小技巧

第二部分 库开发中级篇

第6章GPIO再举例之按键实验

6.1 GPIO的8种工作模式

6.1.1 4种输入模式

6.1.2 4种输出模式

6.2按键实验分析

6.3按键代码分析

6.3.1实验描述及工程文件清单

6.3.2配置工程环境

6.3.3 main文件

6.3.4 GPIO初始化配置

6.3.5利用固件库的数据类型

6.3.6实现LED反转

6.3.7实验现象

第7章EXTI之按键中断实验

7.1 STM32的中断和异常

7.2 NVIC中断控制器

7.2.1 NVIC结构体成员

7.2.2抢占优先级和响应优先级

7.2.3 NVIC的优先级组

7.3 EXTI外部中断

7.4中断检测按键实验分析

7.4.1实验描述及工程文件清单

7.4.2配置工程环境

7.4.3 main文件

7.4.4配置外部中断

7.4.5 AFIO时钟

7.4.6 NVIC初始化配置

7.4.7 EXTI初始化配置

7.4.8编写中断服务函数

7.4.9实验现象

第8章 串口通信(USART)

8.1异步串口通信协议

8.2直通线和交叉线

8.3串口工作过程分析

8.3.1波特率控制

8.3.2收发控制

8.3.3数据存储转移

8.4串口通信实验分析

8.4.1实验描述及工程文件清单

8.4.2配置工程环境

8.4.3 main文件

8.4.4 USAR7.初始化配置

8.4.5 printf()函数重定向

8.4.6 USART1-printf()函数

8.4.7实验现象

第9章 库函数开发小结

9.1初始化

9.2数据输入输出

9.3状态位、标志位

9.3.1事件

9.3.2标志位的检查与清除

9.4外设函数分类

第10章DMA——为CPU减负

10.1 DMA功能简介

10.2 DMA工作分析

10.3 DMA实例之串口通信

10.3.1实验描述及工程文件清单

10.3.2配置工程环境

10.3.3 main文件

10.3.4 DMA初始化

10.3.5使用DMA中断

10.3.6实验现象

第11章ADC实验(DMA方式)

11.1 ADC简介

11.2 SIM32的ADC主要技术指标

11.3 ADC工作过程分析

11.4 ADC采集数据实例(采用DMA模式)

11.4.1实验描述及工程文件清单

11.4.2配置工程环境

11.4.3 main文件

11.4.4 ADC初始化

11.4.5计算电压值

11.4.6实验现象

第12章SysTick(系统滴答定时器)

12.1 SysTick——操作系统的心跳

12.2 SysTick工作分析

12.3使用SysTick精确延时实验分析

12.3.1实验描述及工程文件清单

12.3.2配置工程环境

12.3.3 main文件

12.3.4配置并启动SysTick

12.3.5定时时间的计算

12.3.6编写中断服务函数

12.3.7使用SysTick测量时间的功能

12.3.8实验现象

第13章STM32定时器

13.1定时器功能简介

13.2定时器工作分析

13.2.1基本定时器

13.2.2通用定时器

13.2.3高级定时器

13.3 PWM输出实例分析

13.3.1实验描述及工程文件清单

13.3.2配置工程环境

13.3.3 main文件

13.3.4定时器初始化

13.3.5实验现象

第14章I2C接口

14.1 I2C协议简介

14.1.1物理层

14.1.2协议层

14.2 STM32的I2C特性及架构

14.2.1 I2C接口特性

14.2.2 I2C架构

14.3 I2C接口读写EEPROM实验

14.3.1实验描述及工程文件清单

14.3.2配置工程环境

14.3.3 main文件

14.3.4 I2C接口初始化

14.3.5对EEPROM的读写操作

14.3.6使用I2C读写EEPROM流程总结

14.3.7实验现象

第15章SPI模块

15.1 SPI协议简介

15.1.1 SPI信号线

15.1.2 SPI模式

15.2 STM32的SPI特性及架构

15.2.1 STM32的SPI特性

15.2.2 STM32的SPI架构分析

15.3 SPI接口读取Flash实例分析

15.3.1实验描述及工程文件清单

15.3.2配置工程环境

15.3.3 main文件

15.3.4 SPI初始化

15.3.5控制Flash的命令

15.3.6读取厂商ID

15.3.7擦除Flash内容

15.3.8向Flash写入数据

15.3.9从Flash读取数据

15.3.10小结

15.3.11实验现象

第16章CAN控制器

16.1 CAN协议简介

16.1.1物理层

16.1.2 CAN的报文种类及结构

16.1.3同步

16.2 STM32的CAN特性及架构

16.2.1 CAN特性

16.2.2 CAN架构

16.3双CAN通信实验分析

16.3.1实验描述及工程文件清单

16.3.2配置工程环境

16.3.3 main文件

16.3.4配置CAN接口

16.3.5打包报文

16.3.6发送报文

16.3.7接收报文、编写中断服务函数

16.3.8实验小结

16.3.9实验现象

第三部分 库开发高级篇

第17章SDIO之SD卡驱动

17.1 SD协议简介

17.1.1卡的种类

17.1.2 SDIO基本架构

17.2 STM32的SDIO接口

17.2.1从SDIO的时钟说起

17.2.2 SDIO的命令格式

17.2.3数据传输格式

17.3 SD卡读写实验分析

17.3.1实验描述及工程文件清单

17.3.2配置工程环境

17.3.3 main文件

17.3.4 SDIO初始化

17.3.5卡的上电识别流程

17.3.6卡的初始化流程

17.3.7对SD卡进行读写

17.3.8原版官方驱动例程的bug

17.3.9实验现象

第18章 文件系统之FATFS R0.09

18.1什么是文件系统

18.2 FATFS文件系统简介

18.2.1 FATFS的目录结构

18.2.2 FATFS帮助文档

18.2.3 FATFS源码

18.3移植FATFS文件系统实验

18.3.1实验描述及工程文件清单

18.3.2配置工程环境

18.3.3为文件系统添加底层驱动

18.3.4添加简体中文和 长文件名支持

18.3.5 main文件

18.3.6实验现象

第19章MP3播放器

19.1 MP3文件探秘

19.1.1文件格式

19.1.2 MP3文件的原始数据

19.1.3 MP3文件格式

19.2 VS1003硬件解码芯片

19.2.1 VS1003芯片简介

19.2.2 TDA1308芯片

19.3 MP3播放器实验

19.3.1实验描述及工程文件清单

19.3.2配置工程环境

19.3.3 main文件

19.3.4控制VS1003进入准备状态

19.3.5播放MP3文件

19.3.6 STM32的堆栈

19.3.7实验现象

第20章USB大容量存储器实例

20.1 USB协议分析

20.1.1协议版本

20.1.2 USB电气特性

20.1.3 USB通信模型

20.1.4 USB枚举

20.2 STM32的USB控制器

20.3 USB读取SD卡——模拟U盘实验

20.3.1实验描述及工程文件清单

20.3.2配置工程环境

20.3.3 USB固件库说明

20.3.4 main文件

20.3.5基本配置

20.3.6 USB初始化

20.3.7中断服务函数

20.3.8 BOT和SCSI协议

20.3.9实验现象

第21章LCD触摸屏画板

21.1 LCD控制器简介

21.1.1 ILI9341控制器结构

21.1.2像素点的数据格式

21.1.3 ILI9341的通信时序

21.2用STM32驱动LCD

21.2.1 FSMC简介

21.2.2用FSMC模拟8080时序

21.3触摸屏感应原理

21.4 TSC2046触摸屏控制器

21.5 LCD触摸屏画板实验

21.5.1实验描述及工程文件清单

21.5.2配置工程环境

21.5.3 main文件

21.5.4初始化FSMC模式

21.5.5 FSMC模拟8080读写 参数、命令

21.5.6液晶屏画点函数

21.5.7触摸屏校正

21.5.8检测触点、画点

21.5.9实验现象

第22章 字库及BMP图片显示

22.1什么是字模

22.2制作字模

22.3 BMP图片格式

22.4显示中英文及BMP图片实验

22.4.1实验描述及工程文件清单

22.4.2配置工程环境

22.4.3 main文件

22.4.4显示汉字

22.4.5在SD卡上读取与保存BMP图像

22.4.6实验现象

第23章OV7670摄像头驱动

23.1摄像头的分类

23.1.1数字摄像头与模拟摄像头的区别

23.1.2 CCD与CMOS的区别

23.2 OV7670介绍

23.2.1 OV7670功能框架

23.2.2 OV7670管脚封装

23.3 SCCB总线

23.3.1 SCCB接口定义

23.3.2 SCCB时序描述

23.4摄像头模块

23.4.1摄像头模块硬件介绍

23.4.2 OV7670输出时序

23.4.3 FIFO时序

23.4.4摄像头的驱动原理

23.5摄像头驱动实验

23.5.1实验描述及工程文件清单

23.5.2配置工程环境

23.5.3 main文件

23.5.4 SCCB总线的软件实现

23.5.5初始化OV7670

23.5.6采集并显示图像

23.5.7实验现象

第24章 以太网及Lwl P协议栈移植

24.1互联网模型

24.2以太网

24.2.1 PHY层

24.2.2 MAC子层

24.2.3以太网控制器

24.3 MAC之上的网络层

24.3.1为什么在MAC之上还有分层

24.3.2 TCP/IP协议中各层次的功能

24.3.3 LwIP协议栈

24.4 ENC28J60+LwIP以太网实验

24.4.1实验描述及工程文件清单

24.4.2配置工程环境

24.4.3 main文件

24.4.4 LwIP对底层数据结构的封装

24.4.5初始化协议栈

24.4.6 LwIP对底层操作的封装

24.4.7轮询和计时

24.4.8 opt.h文件和debug

24.4.9 LwIP应用

24.4.10网页服务器

24.4.11实验现象

第25章Wi-Fi模块EMW3180驱动

25.1资料与工具下载

25.2 EMW3180简介

25.3 EMW3180驱动实验

25.3.1实验描述及工程文件清单

25.3.2配置工程环境

25.3.3 EMSP API函数

25.3.4 API函数一览

25.3.5 main文件

25.3.6 em380c hal.c文件

25.3.7实验现象

第四部分 库开发系统篇

第26章μC/OS-Ⅲ及其源代码介绍

26.1 μC/OS简介

26.1.1操作系统与裸机的区别

26.1.2 μC/OS实时操作系统

26.2 μC/OS-Ⅲ与μC/OS- Ⅱ的主要区别

26.3 μC/OS-Ⅲ源码

26.4 μOS-Ⅲ工程架构

第27章 移植μC/O S-Ⅲ到 STM32

27.1搭建μC/OS工程文件结构

27.2修改μC/OS代码

27.2.1修改os-cpu.h文件

27.2.2修改os-cpu-c.c

27.2.3修改os-cpu-a.asm文件

27.2.4修改cpu-a.asm文件

27.2.5修改startup-stm32f10x-hd.s文件

27.2.6修改stm32f10x-it.c文件

27.3编写用户文件

27.3.1编写includes.h文件

27.3.2编写BSP相关文件

27.3.3创建任务

27.4配置μC/OS-Ⅲ

第28章 运行多任务

28.1创建用户任务

28.2编写用户代码

28.3任务执行流程

参考文献


书查询(www.shuchaxun.com)本网页唯一编码:
1f84a456e39daa4ab8fb4d172087734c#67616aaf685c458a6c61001739010513#101949057#13336799.zip