首页 > 图书中心 > 从零开始设计你的智能小车

目录

目录

第1章嵌入式系统概述

1.1单片机概述

1.1.1单片机的定义

1.1.2单片机与PC的对比

1.2嵌入式系统

1.3ARM是什么

1.3.1ARM公司简介

1.3.2ARM架构、ARM内核与ARM单片机

1.3.3ARM CortexM3内核概述

第2章STM32F103单片机概述

2.1单片机的手册

2.2STM32F103单片机体系结构概述

2.2.1ARM CortexM3内核

2.2.2STM32F103单片机系统架构

2.3什么是CMSIS

2.4STM32固件库

基础篇

第3章嵌入式程序设计中的C语言

3.1整型

3.1.1整型的位宽

3.1.2访问硬件模块的寄存器

3.2volatile关键字

3.2.1C语言编译器的优化功能

3.2.2用volatile关键字避免优化

3.3结构体数据类型

3.3.1struct关键字

3.3.2访问单片机片上外设寄存器

3.4枚举数据类型

3.5static关键字

3.5.1静态全局变量

3.5.2静态局部变量

3.5.3静态函数

3.6宏定义

3.7条件编译与头文件

3.7.1条件编译指令

3.7.2头文件

3.8变量在哪里

3.8.1堆、栈和静态区

3.8.2单片机中变量的存储空间分配

第4章第一个STM32 项目

4.1开发环境与所需硬件

4.1.1搭建开发环境

4.1.2所需硬件

4.1.3所需工具

4.2创建第一个项目

4.3下载与调试程序

4.3.1安装仿真器驱动

4.3.2在Keil软件中配置仿真器

4.3.3编译下载程序

4.3.4Debug调试程序

第5章深入了解项目模板

5.1启动文件的作用

5.1.1定义栈和堆

5.1.2定义中断向量表

5.1.3定义复位中断子程序

5.2单片机的时钟初始化

5.3stm32f10x.h头文件的作用

5.4项目中的文件管理

5.4.1CMSIS固件库文件

5.4.2项目中的系统文件

5.4.3项目中的用户文件

第6章按键与小灯的控制——GPIO模块

6.1GPIO的输入/输出模式

6.1.1小灯与GPIO输出模式

6.1.2按键与GPIO输入模式

6.2GPIO的编程操作 

6.2.1GPIO寄存器

6.2.2GPIO库函数

6.2.3GPIO的按位操作——位带别名区

6.3应用实例——8段LED显示控制

6.3.1一位8段LED显示控制

6.3.2多位8段LED显示控制

6.4IO引脚的电气特性

6.4.1TTL电平

6.4.2CMOS电平

6.4.3IO引脚的电气特性

6.4.4IO引脚控制外设

6.5IO引脚的复用功能AFIO

6.5.1IO引脚的复用功能

6.5.2AFIO重映射功能的编程操作

6.5.3调试端口的重映射功能

第7章秒表的实现——基本定时器

7.1定时器原理概述

7.2基本定时器的工作原理

7.2.1基本定时器的结构

7.2.2基本定时器的时钟源

7.2.3基本定时器的计数模式

7.2.4定时时间的计算

7.2.5ARR寄存器的预装载功能

7.3基本定时器的编程操作

7.3.1TIM6、TIM7的相关寄存器

7.3.2基本定时器的相关库函数

7.4秒表的设计与实现

7.4.1秒表功能分析

7.4.2硬件选型

7.4.3硬件设计

7.4.4软件设计

第8章中断及中断管理器NVIC

8.1中断基本概念

8.1.1中断的定义

8.1.2中断向量表

8.1.3中断优先级与中断嵌套

8.2STM32单片机的中断管理

8.2.1中断源与中断向量表

8.2.2内核中开放/禁止中断

8.2.3中断控制器NVIC

8.3中断处理过程及相关接口库

8.3.1片上硬件中断处理过程

8.3.2中断处理库函数总结

8.4应用实例——中断方式实现秒表计时

8.4.1定时器的更新中断

8.4.2中断机制实现计时

第9章按键触发中断——EXTI模块

9.1外部中断/事件模块EXTI

9.1.1EXTI功能

9.1.2EXTI寄存器

9.1.3EXTI的相关库函数

9.1.4EXTI初始化步骤及中断响应过程

9.2设计实例——中断方式处理秒表按键

9.2.1分段计时功能

9.2.2硬件设计

9.2.3软件设计

提高篇

第10章让小车跑起来——PWM调速

10.1通用定时器的基本定时功能

10.1.1通用定时器概述

10.1.2通用定时器的时钟源

10.1.3通用定时器的计数模式

10.1.4通用定时器的从模式

10.1.5相关寄存器

10.1.6相关库函数

10.1.7设计实例——检测信号频率

10.2通用定时器的PWM输出模式

10.2.1PWM信号

10.2.2捕获比较通道

10.2.3PWM输出模式

10.2.4相关寄存器

10.2.5相关库函数

10.3电动机驱动芯片L298N

10.3.1直流电动机驱动模块L298N

10.3.2单片机控制L298N

10.4应用实例——小车设计

10.4.1小车的硬件设计

10.4.2小车的软件设计

实践篇

第11章避障小车——超声波测距

11.1超声波测距原理

11.1.1基本原理

11.1.2HCSRF05测距模块

11.1.3单片机控制超声波测距模块

11.2通用定时器的输入捕获功能

11.2.1输入捕获的基本原理

11.2.2相关寄存器

11.2.3相关库函数

11.2.4应用实例——捕获方式实现测距

11.3嘀嗒定时器实现定时测距

11.3.1嘀嗒定时器

11.3.2嘀嗒定时器的寄存器

11.3.3相关库函数

11.3.4嘀嗒定时器实现定时测距

第12章遥控小车——蓝牙遥控

12.1蓝牙技术

12.1.1发展历史

12.1.2基本特性

12.2HC05蓝牙模块

12.2.1功能概述

12.2.2工作原理

12.2.3AT命令

12.2.4PC串口配置蓝牙模块

12.3UART串口通信

12.3.1串口通信基本概念

12.3.2UART模块概述

12.3.3相关寄存器

12.3.4相关库函数

12.4应用实例

12.4.1单片机与PC之间的串口通信

12.4.2单片机与手机之间的蓝牙通信

第13章智能小车设计方案分析

13.1避障小车设计方案

13.1.1小车功能规划

13.1.2硬件选型

13.1.3硬件设计分析

13.1.4软件设计分析

13.2遥控小车设计方案

13.2.1小车功能规划

13.2.2硬件需求分析

13.2.3硬件设计分析

13.2.4软件设计分析

习题

参考文献

版权所有(C)2023 清华大学出版社有限公司 京ICP备10035462号 京公网安备11010802042911号

联系我们 | 网站地图 | 法律声明 | 友情链接 | 盗版举报 | 人才招聘