STM32嵌入式微控制器快速上手-(第2版) 本书特色
本书介绍了意法半导体(stmicroelectronics,st)公司的32位基于arm cortex-m3内核的stm32单片机原理与实践。本书以培养学生的动手能力和增强学生的工程素养为目的,按照项目驱动的思路展开教学与实践学习,以自制的开发板上的程序为实例,将stm32单片机的外围引脚特性、内部结构原理、片上外设资源、开发设计方法和应用软件编程、μc/os-ⅱ操作系统原理及应用等知识传授给读者。
STM32嵌入式微控制器快速上手-(第2版) 目录
第1章嵌入式系统概述 1.1嵌入式系统简介 1.1.1嵌入式系统定义 1.1.2嵌入式系统特点 1.1.3嵌入式系统分类 1.1.4嵌入式系统发展 1.2arm体系结构及微处理器系列 1.2.1arm公司简介 1.2.2arm体系结构简介 1.3cortex-m系列处理器简介 1.4stm32系列微控制器简介 1.5stm32教学开发板 第2章cortex-m3体系结构 2.1cm3微处理器核结构 2.2处理器的工作模式及状态 2.3寄存器 2.4总线接口 2.5存储器的组织与映射 2.5.1存储器格式 2.5.2存储器层次结构 2.5.3cm3存储器组织 2.5.4stm32存储器映射 2.5.5位绑定操作 2.6指令集 2.6.1arm指令集 2.6.2thumb指令集 2.6.3thumb-2指令集 2.7流水线 2.8异常和中断 2.9存储器保护单元mpu 2.10stm32微控制器概述 2.10.1stm32命名 2.10.2stm32内部资源 第3章stm32*小系统 3.1电源电路 3.1.1供电方案 3.1.2电源管理器 3.1.3低功耗模式 3.2时钟电路 3.2.1hse时钟和hsi时钟 3.2.2pll 3.2.3lse时钟和lsi时钟 3.2.4系统时钟sysclk 3.2.5rcc寄存器 3.3复位电路 3.4stm32启动 3.5程序下载电路 3.6stm32*小系统 第4章stm32程序设计 4.1嵌入式软件层次结构 4.2cortex微控制器软件接口标准 4.3fwlib固件库 4.3.1stm32标准外设库 4.3.2固件库命名规则 4.3.3数据类型和结构 4.3.4固件库的应用 4.4嵌入式c程序特点 4.5开发环境简介 第5章gpio原理及应用 5.1gpio的硬件结构和功能 5.1.1gpio硬件结构 5.1.2复用功能 5.1.3gpio输入功能 5.1.4gpio输出功能 5.1.5gpio速度选择 5.1.6钳位功能 5.2gpio寄存器 5.3gpio库函数 5.4库函数和寄存器的关系 5.5应用实例
第6章exti原理及应用 6.1stm32中断通道 6.2stm32中断的过程 6.3nvic硬件结构及软件配置 6.3.1nvic硬件结构 6.3.2stm32中断优先级 6.3.3中断向量表 6.3.4nvic寄存器 6.3.5nvic库结构 6.4exti硬件结构及软件配置 6.4.1exti硬件结构 6.4.2中断及事件 6.4.3exti中断通道和中断源 6.4.4exti寄存器 6.4.5exti库函数 6.5应用实例 6.5.1按键中断 6.5.2中断嵌套案例1 6.5.3中断嵌套案例2 第7章usart原理及应用 7.1端口重映射 7.2usart功能和结构 7.2.1usart功能 7.2.2usart结构 7.3usart帧格式 7.4波特率设置 7.5硬件流控制 7.6usart中断请求 7.7usart寄存器 7.8usart库函数 7.9usart应用实例 7.9.1直接传送方式 7.9.2中断传送方式 7.9.3串口echo回应程序 7.9.4利用printf()的串口编程 第8章定时器原理及应用 8.1stm32定时器概述 8.2通用定时器timx功能 8.3通用定时器timx结构 8.3.1时钟源选择 8.3.2时基单元 8.3.3捕获和比较通道 8.3.4计数器模式 8.3.5定时时间的计算 8.3.6定时器中断 8.4通用定时器timx寄存器 8.5通用定时器timx库函数 8.6tim2应用实例 8.6.1秒表 8.6.2输出比较案例1 8.6.3输出比较案例2 8.6.4pwm输出 8.6.5pwm输入捕获 8.7rtc的功能及结构 8.7.1rtc的基本功能 8.7.2rtc的内部结构 8.8rtc控制寄存器 8.9备份寄存器 8.10电源控制寄存器 8.11rtc相关的rcc寄存器 8.12rtc应用实例 8.13系统时钟systick简介 8.14systick寄存器 8.14.1控制及状态寄存器(systickcsr) 8.14.2重载寄存器(systickrvr) 8.14.3当前值寄存器(systickcvr) 8.14.4校准值寄存器(systickcalvr) 8.15systick应用实例 第9章dma原理及应用 9.1dma简介 9.2dma的功能及结构 9.2.1dma的功能 9.2.2dma结构 9.3dma寄存器 9.4dma库函数 第10章adc原理及应用 10.1adc的功能及结构 10.2adc的工作模式 10.3数据对齐 10.4adc中断 10.5adc寄存器 10.6adc库函数 10.7应用实例 第11章μc/os-ii嵌入式操作系统基础 11.1操作系统的功能 11.2操作系统的基本概念 11.2.1进程和线程 11.2.2实时操作系统rtos 11.2.3其他概念 11.2.4应用程序在操作系统上的执行过程 11.3操作系统的分类 11.3.1单体结构 11.3.2层次结构 11.3.3微内核结构 11.4μc/os-ii简介 11.4.1μc/os-ii的主要特点 11.4.2μc/os-ii工作原理 11.4.3μc/os-ii的程序设计模式 11.5μc/os-ii移植 11.5.1移植条件 11.5.2移植步骤 11.5.3内核头文件(os_cpuh) 11.5.4与处理器相关的汇编代码(os_cpu_aasm) 11.5.5与cpu相关的c函数和钩子函数(os_cpu_cc) 第12章μc/os-ⅱ的内核机制 12.1μc/os-ii内核结构 12.1.1μc/os-ii的任务 12.1.2临界代码 12.1.3任务控制块 12.1.4就绪表 12.1.5任务的调度 12.1.6中断处理 12.1.7时钟节拍 12.1.8任务的初始化 12.1.9任务的启动 12.2μc/os-ii的任务管理 12.2.1创建任务 12.2.2删除任务 12.2.3请求删除任务 12.2.4改变任务优先级 12.2.5挂起任务 12.2.6恢复任务 12.2.7任务调度实例 12.3μc/os-ii的时间管理 12.3.1延时函数 12.3.2恢复延时任务 12.3.3系统时间 12.4任务间的通信与同步 12.4.1事件控制块 12.4.2信号量 12.4.3信号量实例 第13章嵌入式系统综合设计实例 13.1嵌入式系统开发过程 13.2自平衡小车基本功能 13.3硬件结构 13.3.1电气控制系统整体结构 13.3.2加速度计 13.3.3陀螺仪 13.4控制算法设计 13.4.1角度检测算法设计 13.4.2运动控制算法设计 附录a嵌入式系统常用缩写和关于端口读/写的缩写表示 附录bcortex-m3指令清单 附录c51单片机与stm32微控制器的比较 c.1硬件:寄存器 c.2硬件:存储器空间 c.3硬件:堆栈 c.4硬件:外设 c.5硬件:异常和中断 c.6软件:数据类型 c.7软件:浮点 c.8软件:中断服务程序 c.9软件:非对齐数据 c.10软件:故障异常 c.11软件:设备驱动程序和cmsis c.12软件:混用c语言和汇编程序 c.13其他比较 附录dstm32实验板原理图 参考文献
|