ARM接口编程—RTC(exynos 4412平台)

RTC简介

RTC(Real Time Clock)即实时时钟,它是一个可以为系统提供精确的时间基准的元器件,RTC一般采用精度较高的晶振作为时钟源,有些RTC为了在主电源掉电时还可以工作,需要外加电池供电。

RTC内部原理

RTC寄存器

RTC控制寄存器

用于使能RTC控制和闹铃相关控制

RTC时间寄存器

用于存储BCD格式秒

用于存储BCD格式分钟

用于存储BCD格式小时

用于存储BCD格式星期

用于存储BCD格式天

用于存储BCD格式月

用于存储BCD格式年

存储当前的计数值

代码实现:

c 复制代码
#include "exynos_4412.h"

int main()
{
	unsigned int OldSec = 0, NewSec = 0;

	/*使能RTC控制*/
	RTCCON = RTCCON | 1;
	/*校准时间信息*/
	RTC.BCDYEAR = 0x023;
	RTC.BCDMON  = 0x12;
	RTC.BCDDAY  = 0x7;
	RTC.BCDWEEK = 0x31;
	RTC.BCDHOUR = 0x23;
	RTC.BCDMIN  = 0x59;
	RTC.BCDSEC  = 0x50;
	/*禁止RTC控制*/
	RTCCON = RTCCON &  (~(1));

	while(1)
	{
		NewSec = RTC.BCDSEC;
		if(OldSec != NewSec)
		{
			printf("20%x-%x-%x %x %x:%x:%x\n",
			RTC.BCDYEAR, 
			RTC.BCDMON, 
			RTC.BCDWEEK, 
			RTC.BCDDAY, 
			RTC.BCDHOUR, 
			RTC.BCDMIN, 
			RTC.BCDSEC);	
			OldSec = NewSec;
		}
	}
	return 0;
}
相关推荐
MingYue_SSS4 分钟前
开关电源抄板学习
经验分享·笔记·嵌入式硬件·学习
玉树临风江流儿19 分钟前
炸鸡派-定时器基础例程
单片机·嵌入式硬件
is08151 小时前
STM32的 syscalls.c 和 sysmem.c
c语言·stm32·嵌入式硬件
学不动CV了2 小时前
数据结构---链表结构体、指针深入理解(三)
c语言·arm开发·数据结构·stm32·单片机·链表
szxinmai主板定制专家3 小时前
【精密测量】基于ARM+FPGA的多路光栅信号采集方案
服务器·arm开发·人工智能·嵌入式硬件·fpga开发
Paper_Love3 小时前
x86-64_windows交叉编译arm_linux程序
arm开发·windows
工业互联网专业6 小时前
汇编与接口技术:8259中断实验
汇编·单片机·嵌入式硬件·8259中断实验
desssq8 小时前
SPI通信协议
单片机·嵌入式硬件
奇文怪式10 小时前
VSCode+arm-none-eabi-gcc交叉编译+CMake构建+OpenOCD(基于Raspberry Pico RP2040)
arm开发·ide·vscode·rp2040
Imagine Miracle10 小时前
Ubuntu for ARM 更换为阿里云镜像源
arm开发·ubuntu·阿里云