1.2 电子万年历的发展状况与存在问题
近年来,随着科学技术的迅速发展,无论在国内还是在国外,电子万年历的设计方案越来越成熟,稳定性和实用性有很大的提高,电子万年历也发展成为由原来的只能实现基本功能到集娱乐性于一身的常见电子产品。现在的电子万年历产品基本都采用了集成度极高的专用芯片,这大大降低了产品的设计难度,同时也缩短了产品的生产周期。然而,现代的数码产品市场更新换代的周期越来越短,所以在设计万年历产品的时候在完成一些基本功能的情况下,往产品内加入更多的娱乐功能已经成为一种趋势[1]。
2. 电子万年历的硬件设计
本方案以AT89S52单片机作为主控核心,与时钟芯片DS1302、温度芯片DS18B20、闹钟模块、按键、LCD显示等模块组成硬件系统。在硬件系统中设有5个独立按键和一个LCD显示器,能显示丰富的信息,根据使用者的需要可以随时对时间进行校准、温度显示、是否为闰年等,综上所述此万年历具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,符合电子仪器仪表的发展趋势,具有广阔的市场前景[2]。系统框图如图1所示:
图1 电子万年历的硬件组成
2.1 AT89S52单片机芯片的介绍及外围电路
AT89S52单片机是美国Atmel公司生产的低电压、高性能的CMOS 8位单片机,该单片机内部含有8KB的程序存储器和256KB的数据存储器,该单片机片内使用8位处理器(CPU)和Flash存储单元,性能良好的AT89S52广泛地应用于工业领域。AT89S52与Intel公司的80C52在工作特点、指令系统和硬件组成等方面兼容。对于时钟电路和复位电路,本设计中选择了内部时钟方式和按键电平复位电路,来构成单片机的最小电路。单片机在启动运行时,都需要先复位,其作用是使单片机系统都处于一个确定的初始状态。因而,复位对于单片机而言是很重要的。可是其本身是不可以自主复位,必须与相应的外部电路共同一起实现[3]。其主要工作特性是:8KB可编程Flash存储器、静态操作:0Hz~33Hz、程序存储器加密功能、32个可编程I/O口线、三个16 位定时器/计数器、全双工UART通道、看门狗定时器、掉电标识。
P0 口:P0口具有一个双向I/O口,其8位漏极开路的每位可以驱动8个TTL逻辑电平。访问外部程序和数据存储器时,P0具有内部上拉电阻。在Flash编程时,P0口也可以接收指令;
P1 口:P1 口具有一个内部上拉的8 位双向I/O 口,P1口 能驱动4 个TTL 逻辑电平。此外,P1.0可以用作定时器/计数器2的计数输入(P1.0/T2)和时器/计数器2 的触发输入(P1.1/T2EX)。
P2 口:P2 口具有一个内部上拉的8 位双向I/O 口,P2口能驱动4个TTL 逻辑电平。在使用8位地址(如MOVX @RI)访问外部数据存储器时,P2口输出P2锁存器的内容。
P3 口:P3 口具有一个内部上拉的8 位双向I/O 口,P3口能驱动4个TTL 逻辑电平。P3口亦作为AT89S52特殊功能(第二功能)使用。
RST——复位输入。当RST引脚上出现两个机器周期以上持续时间的高电平时将使单片机复位。
ALE/PROG——当访问外部程序存储器时,ALE输出脉冲用来锁存地址的低8位字节。正常情况下,ALE一直以时钟振荡频率的1/6来输出固定的脉冲信号,所以它能够实现定时目的。而对Flash存储器进行编程的时候,该引脚还可以输入编程脉冲(PROG)。如果情况特殊,可以使用特殊功能寄存器(SFR)中的8EH单元的D0位来置位,从而达到禁止ALE操作的目的。需要注意的是,该位被置位后,有且仅有一条MOVX和MOVC指令才能激活ALE这一操作。
PSEN——程序储存允许(PSEN)输出,当外部程序存储器取指令(或数据)时,输出两个脉冲,在此期间,如果访问外部数据存储器,单片机会忽略两次PSEN信号。EA/VPP——外部访问允许,单片机访问外部程序存储器的前提条件是EA 端必须接地。要清楚的是:假如加密位LB1被编程,单片机复位时内部会自动保存EA端口数据[4]。 52单片机电子万年历设计+流程图+设计仿真图(2):http://www.youerw.com/zidonghua/lunwen_639.html