内容发布更新时间 : 2024/12/29 0:02:40星期一 下面是文章的全部内容请认真阅读。
新型51单片机实验箱的设计
【摘要】单片机实验箱是单片机教学的重要组成部分,是培养学生实践能力的主要工具。本课题制作了一个兼容51系列与AVR系列的单片机实验箱,实验箱以STC89C516RD+单片机为主控芯片,通过USB接口完成实验箱上各个模块的仿真和烧写,实现了在线仿真和下载的功能。作为我校实验室自主产权的实验箱,大大节省了成本。
【关键词】51单片机;实验箱;Keil
1.引言
随着电子技术的飞速发展,单片机也随之有了很大的发展,各种新式的单片机层出不穷,并在人类生活的各个领域获得广泛的应用。单片机自问世以来,性能不断提高,功能不断增多,能满足很多应用场合的需要。同时,因其具有集成度高、功能强大、速度快、体积小、功耗低、使用方便、性能可靠且价格低廉等特点,使单片机在工业控制、数据采集和处理、家用电器等领域应用越来越广泛。
单片机实验箱已经成为单片机入门者不可或缺的一个工具,在大学生课堂教学和竞赛方面也起到了很大的作用。为此,我们设计并制作了一款新型51单片机实验箱,面向我校大学生单片机实验课程,给予学生一个实践平台。
2.系统结构
系统以STC89C516RD+单片机为控制核心,配备USB供电和外部电源供电2种供电方式,共分为发光二极管模块、按键模块、数码管模块、时钟模块、数模/模数转换模块、温度传感器模块等,共13个模块,每一个模块独立连线使用,图1所示是整个实验箱的原理图。
图1 实验箱原理图
3.系统硬件实现
(1)交通灯模块
使用芯片8255芯片来扩展I/O口,控制四路方向灯,实现交通灯的效果。
(2)独立二极管模块
使用STC89C516RD+的P1口,来控制8个独立的LED灯,可以实现流水灯的效果。
(3)数码管模块
数码管分成静态显示,和动态显示。静态显示模块中使用2个共阴的数码管,用单片机的P0口和P1口作为段选,接到数码管的a,b,c,d,e,f,g,dg上,P2.1,P2.0引脚控制2个数码管的位选。动态显示模块将所有数码管的8个显示笔划“a,b,c,d,e,f,g,dp”的同名端连在一起,通过P0口控制,另外为每个数码管的公共极COM为位选通控制电路,由单片机的P1口控制。
(4)按键模块
按键是比较常用的电路,在这里我们设计了独立按键电路和矩阵键盘电路,通过单片机的P1口控制8个独立按键,并将其工作状态通过发光二极管显示出来。为了节约单片机端口,还设计了矩阵键盘模块,通过单片机的P2口完成对16个按键组成的矩阵键盘的控制,并将结果通过液晶显示出来。
(5)LCD12864液晶显示模块
实验箱选择12864液晶模块,它是128* 64点阵液晶模块,适合小型显示装置,引脚分配图如表1所示。
表1 单片机与液晶的引脚分配图
单片机 液晶
P0 D7-D0
P2.1 PSB
P2.3 RES
P2.4 RS
P2.5 WR
P2.6 E
(6)EEPROM模块(AT24C02)
AT24C02是一个2K位串行CMOS EEPROM,内部含有256个8位字节。AT24C02有一个16字节页写缓冲器。该器件通过IC总线接口进行操作,有一个专门的写保护功能。通过单片机的P1.6脚控制AT24C02的SCL端,单片机的P1.7脚控制AT24C02的SDA端。
(7)数模转换模块(DAC0832)
DAC0832是8分辨率的D/A转换集成芯片,在DAC0832数模转换之后加上一个放大器,可提高带负载能力,输出结果可通过连接实验箱上的电机检测。
(8)模数转换模块(ADC0809)
选择ADC0809芯片,功能与DAC0832相反,一般用作信号采集,将模拟量转化为数字量,然后给处理器处理。
(9)时钟模块(DS1302)
DS1302是美国DALLAS公司推出的具有涓细电流充电能力的低功耗实时时钟电路。它可以对年、月、日、时、分、秒进行计时,且具有闰年补偿等多种功能。通过单片机的P3.4脚控制DS1302的DATA端,P3.5脚控制DS1302的RST端,P3.6脚控制DS1302的SCLK端。
(10)温度传感器模块(DS18B20)
DS18B20采用独特的一线接口,无需外部元件,可用数据总线供电,电压范围为3.0V至5.5V,无需备用电源,测量温度范围为-55℃至+125℃。只需要用单片机的P2.2口控制DS18B20的DATA口。
(11)红外发射/接收模块
红外发射(发光)器件是红外遥控装置中不可缺少的重要器件,也是一种发光二极管。在家用电器等红外遥控应用中,普遍采用红外LED作为光发射器件。控制电路非常简单,只需要用单片机的一个引脚控制发射电路,另一个引脚控制接收电路。
4.系统软件实现
整个系统的软件由C51语言编写,程序分为多个相对独立的子程序模块,各子程序分别进行设计和调试。学生可使用自带的测试程序,也可根据电路和所需实现的功能,自己编写相关的驱动程序。
5.调试仿真与结论
将实验箱上的串口通过串口-USB口转换线跟电脑的USB接口连接,然后通过KEIL软件将所编程序打开,编译,通过串口将程序加载到硬件电路板上进行调试、仿真和运行。最后将程序通过串口固化到ROM中,脱机运行,使用非常简便,可以很直观的进行在线调试。
参考文献
[1]马忠梅,等.单片机的C语言应用程序设计[M].北京:北京航空航天大学