全球旧事资料 分类
SLAW为A2H,PCF8563I2C通信实现有字节写读两种状态。适用80C51的虚拟I2C总线软件包。本系统直接调用该I2C总线软件包的数据读写子程序(其中WRNBYT为N字节的子程序,RDNBYT为读取N字节的字节),来实现PCF8563的I2C总线操作。根据硬件电路及资源分配,I2C软件包中符号单元赋值如下:SDAEQA将P00;数据传送SCLEQUP01;时钟控制状态MINDATA30H;秒寄存器SECDATA31H;分寄存器HOURDATA32H;时寄存器DAYDATA33H;日寄存器WEEKDATA34H;周寄存器MONTHDATA35H;月寄存器YEARDATA36H;年寄存器SLADATA37H;37H为被控器的地址NUMBYTDATA38H;38H为数据字节计数器MRTDATA40H;接收数据缓冲区首地址MTDDATA50H;发送数据缓冲区首地址①PCF8563定时器工作模式MOV51H,81H;设置PCF8563的0EH为81H,启动定时器,定时器频率64HzMOV52H,64;设置PCF8563的0FH为64,定时器倒计数值为64MOVMTD,0EH;定时器控制寄存器字节首地址MOVNUMBYT,3;写字节MOVSLA,0A2H;取写器件地址LCALLWRNBYT;写8563以上配置完成后,PCF8563的INT脚产生周期为1s,脉冲宽度(低电平)约为15ms的脉冲中断信号。②PCF8563当前时间设定子程序如下:MOV51H,00H;启动时钟MOV52H,11H;定时器为中断模式,脉冲形式MOV53H,MIN;将秒至年的时间写入发送缓冲区MOV54H,SECMOV55H,HOURMOV56H,DAYMOV57H,WEEKMOV58H,MONMOV59H,YEARMOVSLA,0A2H;取写器件地址MOVNUMBYT,10;写字节数MOVMTD,00H;写入8563寄存器首地址为00HLCALLWRNBYT;写入8563RET③读出时钟芯片当前值子程序设计MOVMTD,02H;读时钟寄存器首字节地址02HMOVSLA,0A2H;取写器件地址MOVNUMBYT,1;写字节数LCALLWRNBYT;写8563MOVSLA,0A3H;取读器件地址MOVNUMBYT,7;读七个时钟信息LCALLRDNBYT;读取时间并放入缓冲区MOVA,40H;
f取滗字节ANLA,7FH;屏蔽无效位MOVMIN,A;送秒寄存器MOVA,41H;取分字节ANLA,7EH;屏蔽无效位MOVMIN,A;送分寄存器MOVA,42H;取小时字节ANLA,3FH;屏蔽无效位MOVHOUR,A;送时寄存器MOVA,43H;取天字节ANLA,3FH;屏蔽无效位MOVDAY,A;送天寄存器MOVA,44H取星期字节ANLA,07H;屏蔽无效位MOVWEEK,A;送星期寄存器MOVA,45H;取月字节ANLA,1FH;屏蔽无效位MOVMOTH,A;送月寄存器RET系统程序流程如图4所示,中断服务程序如5所示。结语此倒计时系统于广东省六届大运会中标,在整个运行过程正常稳定工作,达到了大会提出的要求。#i
cludereg52h#i
cludei
tri
shdefi
eucharu
sig
edcharsbitSDAP34sbitSCLP35r
好听全球资料 返回顶部