北方工业大学电子信息工程学院 王梓烨 刘欲哲 周传宝
自70年代第一款单片问世以来单片机的功能已经基本趋于完善。单片机集成了越来越多的资源,内部存储器也越来越大。在做大型项目时也不用考虑扩展内存,开发起来也相对简单。意法半导体推出的基于ARM内核的STM32微控制器将当前微控制器性价比水平提升了一个新高度。本设计以STM32为核心设计的开发板具有以下几个有点:(1)成本低,STM32的价格相对都比较低,而且STM32强大的性能使得外部电路相对简单,其内部集成有定时器、SPI、IIC、USART、USB、CAN、A/D转换等。(2)有着完善的库函数,在系统软件使用时可以直接调用,减少了大量的工作量。(3)功耗低:STM32提供三种低功耗模式:分别是待机模式、停止模式和休眠模式。休眠模式时,只有CPU工作;停止模式时,允许以最小功耗来保证外部中断可以把STM32从停止模式唤醒;待机模式时,内部调压器被关闭,外部时钟也被关闭,使得功耗变得非常低。(4)外设精简:外设都是平时开发、实验经常用到的模块,容易上手且运用灵活。
图1 开发板的系统框图
本教学开发板使用的是ST公司的STM32F103RBT6单片机。本系统主要由按键、蜂鸣器、继电器、温度传感器DS18B20、A/D转换(内部自带)、LED灯、LCD12864显示、TFT彩屏显示。同时STM32内部集成其他模块也可以做其他实验,比如定时器、PWM波等。本教学开发板也支持多种烧写方式:USB一键下载、ISP程序下载、JTAG下载和仿真。其系统框图如图1所示。
本实验板使用的是STM32F103RBT6单片机,其与外设的引脚连接图如图2所示。
图2列出了部分外设的电路图,分别为按键、LED灯、LCD12864显示、JIAG下载、温度检测DS18B20和蜂鸣器。下面分别介绍各个外设模块:
(1)按键模块:按键模块是由四个轻触开关组成的,分别连接STM32的PC0、PC1、PC2、PC3。按键模块可以让我们掌握STM32在接收到按键信号的一些处理过程。
图2 STM32与部分外设的电路连接图
(2)LED灯:为了节约STM32 IO口的资源本设计只使用了两个LED灯,分别连接STM32的PC4、PC5。LED灯可以学习发光二极管的一些基础知识,同时举一反三学习跑马灯实验,了解STM32的系统开发过程。
(3)LCD12864显示:本设计使用的显示之一是LCD12864,没有使用数码管这个快要被淘汰的显示方式,LCD12864不仅可以显示字符、汉字可以显示图片,满足部分设计还是绰绰有余。
(4)温度检测:温度检测使用的是DS18B20,DS18B20为单总线数据传输方式,一根线就可以和STM32进行数据交换,节约了STM32宝贵的IO口资源。
(5)蜂鸣器:蜂鸣器可以学习一些报警设置,比如温度过高或过低就可以让蜂鸣器发声等。
(6)继电器:我们知道STM32的供电电压只有3.3V,部分外设的供电电压也只有5V,等我们需要对大电流或者高电压进行开关通断控制的时候,那么继电器就有它的发挥作用了,继电器可以轻松的应对这些问题。
(7)TFT彩屏显示:TFT彩屏显示使用的是ST7781,当我们需要做一些比较炫的显示时就可以使用TFT彩屏。TFT彩屏同样可以显示字符、汉字和图片,而且可以显示不同种颜色。
[1]陈世琼.单片机教学多功能实验开发板设计与实现[A].西南交通大学,2007.
[2]彭刚,秦志强.基于ARM Cortex-M3权威指南[M].北京:北京航空航天大学出版社,2009.
[3]张鑫,张岩.单片机实验教学改革与探索[J].计算机教育,2007,4:125-128.
[4]焦振宇.浅谈新形势下高校单片机教学的课程改革[J].高教论坛,2005,2.
[5]李宁.ARM开发工具ReaIIView MDK使用入门[M].北京航空航天大学出版社,2008.
[6]周立功,等.ARM嵌入式系统实验教程[M].北京航空航天大学出版社,2008.