本书讲述了STM32的学习与开发知识,读者从无到有地学习一款芯片,不仅能够掌握学习芯片知识的方法,而且能够对嵌入式模块的开发有所了解。本书主要介绍Cortex-M3系列STM32的工作原理及应用。本书共20章,包括:嵌入式的基本概念;ARM的体系结构;本书所用开发板硬件介绍;系统时钟及汇编;GPIO控制LED实现;UART实验;ADC的应用;定时器的介绍;中断实验;STM32的功能模块及常用协议介绍;μC/OS-II操作系统基础及应用;项目管理及开发流程介绍;KEIL集成开发环境介绍及建立STM32项目模板。本书面向立志于ARM嵌入式开发的初学者,以及从单片机向ARM处理器转型的工程技术人员。本书可作为高校电子相关专业教材,也可以作为想从事嵌入式开发领域的高校毕业生的自学教材,还可作为目前正在做8/16位单片机开发并且想转做ARM芯片开发的工程师的参考手册。
内容简介
前言
第1章 ARM和嵌入式系统介绍
1.1 ARM微处理器概述
1.2 嵌入式系统的概念
1.3 嵌入式操作系统
第2章 ARM体系结构
2.1 ARM体系结构的特点
2.2 各ARM体系结构版本
2.3 Cortex-M3简介
2.4 寄存器
2.5 操作模式和特权级别
2.6 内建的嵌套向量中断控制器
2.7 存储器映射
2.8 总线接口
2.9 存储器保护单元(MPU)
2.10 指令集
2.11 中断和异常
第3章 Cortex-M3控制器及外围硬件简介
3.1 STM32简介
3.2 STM32F103RBT6特性
3.3 订购信息
3.4 STM32系列内部结构方框图
3.5 外围硬件介绍
第4章 指令集和时钟
4.1 Thumb-2指令集介绍
4.2 指令格式
4.3 Cortex-M3时钟控制
第5章 GPIO实验
5.1 GPIO简介
5.2 GPIO功能特点
5.3 与GPIO相关的寄存器
5.4 原理图
5.5 GPIO配置过程
5.6 GPIO实验范例
5.7 作业
第6章 UART实验
6.1 UART简介
6.2 UART特性
6.3 串口如何工作
6.4 与UART相关寄存器
6.5 硬件连接
6.6 程序编程步骤
6.7 范例程序
6.8 作业
第7章 模/数转换
7.1 A/D简介
7.2 A/D的主要参数
7.3 STM32系列A/D转换特点
7.4 与A/D相关的寄存器
7.5 硬件连接
7.6 范例程序
第8章 定时器实验
8.1 通用定时器简介
8.2 STM32系列通用定时器特点
8.3 与基本定时器相关的寄存器
8.4 范例程序
8.5 作业
第9章 中断实验
9.1 中断简介
9.2 STM32中断特性
9.3 中断向量表
9.4 范例程序
9.5 作业
第10章 RTC实验
10.1 STM32系列RTC特点
10.2 与RTC相关的寄存器
10.3 范例程序
10.4 作业
第11章 IIC实验
11.1 STM32系列IIC特点
11.2 与IIC相关的寄存器
11.3 范例程序
第12章 看门狗实验
12.1 STM32系列IWDG特点
12.2 与IWDG相关的寄存器
12.3 范例程序
第13章 SPI实验
13.1 SPI简介
13.2 SPI特点
13.3 与SPI相关的寄存器
13.4 范例程序
第14章 CANBUS实验
14.1 CAN简介
14.2 bxCAN主要特点
14.3 CAN相关的寄存器
14.4 范例程序
第15章 协处理器DMA
15.1 DMA简介
15.2 DMA控制器的功能特点
15.3 DMA相关控制模块
第16章 USB
16.1 USB外设特点
16.2 USB硬件分析
第17章 μC/OS-II操作系统基础
17.1 为什么要用操作系统
17.2 初识μC/OS-II
17.3 μC/OS-II基础知识
17.4 μC/OS-II移植
17.5 μC/OS-II系统源码
17.6 μC/OS-II裁剪
第18章 μC/OS-II应用
18.1 任务管理
18.2 时间管理
18.3 任务间通信
18.4 软件定时器
18.5 内存管理
18.6 临界区处理宏
18.7 其他函数
第19章 项目实战
19.1 项目管理知识
19.2 C语言编程规范
19.3 ARM项目范例讲解
第20章 KEIL集成开发环境介绍及应用
参考文献

