微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > MCU和DSP > 基于AT89S52的多功能电子万年历

基于AT89S52的多功能电子万年历

时间:05-06 来源:3721RD 点击:

显示模块的设计

本次设计采用的是LED动态显示方式,由于PROTEUS内没有LED,故用LCD代替LED进行仿真,与主控制芯片AT89C52相连。如图6所示。

系统的软件设计

主程序流程框图

Keil C与Proteus的联调与测试结果

Proteus7.6是目前最好的模拟单片机外围器件的工具,可以仿真51系列、AVR、PIC等常用的MCU及其外围电路(如LCD,RAM,ROM,键盘,马达,LED,AD/DA,部分SPI器件,部分IIC器件等),使用Proteus7.6和Keil C可以像使用仿真器一样调试程序。

Proteus的工作过程

运行Proteus的ISIS程序后,进入该仿真软件的主界面如图8所示。在工作前,要设置view菜单下的捕捉对齐和system下的颜色、图形界面大小等项目。通过工具栏中的p(从库中选择元件命令)命令,在pick devices窗口中选择电路所需的元件,放置元件并调整其相对位置、元件参数设置、元器件间连线、编写程序;在source菜单的Define code generation tools菜单命令下,选择程序编译的工具、路径、扩展名等项目;在source菜单的Add/remove source files命令下,加入单片机硬件电路的对应程序;通过debug菜单的相应命令仿真程序和电路的运行情况。

图8 Proteus的启动界面

Proteus软件所提供的调试手段

Proteus提供了比较丰富的测试信号用于电路的测试。这些测试信号包括模拟信号和数字信号。对于单片机硬件电路和软件的调试,Proteus提供了两种方法:一种是系统总体执行效果,一种是对软件的分步调试以看具体的执行情况。

软件和硬件结合的应用系统

软件和硬件的结合,就是一个单片机的应用系统了。在这一阶段,硬件电路的设计已经不是最为关键的了,而软件系统的设计、调试和运行才是实验的主要内容。因此可以以建议性的意见给出具体的硬件电路,并提出该电路所需要完成的具体工作,进行软件的设计和调试。
Keil C的介绍

keil C的运行界面

运行Keil C后的运行界面如图9所示。

图9 keil C的运行界面

Keil C与proteus联调测试

1、安装keil与proteus7.6;
2、打开proteus,画出相应电路。在proteus的tools菜单中选中use remote debug monitor;
3、在keil中编写MCU的程序;
4、进入keil的project菜单option for target '工程名'。在DEBUG选项中右栏上部的下拉菜选中Proteus VSM Monitor-51 Driver;
5、在keil中进行debug,同时在proteus中查看直观的结果,LCD显示;
6、把keil里的文件编译后输出hex的文件,在proteus中把单片机的加载程序文件换成keil中的hex文件,然后运行。

运行结果

结果显示

由图1整体电路框图可知,LED显示结果,如图10所示。

图10 结果显示
调节显示
日期和时间的修改由4个按键构成。键P0为调节;P2^0,模式切换键(向左移)向左移;键P2^1,加法按钮;键P2^2,减法按钮;键P2^3,立刻跳出调整模式按钮。
按动PO时秒闪烁进入调节系统,如图11所示。
按动P2^0向左移,对分进行调节,如图12所示。
按动P2^1向左移,对时进行加调节,如图13所示。

图14所示,是未调之前的显示,按动P2^2向左移,对年进行减调节,如图15所示
按动P2^3向左移,退出调节恢复如图16所示。


总结

本文设计了一个多功能的电子万年历。电路是由AT89S52单片机为控制核心,与时钟芯片DS1302、温度芯片DS18B20、按键、LED显示等模块组成硬件系统。在硬件系统中设有3个独立按键,根据使用者的需要可以随时对时间进行校准、选择时间、温度显示等,综上所述此万年历具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,符合电子仪器仪表的发展趋势,具有广阔的市场前景。

在整个设计过程中,充分发挥个人的主观能动性,自主学习,学到了许多没学到的知识,增加了动手能力的考验,达到了预期的目的。总之,这次设计使我的能力得到了全方位的提高。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top