本书除了介绍基于ARM Cortex-M3的STM32F103xx微控制器单片机原理与应用开发外,还将引导你如何运用STM32F103xx微控制器开发板控制机器人运动与感知周边环境,并采用C语言对STM32F103xx进行编程,使机器人实现下述4个基本智能任务。
(1)安装传感器以探测周边环境;
(2)基于传感器信息做出决策;
(3)控制机器人运动(通过操作带动轮子旋转的电机);
(4)与用户交换信息;
通过这些任务的完成,使大家在无限的乐趣之中,不知不觉地掌握基于ARM Cortex-M3的STM32F103xx微控制器(32位单片机)原理与应用开发技术,以及C语言程序设计技术,轻松走上基于ARM Cortex-M3的STM32微控制器(32位单片机)嵌入式系统开发与设计之路。本书所用教学开发板如图1.2所示。由于STM32F103xx系列微控制器具有全兼容性,因此可以选用STM32F103VB、STM32F103VC、STM32F103VD、STM32F103VE,以获得更多存储空间和片上资源。
图1.2 STM32F103xx增强型微控制器单片机教学开发板
图1.3所示的是本书使用的机器人工程对象,它采用ARM Cortex-M3处理器作为大脑,通过教学(开发)板安装在机器人底盘上。本书将以此机器人作为典型工程对象,引导大家学习STM32F103xx微控制器单片机原理与应用开发,并完成一个简单机器人所需具备的四种基本能力,使机器人具有基本的智能。
图1.3 基于ARM Cortex-M3处理器的STM32机器人小车
本章首先通过以下步骤告诉你如何安装和使用基于ARM Cortex-M3的STM32微控制器单片机的编程开发环境,并用C语言开发一个简单的程序。具体任务包括:
● 安装开发编程软件;
● 连接教学(开发)板到供电电源或者电池;
● 连接教学(开发)板ISP接口到计算机,以便编程;
● 连接教学(开发)板串行接口到计算机,以便调试和交互;
● 运用C语言编写程序,编译生成可执行文件,然后下载到单片机上,观察执行结果;
● 完成后断开电源。