ImageVerifierCode 换一换
格式:DOCX , 页数:23 ,大小:51.77KB ,
资源ID:10949909      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10949909.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(85历时钟芯片原理及应用设计.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

85历时钟芯片原理及应用设计.docx

1、85历时钟芯片原理及应用设计PCF8563日历时钟芯片原理及应用设计一、 概述PCF8563是PHILIPS公司推出的一款工业级内含I2C总线接口功能的具有极低功耗的多功能时钟/日历芯片。PCF8563的多种报警功能、定时器功能、时钟输出功能以及中断输出功能能完成各种复杂的定时服务,甚至可为单片机提供看门狗功能。内部时钟电路、内部振荡电路、内部低电压检测电路(1.0V)以及两线制I2C总线通讯方式,不但使外围电路及其简洁,而且也增加了芯片的可靠性。同时每次读写数据后,内嵌的字地址寄存器会自动产生增量。当然作为时钟芯片,PCF8563亦解决了2000年问题。因而,PCF8563是一款性价比极高的

2、时钟芯片,它已被广泛用于电表、水表、气表、电话、传真机、便携式仪器以及电池供电的仪器仪表等产品领域。特性 宽电压范围1.05.5V,复位电压标准值Vlow=0.9V; 超低功耗:典型值为0.25A(VDD=3.0V,Tamb=25); 可编程时钟输出频率为:32.768KHz、1024Hz、32Hz、1Hz; 四种报警功能和定时器功能; 内含复位电路、振荡器电容和掉电检测电路; 开漏中断输出; 400kHz I2C总线(VDD=1.85.5V),其从地址:读,0A3H;写,0A2H。PCF8563的管脚排列及描述如图1及表1所示。表1 PCF8563管脚描述符号管脚号 描 述OSCI 1振荡器

3、输入OSCO 2振荡器输出/INT 3中断输出(开漏;低电平有效)VSS 4地SDA 5串行数据I/OSCL 6串行时钟输入CLKOUT 7时钟输出 (开漏)VDD 8正电源 图1 PCF8563管脚排列图二、 PCF8563的基本原理PCF8563有16个位寄存器:一个可自动增量的地址寄存器,一个内置32.768KHz的振荡器(带有一个内部集成的电容),一个分频器(用于给实时时钟RTC提供源时钟),一个可编程时钟输出,一个定时器,一个报警器,一个掉电检测器和一个400KHz I2C总线接口。所有16个寄存器设计成可寻址的8位并行寄存器,但不是所有位都有用。前两个寄存器(内存地址00H,01H

4、)用于控制寄存器和状态寄存器,内存地址02H08H用于时钟计数器(秒年计数器),地址09H0CH用于报警寄存器(定义报警条件),地址0DH控制CLKOUT管脚的输出频率,地址0EH 和0FH分别用于定时器控制寄存器和定时器寄存器。秒、分钟、小时、日、月、年、分钟报警、小时报警、日报警寄存器,编码格式为BCD,星期和星期报警寄存器不以BCD格式编码。当一个RTC寄存器被读时,所有计数器的内容被锁存,因此,在传送条件下,可以禁止对时钟日历芯片的错读。1. 报警功能模式一个或多个报警寄存器MSB(AE=Alarm Enable报警使能位)清时,相应的报警条件有效,这样,一个报警将在每分钟至每星期范围

5、内产生一次。设置报警标志位AF(控制状态寄存器的位)用于产生中断,AF只可以用软件清除。2. 定时器位的倒计数器(地址0FH)由定时器控制寄存器(地址0EH,参见表23)控制,定时器控制寄存器用于设定定时器的频率(4096,64,1,或1/60Hz),以及设定定时器有效或无效。定时器从软件设置的8 位二进制数倒计数,每次倒计数结束,定时器设置标志位TF(参见表5),定时器标志位TF只可以用软件清除,TF用于产生一个中断(/INT),每个倒计数周期产生一个脉冲作为中断信号。TI/TP(参见表5)控制中断产生的条件。当读定时器时,返回当前倒计数的数值。3. CLKOUT输出管脚CLKOUT 可以输

6、出可编程的方波。CLKOUT频率寄存器(地址0DH;参见表21)决定方波的频率,CLKOUT可以输出32.768KHz( 缺省值),1024,32,1Hz的方波。CLKOUT为开漏输出管脚,上电时输出有效,无效时输出为高阻抗。4. 复位PCF8563包含一个片内复位电路,当振荡器停止工作时,复位电路开始工作。在复位状态下,I2C总线初始化,寄存器TF、VL、TD1、TD0、TESTC、AE被置逻辑,其它的寄存器和地址指针被清。5. 掉电检测器和时钟监控PCF8563内嵌掉电检测器(如图2所示),当 VDD低于 Vlow 时,位 VL(Voltage Low,秒寄存器的位7)被置,用于指明可能产

7、生不准确的时钟日历信息,VL标志位只可以用软件清除当VDD慢速降低(例如以电池供电)达到Vlow时,标志位VL被设置,这时可能会产生中断。图2 掉电检测6. PCF8563内部寄存器PCF8563共有16个寄存器,其中00H01H为控制方式寄存器、09H0CH为报警功能寄存器、0DH为时钟输出寄存器、0EH和0FH为定时器功能寄存器、02H08H为秒年时间寄存器。各寄存器的位描述如表2及3.14所示。表2 二进制格式寄存器概况地址寄存器名称Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit000H控制/状态寄存器1TEST10STOP0TESTC00001H 控制/状态寄存器200

8、0TI/TPAFTFAIETIE0DH CLKOUT输出寄存器FEFD1FD00EH 定时器控制寄存器TETD1TD00FH 定时器倒计数数值寄存器 定时器倒计数数值(二进制)表3 BCD格式寄存器概况地址寄存器名称Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit002h秒 VL 0059BCD码格式数03h分钟 0059BCD码格式数04h小时 0059BCD码格式数05h日 0131BCD码格式数06h星期 0607h月/世纪 C 0112 BCD码格式数08h年 0099 BCD码格式数09h分钟报警 AE 0059 BCD码格式数0Ah小时报警 AE 0023 BCD码格

9、式数0BH日报警 AE 0131 BCD码格式数0CH星期报警 AE 06注:标明“”的位无效(1) 控制/状态寄存器表4 控制/状态寄存器位描述(地址00H)Bit符号 描 述7TEST1TEST1=0,普通模式;TEST1=1,EXT_CLK测试模式5STOPSTOP=0,芯片时钟运行;STOP=1,所有芯片分频器异步置逻辑0。芯片时钟停止运行(CLKOUT在32.768kHz时可用)3TESTCTESTC=0,电源复位功能失效(普通模式时置逻辑0)TESTC=1,电源复位功能有效6,4,2,1,00缺省值置逻辑0(2)控制/状态寄存器表5 控制/状态寄存器位描述(地址01H)Bit符号描

10、述 7,6,50缺省值置逻辑0 4TI/TPTI/TP=0:当TF有效时INT有效 (取决于TIE的状态) TI/TP=1:INT脉冲有效,参见表6 (取决于TIE的状态)。 注意:若AF和AIE都有效时,则INT一直有效 3 AF当报警发生时,AF被置逻辑1;在定时器倒计数结束时,TF被置逻辑1,它们在被软件重写前一直保持原有值,若定时器和报警中断都请求时,中断源由AF和TF决定,若要使清除一个标志位而防止另一标志位被重写,应运用逻辑指令AND,标志位AF和TF值描述参见表7 2 TF 1 AIE标志位AIE和TIE 决定一个中断的请求有效或无效,当AF或TF中一个为“1”时中断是AIE 和

11、TIE都置“1”时的逻辑或。AIE=0,报警中断无效;AIE=1,报警中断有效TIE=0,定时器中断无效;TIE=1,定时器中断有效 0 TIE 表6 /INT操作(bit TI/TP=1)源时钟(Hz) /INT周期 n=1 n1 40961/81921/4096641/1281/6411/641/641/601/641/64 注1TF 和/INT同时有效 注2n为倒计数定时器的数值,当n0时定时器停止工作。 表7 AF和TF值描述R/W Bit:AF Bit:TF值描述值描述Read读01报警标志无效报警标志有效01定时器标志无效定时器标志有效Write写01报警标志被清除报警标志保持不变

12、01定时器标志被清除定时器标志保持不变 (3) 秒、分钟和小时寄存器表8 秒/VL寄存器位描述(地址02H)Bit符号 描 述7VLVL=0:保证准确的时钟/日历数据VL=1:不保证准确的时钟/日历数据60代表BCD格式的当前秒数值,值为0099例如:1011001,代表59秒表9 分钟寄存器位描述(地址03H)Bit符号 描 述7无效60代表BCD格式的当前分钟数值,值为0059表10 小时寄存器位描述(地址04H)Bit 符 号 描 述76无效50代表BCD格式的当前小时数值,值为0023(4) 日、星期、月/世纪和年寄存器表11 日寄存器位描述(地址05H)Bit符号 描 述76无效50

13、代表BCD格式的当前日数值,值为0131。当年计数器的值是闰年时,PCF8563自动给二月增加一个值,使其成为29天表12 星期寄存器位描述(地址06H)Bit 符号 描 述73 无效20代表当前星期数值06,参见表13,这些位也可由用户重新分配表13 星期分配表日(Day)Bit2Bit1 Bit0星期日 0 0 0星期一 0 0 1星期二 0 1 0星期三 0 1 1星期四 1 0 0星期五 1 0 1星期六 1 1 0表14 月/世纪寄存器位描述(地址07H)Bit符号 描 述7C世纪位;C=0指定世纪数为20,C=1指定世纪数为19,“”为年寄存器中的值,参见表16。当年寄存器中的值由

14、99变为00时,世纪位会改变65无用40代表BCD格式的当前月份,值为0112;参见表15表15 月分配表月份Bit4 Bit3Bit2Bit1Bit0 一月 0 0 0 0 1二月 0 0 0 1 0三月 0 0 0 1 1四月 0 0 1 0 0五月 0 0 1 0 1六月 0 0 1 1 0七月 0 0 1 1 1八月 0 1 0 0 0九月 0 1 0 0 1十月 1 0 0 0 0十一月 1 0 0 0 1十二月 1 0 0 1 0表16 年寄存器位描述(地址08H) Bit符号 描 述70代表BCD格式的当前年数值,值为0099(5) 报警寄存器向一个或多个报警寄存器写入合法的分钟

15、、小时、日或星期数值并且它们相应的AE(Alarm Enable)位为逻辑,当这些数值与当前的分钟、小时、日或星期数值相等,标志位AF(Alarm Flag)被设置,AF保存设置值直到被软件清除为止,AF被清除后,只有在时间增量与报警条件再次相匹配时才可再被设置。报警寄存器在它们相应位AE置为逻辑时将被忽略。表17 分钟报警寄存器位描述(地址09H)Bit符号 描 述7AEAE=0,分钟报警有效;AE=1,分钟报警无效60代表BCD格式的分钟报警数值,值为0059表18 小时报警寄存器位描述(地址0AH)Bit符号 描 述7AEAEAE=0,小时报警有效;AE=1,小时报警无效60代表BCD格

16、式的小时报警数值,值为0023表19 日报警寄存器位描述(地址0BH)Bit符号 描 述7AEAE=0,日报警有效;AE=1,日报警无效。60代表BCD格式的日报警数值,值为0031表20 星期报警寄存器位描述(地址0CH)Bit符号 描 述7AEAE=0,星期报警有效;AE=1,星期报警无效60代表BCD格式的星期报警数值,值为06(6) CLKOUT频率寄存器表21 CLKOUT频率寄存器位描述(地址0DH)Bit符号 描 述7 FEFE0,CLKOUT输出被禁止并设成高阻抗FE1,CLKOUT输出有效62 无效10FD1FD0用于控制CLKOUT的频率输出管脚(fCLKOUT ),参见表

17、22 表22 CLKOUT频率选择表FD1FD0fCLKOUT FD1FD0fCLKOUT 0 032.768kHz 1 032Hz 0 11024Hz 1 11Hz(7) 倒计数定时器寄存器定时器寄存器是一个位字节的倒计数定时器,它由定时器控制器中位TE决定有效或无效,定时器的时钟也可以由定时器控制器选择,其它定时器功能,如中断产生,由控制状态寄存器控制。为了能精确读回倒计数的数值,I2C总线时钟SCL的频率应至少为所选定定时器时钟频率的两倍。表23 定时器控制器寄存器位描述(地址0EH)Bit符号 描 述7TETE=0,定时器无效;TE=1,定时器有效62无用1TD1定时器时钟频率选择位,

18、决定倒计数定时器的时钟频率,见表24,不用时TD1和TD0应设为“11”(1/60Hz),以降低电源损耗0TD0表24 定时器时钟频率选择TD1TD0定时器时钟频率(Hz) 00 4096 01 64 10 1 11 1/60表25 定时器倒计数数值寄存器位描述(地址0FH)Bit 符 号 描 述70倒计数数值“n”,倒计数周期n/时钟频率7. EXTCLK 测试模式测试模式用于在线测试、建立测试模式和控制RTC的操作。 测试模式由控制/状态寄存器的位TEST1设定,这时CLKOUT管脚成为输入管脚。在测试模式状态下,通过CLKOUT管脚输入的频率信号代替片内的64Hz频率信号,每64个上升沿

19、将产生秒的时间增量。 注意:进入EXTCLK 测试模式时时钟不与片内64Hz始终时钟同步,也确定不出预分频的状态。操作举例(1) 进入EXTCLK 测试模式;设置控制/状态寄存器的位(TEST=1)。(2) 设置控制/状态寄存器的位(STOP=1)。(3) 清除控制/状态寄存器的位(STOP=0)。(4) 设置时间寄存器(秒、分钟、小时、日、星期、月/世纪和年)为期望值。(5) 提供32个时钟脉冲给CLKOUT。(6) 读时间寄存器观察第一次变化。(7) 提供64个时钟脉冲给CLKOUT。(8) 读时间寄存器观察第二次变化;需要读时间寄存器的附加增量时,重复步骤(7)和(8)。8. 电源复位(

20、POR)替换模式POR的持续时间直接与振荡器的起动时间有关。一种内嵌的长时间起动的电路可使POR失效,这样可使设备测试加速。这种模式的设定要求I2C总线管脚SDA和SCL的信号波形如图3所示,图中所有的时间值为所需的最小值。当进入替换模式时,芯片立即停止复位,操作通过I2C总线进入EXTCLK 测试模式。设置位TESTC逻辑可消除替换模式,再次进入替换模式只有在设置TESTC为逻辑后进行。在普通模式时设置TESTC为逻辑没有意义,除非想阻止进入POR替换模式。 图3 POR时序图9. 石英晶片频率调整方法(1):定值OSCI电容计算所需的电容平均值,用此值的定值电容,通电后在CLKOUT管脚上

21、测出的频率应为32.768kHz,测出的频率值偏差取决于石英晶片,电容偏差和器件之间的偏差(平均为510-6)。平均偏差可达5分钟/年。方法(2):OSCI微调电容可通过调整OSCI管脚的微调电容使振荡器频率达到精确值,这时可测出通电时管脚CLKOUT上的32.768kHz信号。方法(3):OSCI输出直接测量管脚OSCI的输出。三、 PCF8563与单片机的接口软件及功能应用举例按I2C总线协议规约,PCF8563有唯一的器件地址0A2H。如图4所示为PCF8563应用电路原理图,下面首先给出基本的接口软件,然后举例说明各种功能应用。注:电容C3的取值范围为120pF。图4 PCF8563应

22、用电路原理图1. 时钟的读取和写入(1) 读时钟:下面的程序将秒年共七个字节的时间信息读出并放入MRD为首址的接收缓冲区中。注意,时间读出后需进行整理(屏蔽无效位)方能得出正确的信息。RCV8563: MOV SLA,#0A2H ;取器件地址 MOV SUBA,#02H ;取读时间的首字节地址(从秒开始读) MOV NUMBYTE,#07H ;读七个时间信息 LCALL IRDNBYTE ;读取时间并放入接收缓冲区中 MOV A,MRD ;取秒字节 ANL A,#7FH ;屏蔽无效位 MOV MRD,A MOV A, MRD+1 ;取分钟字节 ANL A,#7FH ;屏蔽无效位 MOV MRD

23、+1,A MOV A, MRD+2 . ;取小时字节 ANL A,#3FH ;屏蔽无效位 MOV MRD+2,A MOV A, MRD+3 ;取天字节 ANL A,#3FH ;屏蔽无效位 MOV MRD+3,A MOV A, MRD+4 ;取星期字节 ANL A,#07H ;屏蔽无效位 MOV MRD+4,A MOV A,MRD+5 ;取月字节 ANL A,#1FH ;屏蔽无效位 MOV MRD+5,A RET (2) 写时钟:下面的程序将2000年6月20日星期3下午3点(15点)59分30秒的时间写入PCF8563。 SEND8563: ACALL LOAD8563 ;将时间装入发送缓冲区

24、(MTD) 中 MOV SLA,#0A2H ;取器件地址 MOV SUBA,#00H ;取写入寄存器的首字节地址(从00H开始写) MOV NUMBYTE,#09H ;写七个时间信息和2个控制命令 LCALL IWRNBYTE ;写时间 RET LOAD8563: MOV MTD,#00H ;启动时钟 MOV MTD+1,#1FH ;设置报警及定时器中断,定时器中断为脉冲形式 MOV MTD+2,#30H ;以下分别将秒至年的时间写入发送缓冲区中 MOV MTD+3,#59H MOV MTD+4,#15H MOV MTD+5,#20H MOV MTD+6,#02H MOV MTD+7,#06H

25、 MOV MTD+8,#00HRET 2. 主要功能的应用PCF8563是一多功能时钟芯片,必须谨慎的使用这些功能(其中最主要的就是正确的设置功能参数),否则会产生意外的错误。下面给出一些可能会用到的设置程序。 (1) 报警功能的设置PCF8563共有四种报警方式,分别为小时报警(每小时的同一分钟时刻报警)、日报警(每天的同一小时时刻报警)、月报警(每月的同一天时刻报警)和星期报警(每星期的同一天时刻报警)。发生报警时AF位变为1。设置报警有效的方法是将相应报警寄存器的最高位AE置0。若同时置AIE=1,则在AF置1的同时将在/INT引脚产生一个中断(低电平有效),清除中断信号的方法是软件清A

26、F。由此看出,AIE相当于单片机中的中断允许控制位,而AF相当于中断申请标志位。例:让PCF8563在每小时的30分钟时产生报警并在/INT端产生一个中断给单片机P87LPC764。 取原控制信息(目的是不破坏原来的配置) MOV SLA,#0A2H ;取器件地址 MOV SUBA,#01H ;取中断控制字节地址 MOV NUMBYTE,#01H LCALL IRDNBYTE ;读中断控制字节信息 RET 中断配置 MOV A,MRD ORL A,#02H ;置AIE=1 MOV MTD,A MOV SUBA,#01H ;取中断控制字节地址 MOV NUMBYTE,#01H LCALL IWRNBYTE ;送中断控制字节命令 RET 报警配置MOV MTD,#30H ;30分报警时刻送发送缓冲区(最高位AE为0,报警有效) MOV SUBA,#09H ;取小时报警控制字节地址 MOV NUMBYTE,#01H LCALL IWRNBYTE ;送报警信息 RET以上配置完成后,即可在/INT脚产生中断信号,在软件清除AF位之前,该中断信号一直有效。清除中断信号的程序如下: 取原控制信息(目的是不破坏原来的配置) MOV SLA,#0A2H ;取器件地址 MOV SUBA,#01H ;取中断控制字节地址 MOV

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1