单片机综合性实验电路板的设计✳

2015-01-01 02:27彭建英彭光含曾志刚
机械工程与自动化 2015年5期
关键词:电路板时钟编程

彭建英,彭光含,曾志刚

(湖南文理学院,湖南 常德 415000)

0 引言

单片机实验电路板,无论对单片机初学人员还是开发人员都具有十分重要的意义,初学人员可以利用实验电路板逐渐了解单片机的设计原理与功能,开发人员可以进行编程实现工业控制。利用单片机实验电路板,能够让初学者迅速掌握单片机的应用技术特点与实际要求。学生及单片机爱好者可以根据自己的爱好兴趣,结合实验电路板的各功能模块,设计实现单片机作品,从而提高学生的动手能力和综合设计能力。

1 实验电路板设计原理

本实验板可分为多个子模块,包括单片机最小系统模块、键盘模块、A/D模块、D/A模块、DS1302时钟模块、测温模块、串口通信模块、电机模块、红外发送接收模块、LCD1602液晶模块、流水灯模块和蜂鸣器模块。实验电路板设计原理框图如图1所示。

图1 电路板设计原理框图

2 各硬件模块的设计

2.1 单片机最小系统模块

AT89C51是一种低功耗、高性能CMOS(Complementary Metal Oxide Semiconductor,互补金属氧化物半导体)的8位微控制器,具有4kB系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。

2.2 A/D模块

转换器芯片ADC0809适用于8路模拟信号的分时采集,片内有8路模拟选通开关以及相应的通道抵制锁存用译码电路,其转换时间为100μs左右,A/D转换后得到的数据应及时传送给单片机处理。数据传送的关键问题是如何确认A/D转换的完成,因为只有确认完成后才能进行传送,为此可采用下述3种方式,分别为定时方式、查询方式和中断方式。

2.3 D/A模块

D/A转换器品种繁多,如有权电阻DAC、变形权电阻DAC、T型电阻DAC、电容型DAC和权电流DAC等。DAC0832是采样频率为8位的D/A转换芯片,其集成电路内部有两极输入寄存器,使DAC0832芯片具备双缓冲、单缓冲和直通3种输入方式,适用于各种电路的需要(如要求多路D/A异步输入、同步转换等),所以该芯片的应用很广泛。本实验开发板中利用DAC0832可以实现各种波形的输出。

2.4 温控模块

温控模块采用目前广泛应用的数字温度传感器DS18B20,它采用1-wire总线接口的数字温度传感器,测试温度范围为-55℃~+125℃,精度可达0.067 5℃,最大转换时间为200ms。1-wire总线支持一主多从通信,所以支持该总线的器件在交互数据过程中需要完成器件寻址(ROM匹配),以确认是哪个从机接收数据,器件内部ROM包含了该器件的唯一ID,对一主一从结构,ROM匹配过程可以省略。采集的数据是数字信号,不需要经过ADC的转换[1-2]。该模块同时还可以实现温度的多点测控。

2.5 红外模块

红外线遥控信息码由AT89C51单片机的定时器1中断产生38kHz红外线方波信号,由P1.4引脚输出,经过三极管9013放大,由红外线发送管发送。若改变电阻R3的大小则可以改变发射距离[3]。

红外线接收处理采用通用的集成模块三管脚红外接收器,输出为检波整形过的方波信号。

2.6 串口通信模块

RS-232C是最早的串行通信接口的电气标准,该标准定义了数据终端(DTE)和数据通信设备(DCE)间按位串行传输的接口信息,合理安排了接口的电气信号和机械要求,在世界范围内得到了广泛的应用。串行通信接口可与PC机超级终端进行通信实验,也是程序下载时必需的,学生在进行调试时,可随时进行程序的下载。

2.7 时钟模块

DS1302是DALLAS公司推出的涓流充电时钟芯片,内含有一个实时时钟/日历和31字节静态RAM,通过简单的串行接口与单片机进行通信。实时时钟/日历电路提供秒、分、时、日、月、年的信息,每月的天数和闰年的天数可自动调整,时钟操作可通过AM/PM指示决定采用24h或12h格式。DS1302与单片机之间能简单地采用同步串行的方式进行通信,仅需用到RES复位、I/O数据线、SCLK串行时钟3个口线。对时钟、RAM的读/写数据以一个字节或多达31个字节的字符组方式进行,DS1302工作时功耗很低,保持数据和时钟信息时功率小于1mW[4]。

2.8 电机模块

通过对每相圈中电流的顺序切换来使电机作步进式旋转。驱动电路由脉冲信号来控制,所以调节脉冲信号的频率便可改变步进电机的转速。本次设计的步进电机采用直流+5V电压,每相电流为0.3A,电机线圈由四相组成。

3 实验开发板可以进行的实验项目

(1)温度控制器实验:利用DS18B20设计一个温度控制器,在液晶显示器上显示温度值,并对温度进行测试和设定,当检测温度达到温度上限时开风扇(即开启电动机),低于下限时关闭风扇并加热,LED上显示十进制温度值。

(2)实时时钟编程实验:可以在液晶显示屏上显示年、月、日、时、分、秒,可以对时间进行调整,24h实现多次定时功能。

(3)遥控发送和接收实验:遥控信息通过按键发送,接收信息可以通过小灯、蜂鸣器等演示。

(4)函数发生器实验:利用D/A设计一个函数发生器,并利用按键选择输出波形,能分别产生三角波、阶梯波(每阶梯1V)、正向锯齿波、负向锯齿波和方波。还可利用键盘改变其输出波形的幅值和频率。

(5)串行通信实验:能与PC机通信,在PC机的超级终端上显示中文字符或其他字符,能用PC机发命令控制单片机功能操作。

(6)音乐编程实验:能用蜂鸣器演奏自编歌曲。

(7)十字路口交通灯实验:按照时间控制原则,利用并行接口和定时器,采用时间中断方式设计一套十字路口的交通灯管理系统,可用流水灯模拟路口交通灯。

(8)步进电机实验:通过按键实现步进电机正转和反转控制及其速度的控制,同时实现步数的控制,可以通过按键实现速度的控制。

4 部分实验项目的仿真结果

4.1 温度控制器实验的仿真结果

温度控制器实验的仿真结果如图2所示。LCD1602液晶显示器显示了当前DS18B20采集的温度值。温度数据送单片机处理,由液晶LCD1602实时显示温度值为28°。

图2 温度控制器实验仿真结果图

4.2 实时时钟编程实验的仿真结果

实时时钟编程实验的仿真结果如图3所示,液晶显示器显示了时钟的年、月、日、时、分、秒。DS1302时钟芯片的数据能够由单片机处理,并由液晶LCD1602实时显示。同时,可通过按键进行相应调节。

图3 实时时钟编程实验仿真结果图

5 小结

本文以AT89C51单片机为核心,设计了一款单片机综合性实验电路板,主要设计了单片机综合实验电路板的原理图,并对各功能模块进行了硬件设计和介绍,列举了实验开发板能进行的实验项目,并结合PROTEUS和Keil软件对各功能模块进行了仿真,仿真结果较准确。

[1] 谢维成,杨加国.单片机原理与应用及C51程序设计[M].北京:清华大学出版社.,2009.

[2] 楼然苗.单片机课程设计指导[M].北京:北京航空航天大学出版社,2007.

[3] 张永枫.单片机应用实训教程[M].西安:西安电子科技大学出版社,2005.

[4] 郭天祥.51单片机C语言教程[M].北京:电子工业出版社,2010.

猜你喜欢
电路板时钟编程
别样的“时钟”
编程,是一种态度
元征X-431实测:奔驰发动机编程
古代的时钟
编程小能手
纺织机上诞生的编程
有趣的时钟
时钟会开“花”
废弃电路板拆解技术研究现状及展望
单片机实验电路板的安装与调试