s3c6410硬件RTC实时时钟

发布者:asdfrewqpp最新更新时间:2016-07-08 来源: eefocus关键字:s3c6410  硬件RTC  实时时钟 手机看文章 扫描二维码
随时随地手机看文章
1、OVERVIEW综述
The Real Time Clock (RTC) unit can be operated by the backup battery when the system power is off. The data
include the time by second, minute, hour, date, day, month, and year. The RTC unit works with an external 32.768

KHz crystal and can perform the alarm function.

当系统电源关闭时,通过备用电源可以运行实时时钟(RTC)单元。数据包含的时间,即秒,分钟,小时,日期,日,月和年。RTC 工作由一个外部32.768kHz 的晶体驱动,并可以执行报警功能。

2、FEATURES特性

The Real Time Clock includes the following features:
• BCD number: second, minute, hour, date, day, month, and year. BCD编码。
• Leap year generator 闰年发生器。
• Alarm function: alarm-interrupt or wake-up from power-off mode.报警功能:报警中断或从断电模式中唤醒。
• Tick counter function: tick-interrupt or wake-up from power-off mode.时钟计数功能:时钟节拍中断或从断电模式中唤醒。
• Year 2000 problem is removed.这个在下面说,千年虫问题。
• Independent power pin (RTCVDD).
• Supports millisecond tick time interrupt for RTOS kernel time tick.可以用于实时操作系统的系统时钟

3、REAL TIME CLOCK OPERATION DESCRIPTION实时时钟的结构框图

s3c6410硬件RTC实时时钟

3.1、 LEAP YEAR GENERATOR闰年发生器

The leap year generator can determine the last date of each month out of 28, 29, 30, or 31, based on data from
BCDDAY, BCDMON, and BCDYEAR. This block considers leap year in deciding on the last date. An 8-bit counter
can only represent 2 BCD digits, therefore it cannot decide whether “00” year (the year with its last two digitszeros) is a leap year or not.To solve this problem,the RTC block in 6410 has hard-wired logic to support the leap year in 2000. Note 1900 is not leap year while2000 is leap year. Therefore, two digits of 00 in 6410 denote 2000, not 1900.So, RTC in 6410 supports from 1901 to 2099.

闰年发生器通过BCDDAY, BCDMON 和BCDYEAR 的数据来决定每个月的最后一天是28,29,30 还是31。
这个模块是通过决定最后的日期来判断闰年的。一个8 位的计数器只能代表两个BCD 数字,因此它不能决
定‘00’年(年的最后两个数字为‘00’)是不是闰年. 举例来说,它不能区分1900 年和2000 年。要解决这个问题,S3C6410 中的实时时钟模块,在2000 年中,硬连接逻辑支持闰年。注意1900 年不是闰年,
而2000 年是闰年。因此在S3C6410 中的‘00’的两个数字表示2000 而不是1900。所以6410支持1901年到2099年。

3.2、READ/WRITE REGISTER读写寄存器

Bit 0 of the RTCCON register must be set high in order to write the BCD register in RTC block. To display the
second, minute, hour, day, date, month, and year, the CPU must read the data in BCDSEC, BCDMIN, BCDHOUR,
BCDDATE, BCDDAY, BCDMON, and BCDYEAR registers respectively in the RTC block. However, a one second
deviation may exist because multiple registers are read. For example, when the user reads the registers from
BCDYEAR to BCDMIN, the result is assumed to be 2059 (Year), 12 (Month), 31 (Date), 23 (Hour) and 59 (Minute).
When the user read the BCDSEC register and the value ranges from 1 to 59 (Second), there is no problem, but, if
the value is 0 sec., the year, month, date, hour, and minute may be changed to 2060 (Year), 1 (Month), 1 (Date), 0
(Hour) and 0 (Minute) because of the one second deviation that was mentioned. In this case, the user must reread
from BCDYEAR to BCDSEC if BCDSEC is zero.

RTCCON 寄存器的位0 必须被设置为高位,为了是可以写入实时时钟模块中的BCD 寄存器,以显示秒,分钟,小时,日期,日,月和年。CPU 必须分别在RTC 模块的BCDSEC, BCDMIN, BCDHOUR, BCDDATE, BCDDAY,
BCDMON 和 BCDYEAR 寄存器中读取数据。但是,因为多个寄存器被读取,所以可能有一秒的偏差存在。例
如,当用户从BCDYEAR 到BCDMIN 读取寄存器时,结果假设为2059(年),12(月),31(日期),23(小时)
和59(分钟)。当用户读取BCDSEC 寄存器及值范围从1 到59(秒)时,没有问题,但值为0 秒,年,月,日,小时和分钟将被改变为2060(年),1(月),1(日期),0(小时)和0(分钟),就是因为这一秒的变差。在这种情况下,如果BCDSEC 置0,用户必须从BCDYEAR 到BCDSEC 重新读取。

3.4 、ALARM FUNCTION报警功能,可以对照看上面的那个结构框图
The RTC generates ALARM_INT(alarm interrupt) and ALARM_WK(alarm wake-up) at a specified time in the
power-down mode, power off mode or normal operation mode. 

实时时钟在断电模式或正常操作模式的某一特定时间内产生一个报警信号

In normal operation mode, If ALARM register value is a same to BCD register, ALARM_INT is activated as well as the ALARM_WK. 正常模式下, ALARM_INT和ALARM_WK都被激活

In the power-off and powerdown, If ALARM register value is a same to BCD register,ALARM_WK is activated. 在断电模式下或省电模式下,ALARM_WK被激活

The RTC alarm register (RTCALM) determines the alarm enable/disable status and the condition of the alarm time setting.实时时钟报警寄存器(RTCALM),决定了报警启用/禁用的状态和报警时间设置的条件

3.5、 TICK TIME INTERRUPT   中断

The RTC tick time is used for interrupt request. TheRTCCON[8] register has an interrupt enable bit. The count
value reaches ‘0’ when the tick time interrupt occurs. 实时时钟标记时间被用于中断请求。TICNT寄存器有一个中断使能位和一个相关的计数器值。每个时钟脉冲,计数值减一。当TICK TIME中断发生计数器的值达到‘0’,TICK TIME中断发生。中断周期

Then the period of interrupt is as follows:
Period = (n+1)/32768 second (n= tick counter value)

看下图,那个32768是可选的。

s3c6410硬件RTC实时时钟
 

这个和下面这个寄存器有关:

s3c6410硬件RTC实时时钟
 

s3c6410硬件RTC实时时钟
 

公式中的n= tick counter value和下面这个寄存器有关:

s3c6410硬件RTC实时时钟
 

 

3.6、 32.768 KHZ X-TAL CONNECTION EXAMPLE时钟晶振电路

                                       

 

4、寄存器:

 

 

s3c6410的RTC在linux中的驱动(1)的链接地址

关键字:s3c6410  硬件RTC  实时时钟 引用地址:s3c6410硬件RTC实时时钟

上一篇:ARMLinux驱动移植RTC(实时时钟)移植
下一篇:关于STM32中NVIC的理解,带错误例子

推荐阅读最新更新时间:2024-03-16 14:59

S3C2440 RTC实时时钟 驱动分析以及使用(三十)
RTC驱动分析总结: driversrtcrtc-s3c.c s3c_rtc_init platform_driver_register s3c_rtc_probe rtc_device_register( s3c , &pdev- dev, &s3c_rtcops, THIS_MODULE) rtc_dev_prepare cdev_init(&rtc- char_dev, &rtc_dev_fops); rtc_dev_add_device cdev_add linux中的rtc驱动位于drivers/rtc下,里面包含了许多开发平台的RTC驱动,我们这里是以S3C24XX为主,所以它的RTC驱
[单片机]
S3C2440 <font color='red'>RTC</font><font color='red'>实时时钟</font> 驱动分析以及使用(三十)
X1203实时时钟芯片的原理与应用
1 概述 X1203集成电路是一个带时钟/日历和两个闹钟(报警)的实时时钟芯片。它内含双端口时钟和报警器寄存器,这使其即使在读、写操作期间也能精确工作。 该时钟/日历芯片提供了可通过一组寄存器进行控制和读出的功能。时钟使用低成本的32.768kHz晶振输入,能以秒、分、时、日、星期、月和年来单位跟踪时间。X1203具有闰年校正功能,并能对小于31开的月份自动进行调整。 X1203提供了一个VBACK备用电源输入引脚,利用该引脚能使器件用不可充电的电源作备用电源。其电压为2.5~6V。X1203芯睡具有如下特点: ●具有安秒、10秒、分、10分、时、日、月或星期设置的中断输出。 ●有供时基产生的重复报警; ●
[半导体设计/制造]
Linux下s3c6410的GPIO操作(7)
没想到一个小小的GPIO操作函数,竟然写了七篇博客,这应该算是最后一篇了。 1、s3c6410的GPIO操作函数主要涉及到三个文件,如下所示: arch/arm/plat-s3c64xx/gpiolib.c linux/arch/arm/plat-s3c/gpio.c linux/arch/arm/plat-s3c/gpio-config.c 这三个文件中的很多函数都已经讲到了,可以说基本上都讲了,当然,下面这两个函数没讲: int s3c_gpio_cfgpin(unsigned int pin, unsigned int config) { struct s3c_gpio_chip *chip =s
[单片机]
基于S3C6410的ARM11学习(八) 核心初始化之设置外设基地址
下面就是核心初始化的最后一个了。外设基地址初始化。这个操作是告诉CPU外设的基地址是多少。 之前,对这个很疑惑,外设的基地址对于芯片来说,不是已经固定了,还要告诉他基地址是多少干嘛了。STM32就不用这一步操作。这个时候,就要去研究这两种芯片的内核了。S3C6410用的是ARM11的核,而STM32用的是CORTEX-M3的内核。 对于cortex-m3内核,外设的地址就已经是固定了,从0x40000000开始,大小是0.5G。所以不管你是什么芯片,只要你使用了cortex-m3内核,你的外设的基地址就变不了,变的是外设地址对应的外设不一样。所以,就没有必要告诉CPU外设的基地址了,直接操作这些地址即可。CPU会自
[单片机]
基于<font color='red'>S3C6410</font>的ARM11学习(八) 核心初始化之设置外设基地址
STM8的实时时钟PCF8563与红外进出门提醒器
目录: 总体设计 1.基础硬件DIY设计 1)整体原理图 2)外部RTC 电路 3)PCB电路 4)3D_PCB 2.单片机程序设计 1)PCF8563 I2C通信程序 2)main函数逻辑 3.效果展示 1)实物电路顶层图 2)实物电路底层图 3).防水盒内部图 4)整体效果图 用到的工具有: 程序 IAR编译器环境 altium designer 原理图 altium designer PCB 实现的小功能有: ①能通过外部两个红外对管记人数并在OLED上显示 粗略计数人数 ②能通过外部两个红外对 判断人进入或出去,并发出语音提示 ag:人进门: 欢迎光临;人出门: 谢谢惠顾 ③语音整点报时 ④OLED上
[单片机]
STM8的<font color='red'>实时时钟</font>PCF8563与红外进出门提醒器
基于S3C6410芯片实现类人机器人控制系统的设计
智能移动机器人是近年来发展起来的一门综合学科,涉及机械设计、传感检测、人工智能等多方面知识。类人机器人的控制系统分为三个层次:最上层是机器人的策略规划层,利用各种算法实现各部分的功能;中间一层运行各类应用程序的嵌入式实时操作系统;最底层是硬件平台,通过外围接口获得各类数据、信息。 自主机器人利用传感器获取的信息控制机器人的动作。本文根据武术擂台机器人的实际需要,设计了机器人的控制系统,实现摄像头图像采集、处理和舵机控制等功能。 策略规划层中,由于图像信息具有信息丰富、对场景描述完全的特点,主要通过处理摄像头采集的图像信息实现颜色目标定位。这里采用Linux嵌入式操作系统,由于嵌入式系统资源的限制,要求目标识别算法运行效率高
[单片机]
基于<font color='red'>S3C6410</font>芯片实现类人机器人控制系统的设计
ARMLinux驱动移植RTC(实时时钟)移植
硬件平台:FL2440 内核版本:2.6.28 主机平台:Ubuntu 11.04 内核版本:2.6.39 原创作品,转载请标明出处http://blog.csdn.net/yming0221/article/details/6584285 首先修改内核源码/arch/arm/mach-s3c2410/mach-smdk2410.c 添加红色字体部分 static struct platform_device *smdk2410_devices __initdata = { &s3c_device_usb, &s3c_device_lcd, &s3c_device_wdt, &s3c_device_i2c,
[单片机]
ARMLinux驱动移植<font color='red'>RTC</font>(<font color='red'>实时时钟</font>)移植
基于S3C6410的ARM11学习(一) 基础知识
手上有一块OK6410的板子,就想起来花点时间学习下经典的ARM系列ARM11。了解一下ARM11的开发流程,以及怎么跑系统。 ARM11和之前学习的STM32的开发是很不一样的。STM32,都是把代码烧到STM32芯片FLASH中,然后代码从FLASH中执行,而且程序执行是不需要外部挂ram的,因为芯片的内部就集成了一定大小的ram。 而ARM11是不一样的,内部没有FLASH和ram,所以就需要外挂flash设备和ram设备,然后ARM11通过存储控制器来操作这些设备。 从图中就可以直观的看出区别了。对于S3C6410,因为内部没有存储器,所以需要将代码烧录到外挂的FLASH设备,这里FLASH设备可以有多
[单片机]
基于<font color='red'>S3C6410</font>的ARM11学习(一) 基础知识
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
热门活动
换一批
更多
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

更多每日新闻
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved