PCF8563.docx
- 文档编号:9900725
- 上传时间:2023-02-07
- 格式:DOCX
- 页数:41
- 大小:482.50KB
PCF8563.docx
《PCF8563.docx》由会员分享,可在线阅读,更多相关《PCF8563.docx(41页珍藏版)》请在冰豆网上搜索。
PCF8563
2PCF8563简介
图1为PCF8563内部结构。
PCF8563内部包括16个8位寄存器,可自动增量的地址寄存器,内置32.768Hz的振荡器(带有一个内部集成的电容),分频器(用于给实时时钟RTC提供源时钟),可编程时钟输出,定时器,报警器,掉电检测器和400kHz的I2C总线接口。
所有16个寄存器设计成可寻址的8位并行寄存器,但不是所有位都有用。
前2个寄存器(内存地址00H,01H)用于控制寄存器和状态寄存器,其中内存地址02H~08H用于时钟计数器(秒~年计数器),地址09H~0CH用于报警寄存器(定义报警条件),地址ODH控制CLKOUT引脚的输出频率,地址OEH和OFH分别用于定时器控制寄存器和定时器寄存器。
秒、分钟、小时、日、月、年、分钟报警、小时报警、日报警寄存器,编码格式为BCD,星期和星期报警寄存器不以BCD格式编码。
3系统硬件设计
硬件电路设计包括PCF8563时钟,日历器件与AT89S52单片机的接口电路、HS12864液晶显示电路以及键盘电路3个部分。
AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8KB在系统可编程Flash存储器;使用高密度非易失存储器技术制造,与T业80C51产品指令和引脚完全兼容:
片上Flash允许程序存储器在系统可编程,亦适用于常规编程器。
具有灵巧的8位CPU和在系统可编程Flash,使其为众多嵌入式控制应用系统提供高灵活、超高效的解决方案。
PCF8563采用32.768kHz可编程时钟输出频率,I2C总线是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据。
单片机与PCF8563之间双向传送数据,最高传送速率为100Kb/s。
FC总线的优点是简单和有效。
由于接口直接在组件之上,因此,I2C总线占用的空间非常小,减少了电路板的空间和器件引脚的数量,降低了成本。
图2为PCF8563与AT89S52单片机的接口电路,PCF8563的SCL与单片机的引脚P14连接;SDA与单片机的引脚P15连接,实现时间、日期等数据的读取。
图3为HS12864液晶显示电路.配合单片机软件程序的编制和调试,将PCF8563中的时钟信息从P01~P07端口输出到液晶显示器,完成时间、日期等数据的显示。
4系统软件设计
系统软件主要完成系统的初始化和系统控制,即:
初始化晶体振荡器、I/O端口、定时器及读取PCF8563中的数据、液晶显示程序等。
在这期间扫描键盘,判断是否有键按下,如果有键按下,执行相应的操作。
系统读取PCF8563中数据的C语言程序如下:
5结束语
介绍采用AT89S52单片机为主控器件的电子时钟系统的设计与实现。
设计电子时钟系统时选用PCF8563时钟/日历器件,由3.3V直流电源供电,简化了硬件电路,提高了系统可靠性,通过HS12864液晶显示器能够准确显示时间。
实际应用证明该电子时钟操作简单、准确性高、体积小、功耗低,且具有良好的抗干扰性能。
一、概述
PCF8563是PHILIPS公司推出的一款工业级内含I2C总线接口功能的具有极低功耗的多功能时钟/日历芯片。
PCF8563的多种报警功能、定时器功能、时钟输出功能以及中断输出功能能完成各种复杂的定时服务,甚至可为单片机提供看门狗功能。
内部时钟电路、内部振荡电路、内部低电压检测电路(1.0V)以及两线制I2C总线通讯方式,不但使外围电路及其简洁,而且也增加了芯片的可靠性。
同时每次读写数据后,内嵌的字地址寄存器会自动产生增量。
当然作为时钟芯片,PCF8563亦解决了2000年问题。
因而,PCF8563是一款性价比极高的时钟芯片,它已被广泛用于电表、水表、气表、电话、传真机、便携式仪器以及电池供电的仪器仪表等产品领域。
特性
l 宽电压范围1.0~5.5V,复位电压标准值Vlow=0.9V;
l 超低功耗:
典型值为0.25μA(VDD=3.0V,Tamb=25℃);
l 可编程时钟输出频率为:
32.768KHz、1024Hz、32Hz、1Hz;
l 四种报警功能和定时器功能;
l 内含复位电路、振荡器电容和掉电检测电路;
l 开漏中断输出;
l 400kHzI2C总线(VDD=1.8—5.5V),其从地址:
读,0A3H;写,0A2H。
PCF8563的管脚排列及描述如图1及表1所示。
表1 PCF8563管脚描述
符号
管脚号
描 述
OSCI
1
振荡器输入
OSCO
2
振荡器输出
/INT
3
中断输出(开漏;低电平有效)
VSS
4
地
SDA
5
串行数据I/O
SCL
6
串行时钟输入
CLKOUT
7
时钟输出(开漏)
VDD
8
正电源
图1 PCF8563管脚排列图
二、PCF8563的基本原理
PCF8563有16个8位寄存器:
一个可自动增量的地址寄存器,一个内置32.768KHz的振荡器(带有一个内部集成的电容),一个分频器(用于给实时时钟RTC提供源时钟),一个可编程时钟输出,一个定时器,一个报警器,一个掉电检测器和一个400KHzI2C总线接口。
所有16个寄存器设计成可寻址的8位并行寄存器,但不是所有位都有用。
前两个寄存器(内存地址00H,01H)用于控制寄存器和状态寄存器,内存地址02H~08H用于时钟计数器(秒~年计数器),地址09H~0CH用于报警寄存器(定义报警条件),地址0DH控制CLKOUT管脚的输出频率,地址0EH和0FH分别用于定时器控制寄存器和定时器寄存器。
秒、分钟、小时、日、月、年、分钟报警、小时报警、日报警寄存器,编码格式为BCD,星期和星期报警寄存器不以BCD格式编码。
当一个RTC寄存器被读时,所有计数器的内容被锁存,因此,在传送条件下,可以禁止对时钟/日
历芯片的错读。
1.报警功能模式
一个或多个报警寄存器MSB(AE=AlarmEnable报警使能位)清0时,相应的报警条件有效,这样,一个报警将在每分钟至每星期范围内产生一次。
设置报警标志位AF(控制/状态寄存器2的位3)用于产生中断,AF只可以用软件清除。
2.定时器
8位的倒计数器(地址0FH)由定时器控制寄存器(地址0EH,参见表23)控制,定时器控制寄存器用于设定定时器的频率(4096,64,1,或1/60Hz),以及设定定时器有效或无效。
定时器从软件设置的8位二进制数倒计数,每次倒计数结束,定时器设置标志位TF(参见表5),定时器标志位TF只可以用软件清除,TF用于产生一个中断(/INT),每个倒计数周期产生一个脉冲作为中断信号。
TI/TP(参见表5)控制中断产生的条件。
当读定时器时,返回当前倒计数的数值。
3. CLKOUT输出
管脚CLKOUT可以输出可编程的方波。
CLKOUT频率寄存器(地址0DH;参见表21)决定方波的频率,CLKOUT可以输出32.768KHz(缺省值),1024,32,1Hz的方波。
CLKOUT为开漏输出管脚,上电时输出有效,无效时输出为高阻抗。
4. 复位
PCF8563包含一个片内复位电路,当振荡器停止工作时,复位电路开始工作。
在复位状态下,I2C总线初始化,寄存器TF、VL、TD1、TD0、TESTC、AE被置逻辑1,其它的寄存器和地址指针被清0。
5.掉电检测器和时钟监控
PCF8563内嵌掉电检测器(如图2所示),当VDD低于Vlow时,位VL(VoltageLow,秒寄存器的位7)被置1,用于指明可能产生不准确的时钟/日历信息,VL标志位只可以用软件清除.当VDD慢速降低(例如以电池供电)达到Vlow时,标志位VL被设置,这时可能会产生中断。
图2 掉电检测
6. PCF8563内部寄存器
PCF8563共有16个寄存器,其中00H~01H为控制方式寄存器、09H~0CH为报警功能寄存器、0DH为时钟输出寄存器、0EH和0FH为定时器功能寄存器、02H~08H为秒~年时间寄存器。
各寄存器的位描述如表2及3.14所示。
表2 二进制格式寄存器概况
地址
寄存器名称
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
00H
控制/状态寄存器1
TEST1
0
STOP
0
TESTC
0
0
0
01H
控制/状态寄存器2
0
0
0
TI/TP
AF
TF
AIE
TIE
0DH
CLKOUT输出寄存器
FE
-
-
-
-
-
FD1
FD0
0EH
定时器控制寄存器
TE
-
-
-
-
-
TD1
TD0
0FH
定时器倒计数
数值寄存器
定时器倒计数数值(二进制)
表3 BCD格式寄存器概况
地址
寄存器名称
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
02h
秒
VL
00~59BCD码格式数
03h
分钟
-
00~59BCD码格式数
04h
小时
-
-
00~59BCD码格式数
05h
日
-
-
01~31BCD码格式数
06h
星期
-
-
-
-
-
0~6
07h
月/世纪
C
-
-
01~12BCD码格式数
08h
年
00~99BCD码格式数
09h
分钟报警
AE
00~59BCD码格式数
0Ah
小时报警
AE
-
00~23BCD码格式数
0BH
日报警
AE
-
01~31BCD码格式数
0CH
星期报警
AE
-
-
-
-
0~6
注:
标明“-”的位无效
(1)控制/状态寄存器1
表4 控制/状态寄存器1位描述(地址00H)
Bit
符号
描 述
7
TEST1
TEST1=0,普通模式;TEST1=1,EXT_CLK测试模式
5
STOP
STOP=0,芯片时钟运行;STOP=1,所有芯片分频器异步置逻辑0。
芯片时钟停止运行(CLKOUT在32.768kHz时可用)
3
TESTC
TESTC=0,电源复位功能失效(普通模式时置逻辑0)
TESTC=1,电源复位功能有效
6,4,2,1,0
0
缺省值置逻辑0
(2)控制/状态寄存器2
表5 控制/状态寄存器2位描述(地址01H)
Bit
符号
描述
7,6,5
0
缺省值置逻辑0
4
TI/TP
TI/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和TIE都置“1”时的逻辑或。
AIE=0,报警中断无效;AIE=1,报警中断有效
TIE=0,定时器中断无效;TIE=1,定时器中断有效
0
TIE
表6 /INT操作(bitTI/TP=1)
源时钟
(Hz)
/INT周期
n=1
n>1
4096
1/8192
1/4096
64
1/128
1/64
1
1/64
1/64
1/60
1/64
1/64
注1.TF和/INT同时有效
注2.n为倒计数定时器的数值,当n=0时定时器停止工作。
表7 AF和TF值描述
R/W
Bit:
AF
Bit:
TF
值
描述
值
描述
Read读
0
1
报警标志无效
报警标志有效
0
1
定时器标志无效
定时器标志有效
Write写
0
1
报警标志被清除
报警标志保持不变
0
1
定时器标志被清除
定时器标志保持不变
(3)秒、分钟和小时寄存器
表8秒/VL寄存器位描述(地址02H)
Bit
符号
描 述
7
VL
VL=0:
保证准确的时钟/日历数据
VL=1:
不保证准确的时钟/日历数据
6~0
<秒>
代表BCD格式的当前秒数值,值为00~99
例如:
<秒>=1011001,代表59秒
表9 分钟寄存器位描述(地址03H)
Bit
符号
描 述
7
-
无效
6~0
<分钟>
代表BCD格式的当前分钟数值,值为00~59
表10 小时寄存器位描述(地址04H)
Bit
符号
描 述
7~6
-
无效
5~0
<小时>
代表BCD格式的当前小时数值,值为00~23
(4)日、星期、月/世纪和年寄存器
表11 日寄存器位描述(地址05H)
Bit
符号
描 述
7~6
-
无效
5~0
<日>
代表BCD格式的当前日数值,值为01~31。
当年计数器的值是闰年时,PCF8563自动给二月增加一个值,使其成为29天
表12 星期寄存器位描述(地址06H)
Bit
符号
描 述
7~3
-
无效
2~0
<星期>
代表当前星期数值0~6,参见表13,这些位也可由用户重新分配
表13 星期分配表
日(Day)
Bit2
Bit1
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
符号
描 述
7
C
世纪位;C=0指定世纪数为20××,C=1指定世纪数为19××,“××”为年寄存器中的值,参见表16。
当年寄存器中的值由99变为00时,世纪位会改变
6~5
-
无用
4~0
<月>
代表BCD格式的当前月份,值为01~12;参见表15
表15月分配表
月份
Bit4
Bit3
Bit2
Bit1
Bit0
一月
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
符号
描 述
7~0
<年>
代表BCD格式的当前年数值,值为00~99
(5)报警寄存器
向一个或多个报警寄存器写入合法的分钟、小时、日或星期数值并且它们相应的AE(AlarmEnable)位为逻辑0,当这些数值与当前的分钟、小时、日或星期数值相等,标志位AF(AlarmFlag)被设置,AF保存设置值直到被软件清除为止,AF被清除后,只有在时间增量与报警条件再次相匹配时才可再被设置。
报警寄存器在它们相应位AE置为逻辑1时将被忽略。
表17 分钟报警寄存器位描述(地址09H)
Bit
符号
描 述
7
AE
AE=0,分钟报警有效;AE=1,分钟报警无效
6~0
<分钟报警>
代表BCD格式的分钟报警数值,值为00~59
表18 小时报警寄存器位描述(地址0AH)
Bit
符号
描 述
7AE
AE
AE=0,小时报警有效;AE=1,小时报警无效
6~0
<小时报警>
代表BCD格式的小时报警数值,值为00~23
表19 日报警寄存器位描述(地址0BH)
Bit
符号
描 述
7
AE
AE=0,日报警有效;AE=1,日报警无效。
6~0
<日报警>
代表BCD格式的日报警数值,值为00~31
表20 星期报警寄存器位描述(地址0CH)
Bit
符号
描 述
7
AE
AE=0,星期报警有效;AE=1,星期报警无效
6~0
<星期报警>
代表BCD格式的星期报警数值,值为0~6
(6)CLKOUT频率寄存器
表21 CLKOUT频率寄存器位描述(地址0DH)
Bit
符号
描 述
7
FE
FE=0,CLKOUT输出被禁止并设成高阻抗
FE=1,CLKOUT输出有效
6~2
-
无效
1
0
FD1
FD0
用于控制CLKOUT的频率输出管脚(fCLKOUT),
参见表22
表22 CLKOUT频率选择表
FD1
FD0
fCLKOUT
FD1
FD0
fCLKOUT
0
0
32.768kHz
1
0
32Hz
0
1
1024Hz
1
1
1Hz
(7)倒计数定时器寄存器
定时器寄存器是一个8位字节的倒计数定时器,它由定时器控制器中位TE决定有效或无效,定时器的时钟也可以由定时器控制器选择,其它定时器功能,如中断产生,由控制/状态寄存器2控制。
为了能精确读回倒计数的数值,I2C总线时钟SCL的频率应至少为所选定定时器时钟频率的两倍。
表23 定时器控制器寄存器位描述(地址0EH)
Bit
符号
描 述
7
TE
TE=0,定时器无效;TE=1,定时器有效
6~2
-
无用
1
TD1
定时器时钟频率选择位,决定倒计数定时器的时钟频率,见表24,不用时TD1和TD0应设为“11”(1/60Hz),以降低电源损耗
0
TD0
表24 定时器时钟频率选择
TD1
TD0
定时器时钟频率(Hz)
0
0
4096
0
1
64
1
0
1
1
1
1/60
表25 定时器倒计数数值寄存器位描述(地址0FH)
Bit
符 号
描 述
7~0
<定时器倒计数数值>
倒计数数值“n”,
倒计数周期=n/时钟频率
7.EXT_CLK测试模式
测试模式用于在线测试、建立测试模式和控制RTC的操作。
测试模式由控制/状态寄存器1的位TEST1设定,这时CLKOUT管脚成为输入管脚。
在测试模式状态下,通过CLKOUT管脚输入的频率信号代替片内的64Hz频率信号,每64个上升沿将产生1秒的时间增量。
注意:
进入EXT_CLK测试模式时时钟不与片内64Hz始终时钟同步,也确定不出预分频的状态。
操作举例
(1)进入EXT_CLK测试模式;设置控制/状态寄存器1的位7(TEST=1)。
(2)设置控制/状态寄存器1的位5(STOP=1)。
(3)清除控制/状态寄存器1的位5(STOP=0)。
(4)设置时间寄存器(秒、分钟、小时、日、星期、月/世纪和年)为期望值。
(5)提供32个时钟脉冲给CLKOUT。
(6)读时间寄存器观察第一次变化。
(7)提供64个时钟脉冲给CLKOUT。
(8)读时间寄存器观察第二次变化;需要读时间寄存器的附加增量时,重复步骤(7)和(8)。
8.电源复位(POR)替换模式
POR的持续时间直接与振荡器的起动时间有关。
一种内嵌的长时间起动的电路可使POR失效,这样可使设备测试加速。
这种模式的设定要求I2C总线管脚SDA和SCL的信号波形如图3所示,图中所有的时间值为所需的最小值。
当进入替换模式时,芯片立即停止复位,操作通过I2C总线进入EXT_CLK测试模式。
设置位TESTC逻辑0可消除替换模式,再次进入替换模式只有在设置TESTC为逻辑1后进行。
在普通模式时设置TESTC为逻辑0没有意义,除非想阻止进入POR替换模式。
图3 POR时序图
9.石英晶片频率调整
方法
(1):
定值OSCI电容――计算所需的电容平均值,用此值的定值电容,通电后在CLKOUT管脚上测出的频率应为32.768kHz,测出的频率值偏差取决于石英晶片,电容偏差和器件之间的偏差(平均为±5×10-6)。
平均偏差可达5分钟/年。
方法
(2):
OSCI微调电容――可通过调整OSCI管脚的微调电容使振荡器频率达到精确值,这时可测出通电时管脚CLKOUT上的32.768kHz信号。
方法(3):
OSCI输出—直接测量管脚OSCI的输出。
三、PCF8563与单片机的接口软件及功能应用举例
按I2C总线协议规约,PCF8563有唯一的器件地址0A2H。
如图4所示为PCF8563应用电路原理图,下面首先给出基本的接口软件,然后举例说明各种功能应用。
注:
电容C3的取值范围为1~20pF。
图4 PCF8563应用电路原理图
1.时钟的读取和写入
(1) 读时钟:
下面的程序将秒~年共七个字节的时间信息读出并放入MRD为首址的接
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- PCF8563
![提示](https://static.bdocx.com/images/bang_tan.gif)