嵌入式Linux(十三)RTC实时时钟
1. SNVS
I.MX6U的RTC在SNVS里面。SNVS里面主要是一些低功耗外设,包括RTC,单调计数器,一些通用寄存器。SNVS分为高低功耗域。高功耗域SNVS_HP在系统掉电以后不维持,低功耗域SNVS_LP由纽扣电池单独供电,会一直处于上电状态。LP里面是SRTC也是实际上用的,HP里的RTC由于掉电复位所以不使用。
SRTC需要一个32.768KHz的时钟,寄存器SNVS_LPSRTCMR和SNVS_LPSRTCLR保存秒数,从1970年1月1日开始加上秒数就是当前时间。此外在寄存器SNVS_LPAR中写入闹钟时间,当前时间和闹钟时间一致的时候可以产生闹钟中断。自己做产品的阶段一般用的是外部高精度的RTC,不会用这种内部RTC。
SRTC使用:只需要打开RTC,然后不断读取寄存器时间值,不断向RTC计数器写入时间值更新时间。
2. SRTC相关寄存器
1)SNVS_HPCOMR寄存器:
NPSWA_EN(bit31):非特权软件访问控制位,需要访问的话设置为1,这样所有软件都可以访问SNVS的所有寄存器。
2)SNVS_LPCR寄存器:
SRTC_ENV(bit0):为0使能STC计数器。
3)SNVS_SRTCMR & SNVS_SRTCLR:
保存着RTC的秒数,MR保存的高15位,LR保存的低17位,一共32位。需要修改这两个寄存器的值(更新时间)之前要先关闭SRTC。
3. SRTC配置步骤:
①初始化SNVS_LP中的SRTC。
②设置RTC时间。
③使能RTC。
嵌入式Linux(十三)RTC实时时钟相关推荐
- 【原创】ARM LINUX 外部RTC实时时钟驱动移植(RX8025)
[原创]ARM LINUX 外部RTC实时时钟驱动移植(RX8025) Author: chad Mail: linczone@163.com 开发板:AT91SAM9260 内核版本:linux-2 ...
- Linux驱动开发: Linux下RTC实时时钟驱动
Linux内核版本: 3.5 1.1 Linux下RTC时间的读写分析 1.1.1 系统时间与RTC实时时钟时间 Linux系统下包含两个时间:系统时间和RTC时间. 系统时间:是由主芯片的定时器进行 ...
- 25 linux ndk 头文件_正点原子Linux第二十五章RTC实时时钟实验
1)资料下载:点击资料即可下载 2)对正点原子Linux感兴趣的同学可以加群讨论:935446741 3)关注正点原子公众号,获取最新资料更新 第二十五章RTC实时时钟实验 实时时钟是很常用的一个外设 ...
- 嵌入式--RTC实时时钟原理及相关库函数功能
一.RTC实时时钟原理 1.RTC实时时钟是一个独立的定时器,可以提供日期时间或者闹钟的功能.其核心是通过32位可编程计数器RTC_CNT计数来进行时间配置. 2.图1中RTCCLK为RTC时钟源,其 ...
- 嵌入式Linux下的实时性增强方案
嵌入式Linux下的实时性增强方案 摘 要: 分析了嵌入式Linux在实时性方面的不足,针对Linux2.6内核的中断运行机制.内核不可抢占性.自旋锁及大内核锁等问题进行研究,提出相应的实时性改进方 ...
- RTC实时时钟(学习笔记)
RTC实时时钟特征与原理 RTC(Real Time Clock):实时时钟. RTC是个独立的定时器.RTC模块拥有一个连续计数的计数器,在相应的软件配置下,可以提供时钟日历的功能.修改计数器的值可 ...
- 十九、RTC实时时钟
一..RTC实时时钟工作框图 RTC 由两个主要部分组成,第一部分(APB1 接口)用来和 APB1 总线相连.此单元还包含一组 16 位寄存器,可通过 APB1 总线对其进行读写操作.APB1 接口 ...
- stm32f4 RTC实时时钟解析
RTC是什么–简介 RTC,英文全称:Real-time clock,中文名称:实时时钟,是指可以像时钟一様输出实际时间的电子设备,一般会是集成电路,因此也称为时钟芯片.实时时钟芯片是日常生活中应用最 ...
- STM32——RTC实时时钟原理+BKP寄存器原理
一.RTC实时时钟特征与原理 1.RTC(Real Time Clock):实时时钟 2.RTC是个独立的BCD定时器/计数器.RTC提供一个日历时钟,两个可编程闹钟中断,以及一个具有中断功能的周期性 ...
- STM32之RTC实时时钟
RTC实时时钟简介: STM32的RTC外设,实质是一个掉电后还继续运行的定时器,从定时器的角度来看,相对于通用定时器TIM外设,它的功能十分简单,只有计时功能(也可以触发中断).但是从掉电还能继续运 ...
最新文章
- linux入门之目录结构
- SCCM 2012 Part 2 部署前AD准备
- Linux下挂载与解除挂载U盘
- VTK:PolyData之DetermineArrayDataTypes
- 深度学习在CTR中的应用
- c#跨线程操作控件(有UI操作)|及多线程操作
- 【error】深度优先搜索TypeError: unhashable type: ‘list‘
- 使用Caffeine和Spring Boot的多个缓存配置
- Eclipse MicroProfile:您需要了解的5件事
- 论文浅尝 - CIKM2020 | 用于推荐系统的多模态知识图谱
- Python操作Excel最好选择什么模块?
- paip.输入法编程---输入法ATIaN历史记录 c823
- 【SVN】汉化包 汉化失败 问题解决
- 十折交叉验证python_机器学习(十二)交叉验证实例
- 硬件设计1:常用元器件的选型理论依据
- 前端基础知识--Document的常用属性和常用函数
- 齐齐哈尔大学计算机调剂,2020年齐齐哈尔大学硕士研究生调剂复试工作方案
- cocos2d-x教程和项目实例集合
- 面试官:请你说一说vuex的五个属性,分别是什么,区别和用途说一下
- position中的absolute与relative的区别
热门文章
- 洛谷-3387 【模板】缩点
- 从0开始构建一个k8s集群
- 计算机中丢失msvcp140.dll无法启动此程序怎么办(修复教程)
- info在python中的意思_为什么我没有在python中收到日志INFO消息?
- java计算机毕业设计列车票务信息管理系统源程序+mysql+系统+lw文档+远程调试
- 开关柜绝缘状态检测与故障诊断
- 重新启动linux系统应使用 命令实现,在重新启动Linux系统的同时把内存中的信息写入硬盘,应使用哪个命令...
- asp.net 鲜花销售系统1058毕业设计
- C语言实现设置桌面壁纸
- 如何关闭Windows蜂鸣器的嘟嘟声