万年历设计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

电子万年历的设计与制作

一、实训目的

● 熟悉DS12887时钟日历芯片的特性及设置方法,DS12887芯片与单片机的接口电路

及其设计方法;

● 学会模块化程序设计方法。 二、课题要求

制作一个可调万年历。要求如下:

内定时间为2000年1月1日12点00分00秒,提供给新产品或换电池时使用。 时间调整:开机时,光标停在“年”,移动光标依次修改年、月、日、时、分、秒。 每按P1.0一次,光标依年、月、日、时、分、秒顺序移动。 每按P1.1一次,光标所在位置的值加1。 每按P1.2一次,光标所在位置的值减1。 采用LCD 液晶显示器显示。 三、背景资料

时钟日历芯片DS12887:

◆ 能够自动产生年、月、日、时、分、秒等时间信息,

◆ 芯片内部带有锂电池,外部掉电时,其内部时间信息能够保持10年之久; ◆ 有12小时制和24小时制两种工作模式;

◆ 时间的表示方法有两种:二进制数表示和BCD 码表示。 ◆ 用户可对DS12887进行编程以实现多种方波输出,

◆ 用户可对其内部的三路中断通过软件进行屏蔽。 1、引脚说明

● Vcc :直流电源+5V 输入

● 当Vcc 输入为+5V 时,用户可以访问DS12887内RAM 中的数据,并可对其进行读、

写操作;

● 当Vcc 的输入小于+4.25V 时,禁止用户对内部RAM 进行读、写操作,此时用户不

能正确获取芯片内的时间信息;

● 当Vcc 的输入小于+3V 时,DS12887会自动将电源切换到内部自带的锂电池上,以

保证内部的电路能够正常工作

图10—11 DS12887引脚图

Vcc SQW

NC NC

NC

IRQ RESET DS/NC

R/W AS

CS RD

● GND :地

● MOT :总线模式选择

当MOT 接Vcc 时选用Motorola 总线模式,当MOT 接GND 时选用Intel 总线模式。

● SQW :方波输出

当供电电压Vcc 大于4.25V 时,SQW 脚可进行方波输出,此时用户可以通过对控制寄存器编程来得到13种方波信号的输出。

● AD0~AD7:双向地址/数据总线。 ● AS :地址有效输入。 ● DS/ :数据选通/读允许

当MOT 接Vcc 时作为数据选通;当MOT 接GND 时,作为读允许输入。

● R/ :读/写允许输入。

若MOT 接Vcc ,该引脚为高电平时读操作,为低电平时写操作;若MOT 接GND ,该引脚作为写允许输入。

● :片选输入。低电平有效。 ● :中断请求输出。低电平有效。 ● :复位端。低电平有效,复位操作不影响时钟日历工作。 ● NC :空引脚。

2、存储器分配与设置

DS12887片内RAM 与寄存器地址分配见图10—12。 DS12887带有128字节片内RAM :

10字节的时标寄存器:用来存储时间信息,地址00H~09H

CPU 可以通过读取时标寄存器获得时间与日历值,也可以编程设置其初值,时标寄存器的值可以用二进制或BCD 码表示。

4字节的控制寄存器:用来存储控制信息,地址0AH~0DH

用户可通过对控制寄存器编程实现从SQW 引脚输出多种不同频率的方波,并可对其内部的三路中断通过软件进行屏蔽。

114字节作为通用RAM 供用户使用,地址为0EH~7FH 。

10—12 片内RAM 与寄存器地址分配

秒秒报警

分分报警时时报警星期日月年寄存器A 寄存器B 寄存器C 寄存器D 01234567891011121314字节114字节

RAM

00H 0DH 0EH 7FH 可用二进制数或

BCD 码表示RD W CS IRQ RESET

时标寄存器的数据格式,见下表所示。

控制寄存器的格式

●UIP:更新周期标志。

当UIP=1时,表示芯片正处于或即将开始更新周期,在此期间不允许读写时标寄存器;

当UIP=0时,表示没有更新周期,此时可读时标寄存器。

●DV2~DV0:芯片内部振荡器RTC控制位。

当芯片复位后500ms开始第一个更新周期。将这3位设置成010,可使芯片以内置的32.768kHz的振荡频率工作。

●RS3~RS0:周期中断可编程方波输出速率选择位。

这4位不同的组合可以产生不同的方波输出,程序可以通过设置寄存器B的SQWE 和PIE位控制是否允许周期中断方波输出。RS3~RS0与中断周期及SQW输出频率的对应关系如表10—3所示。

表10—3 时钟频率选择

●SET:允许更新周期位。可读/写,不受信号的影响。

当SET=0时,芯片处于正常更新状态;

当SET=1时,芯片正常更新被禁止。

●PIE、AIE、UIE:分别为周期中断、闹钟中断、更新周期结束中断允许位。

各位分别为“1”时允许发出相应的中断,由端输出。其中,UIE位在复位或设置SET为1时清零。

●SQWE:方波输出允许位。

当SQWE=1,按寄存器A输出速率选择位所确定的频率输出方波;

当SQWE=0,SQW脚保持低电平。

●DM:时标寄存器格式选择位。

DM=0,为BCD码;

DM=1,为二进制码。

●24/12:24小时或12小时模式设置位。

24/12=1,选择24小时工作模式;

24/12=0,选择12小时工作模式。

●DSE:夏令时允许标志位。

●当DSE=1时,夏时制设置有效。在四月的第一个星期日的1:59:59 AM,调到3:00:00

相关文档
最新文档