实时日历_时钟DS12C887与单片机的接口应用

更新时间:2023-07-29 14:58:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第18卷 第11期 武汉科技学院学报 Vol.18 No.11 2005年11月 JOURNAL OF WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING Nov. 2005

实时日历/时钟DS12C887与单片机的接口应用

陶桓齐

(武汉科技学院 电子信息系,湖北 武汉430073)

摘要:本文在介绍DS12C887实时时钟/日历芯片的基本性能和特点基础上,给出了具体的接口方法与应用编程实例,电路简单实用,在产品设计中具有良好的灵活性和通用性。 关键词:实时时钟; 接口方法; 应用编程

中图分类号:TP39 文献标识码:A 文章编号:1009-5160(2005)-0023-03

实时的时钟与日期记载,给智能化仪器仪表的数据测量和记录,增加了时间标识功能。Dallas公司的芯片DS12C887是专用于各种应用微机系统的实时时钟/日历芯片,其性能良好,接口简单,应用方便,使设计者能降低成本,减少计时编程的工作量。本文根据笔者在工程中的应用和经验,讨论其接口电路和使用方法。

1 DS12C887性能简介

1.1 功能和特点

DS12C887芯片除了可以产生秒、分、时、星期、日、月及年等7个时标,并有2000年至2099年的100年日历和秒、分、时报警定时功能外,还有113个字节的非易失性RAM存储单元。片内自配锂电池,无外加电源时,也可保存数据达10年之久。片内时钟振荡器,通过编程可以输出各种频率的时标方波。 1.2 外部引线

DS12C887为双列直插式24引线封装。外引脚排列如图1所示。其中AD0--AD7为双向地址/数据线;AS、DS是芯片内存储单元的地址和数据选通输入控制端,高电平有效;SQW是方波输出端;,是芯片选择与复位输入控制端,均为低电平有效;是中断请求输出端,低电平有效;MOT是CPU系统选择控制端,用于MOTOROLA CPU系统时,此端接高电平VCC,用于INTER CPU系统时,接低电平。

1.3 片内储存单元

DS12C887芯片内有总存储容量为128×8bit,即128字节,分为专用寄存器和通用存储单元。其中地址为OAH,OBH,OCH,ODH的4个单元是控制与状态寄存器,00H--09H是计时、定时与日期专用寄存器,32H为世纪年寄存器,其余地址为OEH-- 3IH,33H--7FH的113个单元为用户通用存储器。

2 DS12C887芯片与51系列微处理器的接口及编程

2.1 硬件连接

实际应用时,应根据系统的要求和总线地址译码方式来选择接口电路。对于多功能的复杂系统可以采取译码芯片的全译码或部分译码方式连接;而对于功能较少的小系统,为了简化电路,降低成本,可采用线译码方式。本文以简单的线译码方式为例。连接如图2所示。在图中只画出DS12C887与CPU的连接线,其它连线视系统的功能而选定。此处选择CPU P2口的P2.5作为线译码的片选输出端接。于是芯片内的秒、分、小时、星期、日、月等计时单元的地址分别是DF00H,DF02H,

DF04H,DF06H,DF07H,DF08H,DF09H;定时报警的秒,分、时的计数单元的地址就分别是DF01H,DF03H,DF05H;世纪年的只读寄存器单元地址为DF0AH~DF0DH。

收稿日期:2005-09-10

作者简介:陶桓齐(1957-),男,副教授,研究方向:智能检测与信号处理.

24

武汉科技学院学报 2005年

根据DS12C887的读写时序要求,INTER CPU的读控制线(17)和写控制线(16)分别接DS和R/输入端:

CPU的数据口P0.0--P0.7接时钟芯片的AD0-- AD7。CPU的地址锁存允许控制端ALE接AS端。DS12C887的中断请求端与CPU的外中断输入端INT连接。MOT端径10kΩ电阻接低电平,表示选择INTER系统的处理器。

2.2 软件编程

对DS12C887的编程分为初始化编程与应用编程两部分。在计时之前,需要进行初始化设置,其目的是对控制寄存器B进行写入操作,使其停止计数,以便设置工作方式;对A寄存器写入操作,设置中断周期和振荡频率;读状态寄存器C和D,则可清除原有的中断标志,并使芯片数据有效。然后再对B寄存器写入,以启动计时开始。在DS12C887的正常计时过程中,若要读取并显示当前的时间或日期值时,应先对控制寄存器进行设置,停止计数,待读出数据后,再恢复计时操作。下面给出两种语言的编程程序段。

.C语言的源程序段

#define Uchar Unsigned char

#define MCA XBYTE[OXDFOA] /*寄存器A*/ #define MCB XBYTE[OXDFOB] /*寄存器B*/ #define MCC XBYTE[OXDFOC] /*寄存器C*/ #define MCD XBYTE[OXDFOD] /*寄存器D*/ #define HOUR XBYTE[OXDFO5] /*小时报警单元*/ #define WEEK XBYTE[OXDFO6] /*星期值单元*/ Uchar Xdata addr=OX36 /*缓冲区地址*/ MCB=OXA2 /*初始化设置*/ MCA=OX26

ACC=MCC /*读状态寄存器C*/ ACC=MCD

MCB=OXZZ /*启动计时开始*/ HOUR=OXFF /*设置每小时闹钟中断*/ MCB=OXAZ /*读星期值*/

addr=WEEK /*保存星期值到缓冲区*/ MCB=OXZZ /*恢复计时*/ 汇编语言源程序段 (1)初始化程序

图1 DS12C887 外引脚排列

START:MOV DPL, #OBH ;送B寄存器地址 MOV DPH,#OOFH

MOV A, #82H ;设置计数方式 MOVX @DPTR, A

MOV DPL,#OAH ;设置A寄存器参数 MOV A, #26H MOVX @DPTR,A

MOV DPL,#OCH ;读C寄存器 MOVX A, @DPTR

INC DPL ;读D寄存器 MOVX A, @DDTR

MOV DPL#OBH ;再设置B寄存器,启动计时 MOV A, #22H MOVX @DPTR,A RET

图2 DS12C887与CPU的连接

第11期 陶桓齐:等:实时日历/时钟DS12C887与单片机的接口应用 25

(2)读取星期数值的程序段

RW:MOV DPH, HODFH

MOV DPL, #OBH ;设置B寄存器 MOV A, #82H MOVX @DDTR,A

MOV DPL, #06H ;读星期值单元数据 MOVX A, @DDTR

MOV 36H, A ;数据保存到缓冲区

MOV DPL, #OBH ;再设置B寄存器,恢复计时 MOV A, #22H MOVX @DPTR, A RET 2.3 应用简介

由于DS12C887的功能特别,接口简便灵活,被广泛应用于各类智能仪表中。在石油闭口闪点自动测定仪的开发项目中的应用就是一例。图3是该仪表的原理性框图。其中DS12C887为仪器系统提供日期和时钟信号,用于检测过程的时、分、秒计时与显示;给出控温测量的定时时标;控制定时打印,使每一次数据输出都有准确的时间记录,减少了人为操作的可能差错,提高了数据的真实性。并且DS12C887与CPU之间采取中断的通信方式,既不增加CPU的负担,也没有太大的软件开消,有利于提高仪表的自动化程度。

图3 具有实时时钟的闭口闪点自动测定仪框图

3 结束语

DS12C887以其独特的功能及方便的连接接口,不仅应用于通用微机系统中,也广泛地应用于各类以单片机为核心的智能化仪器仪表中,不仅提供实时的时钟源和日期、时间显示,节省CPU的定时资源,减少软件设计工作量,提高可靠性,还可以提供断电后的关键数据的保存功能。在智能检测仪表的应用中,取得了满意的效果,具有一定的推广性。

参考文献:

[1] SEMICONDUCTOR Data Book and CD Rom[Z]. Dallas, 2000.

[2] 刘乐善.微型计算机接口技术及应用[M]. 武汉:华中理工大学出版社,2000. [3] 马忠梅.单片机的C语言应用程序设计[M]. 北京:航空航天大学出版社,1999.

Application of Interface Between DS12C887 Real Time Clock and MCU

TAO Huan-qi

(Department of Electronjics & information , Wuhan university of science and engineering, Wuhan Hubei 430073, China) Abstract:In this paper, based on basic performance and characteristics of DS12G887 real-time calendar/clock clip, detailed interface

and examples of application for programming are given. Due to the simple and practical circuit, it has good agility and generalization in product design.

Key words:Real Time Clock;Interface;Programming for Application

本文来源:https://www.bwwdw.com/article/tofm.html

Top