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;
}
相关推荐
desssq30 分钟前
SPI通信协议
单片机·嵌入式硬件
奇文怪式2 小时前
VSCode+arm-none-eabi-gcc交叉编译+CMake构建+OpenOCD(基于Raspberry Pico RP2040)
arm开发·ide·vscode·rp2040
Imagine Miracle2 小时前
Ubuntu for ARM 更换为阿里云镜像源
arm开发·ubuntu·阿里云
wwwlyj1233212 小时前
arm 精准总线错误与非精准总线错误
arm开发
星辰pid3 小时前
STM32实现四自由度机械臂(SG90舵机)多功能控制(软件篇freertos)
stm32·单片机·嵌入式硬件·机械臂
TESmart碲视12 小时前
HKS201-M24 大师版 8K60Hz USB 3.0 适用于 2 台 PC 1台显示器 无缝切换 KVM 切换器
单片机·嵌入式硬件·物联网·游戏·计算机外设·电脑·智能硬件
small_wh1te_coder12 小时前
硬件嵌入式学习路线大总结(一):C语言与linux。内功心法——从入门到精通,彻底打通你的任督二脉!
linux·c语言·汇编·嵌入式硬件·算法·c
花落已飘13 小时前
STM32中实现shell控制台(shell窗口输入实现)
stm32·单片机·嵌入式硬件
宇钶宇夕16 小时前
针对工业触摸屏维修的系统指南和资源获取途径
单片机·嵌入式硬件·自动化
和风化雨17 小时前
stm32的三种开发方式
stm32·单片机·嵌入式硬件