imx6ull rtc 驱动学习
IMX6ULL RTC 驱动学习
RTC SNVS架构
RTC是由纽扣电池供电,而不是电源域供电的,所以即便板子断电,也能正常运行,
RTC是SNVS模块的外设之一,其SNVS模块整体架构如下:
左边是供电,右边SNVS域(模块)总共分为两个大的部分,HP部分(仍然是板子电源供电),LP部分(由板卡供电,或者纽扣电池供电均可)
我们使用的RTC就是SNVS模块里面的SRTC外设。
其本质还是一个计数器,时钟源固定为37k的晶振
驱动配置
还是老样子:
(可能有外设模块寄存器访问锁)
- 时钟源 (固定为37khz的晶振)
- pin脚(没有用到)
- 协议->寄存器(CR,DR,SR)
1. 使能SNVS block 访问
2. 时钟源配置
无
3. pin
无
4. 寄存器配置
1. 外设协议结构体描述

2. 使能(CR)

3. 禁用(CR)
使能位取反即可
4. 读取秒数
直接读取DR即可
5. 设置秒数
直接配置DR即可