现在的位置: 首页 > 综合 > 正文

2440 RTC Datasheet简单说明

2013年11月08日 ⁄ 综合 ⁄ 共 1319字 ⁄ 字号 评论关闭

Overview:

RTC在系统电源关闭的时候可以利用备份电池工作。RTC可以向CPU传输8位的BCD码数据。数据包括秒、分、

时、星期、日期、月和年。RTC单元在32.768kHz的外部时钟下工作并且可以产生alarm。

 

Features

1、RCD码

2、闰年产生

3、警报功能:警报的终端或者从从断电模式唤醒

4、解决了2000年的问题

5、独立的电源管脚(RTCVDD)

6、可以产生毫秒级的tick中断来支持RTOS内核的tick

 

Real Time Clock Block Diagram:

RTC

 

LEAP YEAR GENERATOR:

闰年产生器可以通过BCDDATE、BCDMON和BCDYEAR来来决定每个月的天数是28、29、30还是31.

8位可以表示两个BCD码,所以不能断定‘00’年(末尾是两个零的年份)是否是闰年。比如,它不能分辨1900和

2000年。为了解决这个问题,S3C2440的RTC模块设计了硬件裸机去支持2000的闰年。注意1900不是闰年而2000

年时闰年。因此,在2440中,00表示2000,而不是1900.

 

READ/WRITE REGISTERS:

RTCCON寄存器的0位必须置高,才能写RTC模块的BCD寄存器。

为了显示秒、分、时、星期、日期、月和年,CPU必须读取BCDSEC、BCDMIN、BCDHOUR、BCDDAY

BCDDATE、BCDMON和BCDYEAR寄存器的数据。然而当多个寄存器被读取时会存在1秒的偏离。比如,当

用户从BCDYEAR到BCDMIN读取数据,结果是2059年,12月,31号,23点,59分。当用户读取BCDSEC

寄存器,寄存器的值为1--59(秒),现在看没有问题,但是,如果这个值是0秒,那年月日时分会被改为

2060年1月1号0点0分,因为前面提到的1秒的偏离。这种情况下,用户应该重新读取BCDYEAR到BCDSEC寄存器

如果BCDSEC的值是0.

 

BACKUP BATTERY OPERATION:

RTC可以由备份电池驱动,备份电池在系统没电的时候通过连接到RTC的RTCVDD管脚提供电源。如果系统没有

供电,CPU和RTC会锁住,备份电池仅仅驱动晶振电路和BCD的计数器来最小化电源损耗。

 

ALARM FUNCTION:

RTC可以再电源关闭模式或正常模式下产生警报信号。在正常操作模式下,警报的中断(INT_RTC)是可用的。

在电源关闭模式,电源管理的唤醒信号(PMWKUP)和INT_RTC都是可用的。RTC警报寄存器(RTCALM)可以

设置警报是否可用和警报时间条件的设置。

 

TICK TIME INTERRUPT:

RTC的tick被用来c作为中断请求。TICNT寄存器有一个中断使能位和计数值。当计数值为‘0’时,tick中断产生。

中断的时间如下计算:

Period=(n+1)/128 second

n:tick time count value(1--127)

RTCde tick可以用来RTOS内核的tick。如果tick由RTC的tick产生,那么RTOS中的时间相关函数会一直同步于RTC.

 

 剩下的就是寄存器的用法了,这些在完善RTC字符驱动的过程中学习。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

抱歉!评论已关闭.