基于AVR单片机Mega16的电子时钟设计与应用
1 引言
数字钟能长期、连续、可靠、稳定地工作;同时还具有体积小,功耗低等特点,便于携带,使用方便。数字钟是采用数字电路实现对"时、分、秒"数字显示的计时装置,广泛应用于个人家庭、车站、码头、办公室等公共场所,已成为人们日常生活中不可缺少的必需品。由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。传统MCS51系列单片机的所有数据处理都基于一个累加器,因此累加器与程序存储器、数据存储器之间的数据转换就成了单片机的瓶颈;在AVR单片机中,寄存器由32个通用工作寄存器组成,并且任何一个寄存器都能充当累加器,从而有效避免累加器的瓶颈效应,提高系统性能。
AVR系列的单片机不仅具有良好的集成性能,而且都具备在线编程接口,其中的Mega系列还具备JTAG仿真和下载功能;含有片内看门狗电路、片内程序Flash、同步串行接口SPI;多数AVR单片机还内嵌了A/D转换器、EEPROM、模拟比较器、PWM定时计数器等多种功能;AVR单片机的I/O接口具有很强的驱动能力,灌人电流可直接驱动继电器、LED等元件,从而省去驱动电路,节约系统成本。
2整体设计思路
利用Mega16单片机内部时钟作为时间基准,通过软件编程控制可编程器件Mega16,实现秒、分、时、日、月、年的控制,最终通过LCD液晶显示屏显示结果。此外还可以实现时间调整、定时等多种实用功能。整个设计分硬件和软件两大部分。硬件部分采用Mega16单片机作为可编程芯片,1602字符液晶作为信号显示;软件部分利用C语言作为设计语言,对Mega16进行编程实现各种功能。
3硬件设计
硬件设计电路分解为Mega16单片机、晶体振荡器和802/1602字符液晶显示3个部分,其结构简单,经济实惠。Mega16单片机内部晶体振荡器的外接电路。由两个15 pF的电容C7和C8、晶体振荡器Y2(f=7.328 MHz)构成,其电路如图1所示。图中X1和X2分别接Mega16的12和13两个脉冲控制端,使得Mega16的内部脉冲电路为电子时钟和整个系统时钟提供脉冲。
图1所示给出了采用Mega16单片机外加电源及晶体振荡器构成最小单片机系统。配合单片机开发的设计、调试和下载,最终将时钟信息从PB0~PB7端口输出到字符液晶显示。
图2给出1602字符液品作为信号显示部分。字符液晶采用4位模式与单片机的PB端口相连。
4软件设计及调试
软件设计包括CodeVision AVR编辑软件和AVRStudio4调试、PonyProg2000下载软件等部分。利用ISP将生成程序timer.hex 下载到目标板。采用AVR MEDIA嵌入式单片机综合开发器和开发机。其C语言程序如下:
5 结语
单片机体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性好、开发较为容易。尤其是AVR单片机可以用高级语言编程,极容易地实现系统移植,并且加快了软件的开发过程。这里以Mage16单片机为核心,辅以必要的电路,采用高级C语言编程,没汁了一个简易的电子时钟,由4.5 V直流电源供电,通过LCD液晶能够准确显示时间。
评论