关于rtc驱动的问题 [问题点数:20分]

Bbs1
本版专家分:0
结帖率 33.33%
Linux开发十_rtc驱动
<em>rtc</em>为操作系统提供时钟、日历、闹钟、周期性中断等功能,并且在断电的情况下,可以由电池供电,以很小的耗电继续运行下去,Linux内核已经支持s3c2416的<em>rtc</em><em>驱动</em>。
Linux RTC驱动模型分析
RTC简介nRTC(real-time clock)简称实时时钟,主要作用是用来记时,产生闹钟等。RTC因为有备份电池,所以即使计算机关机掉电,也不会影响RTC记时。而RTC和系统时间(主要靠软件模拟)的区别在于,RTC会在掉电后数据不丢失,在下次启动依旧可以重新设置当前时间给计算机。而系统时间主要靠软件模拟产生,在掉电之后会丢失,需要在下次计算机重新启动之后重新模拟产生。RTC时间在每次系统启
Linux i2c 经典驱动模型 和必要的注释 (rtc驱动为例)
#include rn#include rn#include rn#include rn#include rn#include rn#include rn#include rn#include rn#include rn#include  rn#include rnrn#include rn#include rn#include rnrn#include rn#include rn#include
嵌入式Linux——RTC驱动(1):RTC框架分析
简介:nn        本文通过分层的方式介绍RTC<em>驱动</em>,通过分析RTC在不同层次中所做的不同工作,以及各个层次之间的关系来了解RTC<em>驱动</em>框架。本文分为两部分,第一部分总的介绍RTC框架,而第二部分将结合详细的代码来分析各个层次的关系以及在本层中他们所做的事情。nn    Linux内核:linux-2.6.22.6nn    所用开发板:JZ2440 V3(S3C2440A)nn声明 :nn ...
rtc芯片rx8025t在linux 3.10下的的驱动
硬件平台:mt7688软件平台:原生sdk MediaTek_ApSoC_SDK_4300_20140916  linux-3.10.14内核1. 在arch/mips/ralink/dev-i2c.c 添加i2c平台设备:static struct i2c_board_info i2c_info[] __initconst =  {  {                I2C_BOARD_INF...
RTC的驱动移植和从底层到APP的执行过程
Hym8563的移植,alarm-dev.c <em>rtc</em>-dev.c的执行分析 RTC从底层到APP的执行过程
[笔记分享] [RTC] Alarm内核驱动分析
Platform: msm8x26Overview在<em>rtc</em>一节的框架图可以看出,Alarm依赖于<em>rtc</em><em>驱动</em>框架,但它不是一个 <em>rtc</em> <em>驱动</em>,主要还是实现定时闹钟的功能。相关源代码在kernel/drivers/<em>rtc</em>/alarm.c和drivers/<em>rtc</em>/alarm_dev.c。 注意alarm接口是android系统专门添加的,linux并没有提供这样的功能。其中alarm.c文件实现的是所有a
迅为-iMX6开发板-驱动-实时时钟RTC以及Linux-c测试例程
当Linux开发者谈论一个实时时钟,他们通常指的是某种能记录墙上时间,并且有备用电 池,以至于在系统关机的时候仍然可以工作的器件。nnLinux 有两个系列广泛兼容的用户空间 RTC 设备节点:nn /dev/<em>rtc</em> : PC 机及兼容机系统提供的 RTC 接口,这种接口对于非 x86 系统来说不是 很轻便。nn /dev/<em>rtc</em>0,/dev/<em>rtc</em>1 :是各种系统上,被各种 RTC 芯片所支持的...
stm32f103的RTC驱动程序
具体<em>问题</em>nn这段时间在弄自己的一个《宝宝的气象站》的项目,使用了ESP8266的WiFi模块,使其能够将数据传输到OneNET后台并显示。网络通信使用的是OneNET提供的EDP通信组件,但是RTC遇到了<em>问题</em>。从NTP服务器获取的时间与本地RTC获取的时间有差异。NTP使用的是1970年1月1日作为起始时间点。本地RTC的起始点是2000年1月1日。这样就需要将NTP获取的秒减去两个时间的间隔。n...
Exynos4412裸机开发 —— RTC 实时时钟单元
RTC(Real-Time Clock) 实时时钟。RTC是集成电路,通常称为时钟芯片。在一个嵌入式系统中,通常采用RTC来提供可靠的系统时间,包括时分秒和年月日等,而且要求在系统处于关机状态下它也能正常工作(通常采用后备电池供电)。它的外围也不需要太多的辅助电路,典型的就是只需要一个高精度的32.768kHz 晶体和电阻电容等。n n一、RTC 控制器n        实时时钟(RTC)单
RTC-BM8563-标准Linux驱动和app测试代码
最近需要调试一颗RTC BM6563, n按照标准Linux RTC来实现,方便<em>驱动</em>多平台的移植或者IC替换, n也方便app代码<em>rtc</em>部分的移植性. n遇到的<em>问题</em> n1) 设置的时间格式为无效值,导致无法设置<em>rtc</em>时间,排查了小半天. n2) RTC框架上时间设置和bm6563不完全对应,寄存器的读写需要细微调整转换数值.nnnn// linux 官方<em>rtc</em> app 测试codenlinux 下...
HYM8563驱动分析
从rk3188下摘录出来的hym8563源码/*drivers/<em>rtc</em>/<em>rtc</em>-HYM8563.h - driver for HYM8563n *n * Copyright (C) 2010 ROCKCHIP, Inc.n *n * This software is licensed under the terms of the GNU General Publicn * License versi
rtc驱动的bug
在sys/class/<em>rtc</em>/<em>rtc</em>0下面没有wakealarm文件节点echo +100 &amp;gt; /sys/class/<em>rtc</em>/<em>rtc</em>0/wakealarm 可以手动设置<em>rtc</em>的响应时间wakealarm文件节点出现的条件:<em>rtc</em>_device_register---&amp;gt;<em>rtc</em>_sysfs_add_device(<em>rtc</em>);---&amp;gt;<em>rtc</em>_does_wakealarm(<em>rtc</em>)的结果为...
ds1339驱动源码及RTC设备驱动简介
RTC实时时钟,在嵌入式设备中以芯片来表现,一般有八个脚芯片会被一直供电.所以里面的一些寄存器会一直存在值,且一直都是变化的.linux中有两个时间,一个是<em>rtc</em>中的时间(一般由hwclock命令来控制),一个是linux系统中的时间(一般由date命令来控制)在系统启动时,可以在/etc/init.d/rcS中写入命令将<em>rtc</em>中的时间拷贝到linux中.从而达到看起来像是时间没掉电的表象RTC<em>驱动</em>
[RK3288][Android6.0] RTC驱动的上层调用流程
Platform: Rockchip nOS: Android 6.0 nKernel: 3.10.92说明:RTC<em>驱动</em>在注册的时候提供了两个字符设备给用户空间供操作。 n1. /dev/alarm, android特有设备,为了提高平台无关性而加入,这里不关注闹钟的设置。 n2. /dev/<em>rtc</em>x, 原始linux操作字符设备的方法。通过alarm节点操作:上层的操作最终都是通过alarm节点来
求教关于RTC驱动问题
小弟菜鸟刚刚接触这块,遇见个不解的<em>问题</em>希望老鸟们帮忙。rn<em>驱动</em>相关代码:rnstatic int RTC_read(struct file *filp,char __user *buff,size_t count,loff_t *offp)rnrn int hour,min,sec;rn wait_event_interruptible(wq,flag); //在此处进入休眠,等待中断唤醒rn hour=num_from_BCD(ioread32(<em>rtc</em>hour)); //从BCD寄存器读取时间,并将BCD码转换为整型数据rn min=num_from_BCD(ioread32(<em>rtc</em>min));rn sec=num_from_BCD(ioread32(<em>rtc</em>sec));rn set_time(hour,min,sec);rn copy_to_user(buff,time,sizeof(time)); //将时间数据复制到用户空间rn flag=0;rn return 0;rnrnrn当用户调用读函数读取时间时调用上面的函数,而上面的函数却调用了wait_event_interruptible函数,那么这个函数不就睡眠了吗?rnrn在static int RTC_open(struct inode *inode,struct file *filp)rnrn int ret;rn ret=request_irq(DEVICE_IRQ,&RTC_interrupt,SA_INTERRUPT,DEVICE_NAME,NULL);rn if(ret);rn return ret;rn rn函数中确实调用了request_irq函数向系统中注册了一个中断函数RTC_interrupt。下面是RTC_interrupt代码rnrnirqreturn_t RTC_interrupt(void)rnrn flag++;rn wake_up_interruptible(&wq); //在中断服务程序内唤醒等待队列的进程,这里是唤醒read进程rn return IRQ_HANDLED;rnrn也就是在RTC_interrupt中唤醒了读线程中的等待。 但是我不明白该中断何时才能触发? 不可能用户读时钟的时候还的等中断吧每次。 所以我就不明白在读函数中为什么加入睡眠,他也不是个循环函数,请帮小弟分析一下 谢谢。
RTC驱动的应用
Linux常见的<em>驱动</em>在driver目录下都有一个文件夹,进入kernel主目录下的drivers/<em>rtc</em>,发现下面包含了许多芯片的RTC<em>驱动</em>,我们这里是以pcf8563为主,她是我们要分析的核心。其他几个相关联的文件分别是:alarm.c、alarm-dev.c、class.c、hctosys.c、interface.c和<em>rtc</em>-dev.c。 n&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...
linux系统下rtc驱动
支持基本的修改时间,读取时间,修该日期,读取日期功能
LINUX RTC 驱动相关资料
LINUX RTC <em>驱动</em>相关资料 LINUX RTC <em>驱动</em>相关资料
openwrt 增加RTC(MCP7940 I2C总线)驱动详解
本文章所选择的目标芯片为MT7620,profile 选择的为“Xiaomi MiWiFi Mini ”。n 1、在openwrt 系统上,移植mcp7940的<em>rtc</em>芯片<em>驱动</em>。n 2、在openwrt系统上,增加对i2c总线的支持。n 注意事项:openwrt系统比较奇怪,在menuconfig配置中,配置了i2c,仍然不能支持。需要另外修改“*.dts”文件,才能支持i2c总线。nn软件版本:openwrt 官方15.05版本nRTC芯片:mcp7940, i2c总线通信n主控芯片:MT
linux rtc时钟读写和ID获取
linux <em>rtc</em>时钟获取程序和设备id获取程序
Linux 关于MCP7940 RTC驱动(MT7620芯片)
Linux <em>关于</em>MCP7940 RTC<em>驱动</em>(MT7620芯片,RTC<em>驱动</em>)n一、硬件平台nn 1、 控制器:MT7620(A9内核)n 2、 RTC芯片:MCP7940n二、软件平台nn 1、开发环境:Ubuntu12.04 n 2、SDK内核包:MT7620 SDK软件开发包(MediaTek_ApSoC_SDK_4320_20150414.tar.bz2)n 3、内核版本:linux-2.6.36.x
MCP7940 RTC时钟调试要领
MCP7940 RTC时钟调试要领.这是MICROPCHIP新出的时钟。对晶振要求比较严格。我用单片机模拟的晶振信号
Hi3516A开发--RTC电路
一、概述1、RTC 芯片分类常见的 RTC 芯片,大致可分为三类:非集成 RTC:只有 RTC 计时电路,不集成晶体、不集成温度补偿电路。这类芯片的计时精度主要取决于外接晶体的精度,而且受温度影响较大。通常在室温环境下,计时精度较高;随着温度升高或降低,计时偏差逐渐增大。集成晶体的 RTC:将 RTC 计时电路与晶体集成,但没有温度补偿电路。这类芯片在室温环境下,计时精度更高。但仍然无法消除温度的
zynq-7000系列基于7015的linux下IIC->RTC的扩展使用(DS3232)
zynq-7000系列基于7015的linux下IIC->RTC的扩展使用(DS3232)rnrnrn                             rnrn                             作者:卢浩  rnrn                                  时间:2017.3.6rnrn                           
时实时钟RTC驱动移植(PCF5863)
时实时钟RTC<em>驱动</em>移植(PCF5863)rnrnrnrnrn参考网址:http://blog.chinaunix.net/uid-23404636-id-2369606.htmlrnrnrnrnrnrnrn由于产品板中没有PCF8563<em>驱动</em>,需要写<em>驱动</em>程序。rnrnrnPCF8563<em>驱动</em>其实并不多,主要就是两个函数。rnpcf8563_get_datetime 和 pcf8563_set_date
OpenWRT添加RTC时钟模块(DS1307)
目的:意外断电重启后无需人工校时,为自动化脚本运行提供保障nn准备: n//环境:GL-INET v1路由器 n//有关该路由器的详细参数:https://revspace.nl/GL-iNet n//TinyRTC模块,DS1307 n//需要四个脚:SDA,SCL,+3.3V,GNDnn1.增加内核对RTC模块的支持
uboot中rtc顶层分析
uboot一般不会要求开启<em>rtc</em>,不过还是支持<em>rtc</em>以备特殊需求的。底层<em>驱动</em>移植前面两篇已经介绍,这里介绍顶层的调用过程。顶层在uboot/common/cmd_date.c/* n * (C) Copyright 2001 n * Wolfgang Denk, DENX Software Engineering, wd@denx.de. n * n * See file CREDITS for l
Linux RTC驱动模型分析之rtc-sysfs.c
<em>rtc</em>节点n<em>rtc</em>-sysfs文件主要的操作就是在sys下创建<em>rtc</em>的属性节点,可以方便用户方便快捷的访问,查找<em>问题</em>。下来大概看看sys下的<em>rtc</em>节点,有个直观的认识。n[root@test ~]# cat /sys/class/<em>rtc</em>/<em>rtc</em>0/ndate hctosys power/ time ndev
【TINY4412】LINUX移植笔记:(25)设备树RTC驱动
【TINY4412】LINUX移植笔记:(25)设备树 RTC<em>驱动</em>nn宿主机 : 虚拟机 Ubuntu 16.04 LTS / X64 n目标板[底板]: Tiny4412SDK - 1506 n目标板[核心板]: Tiny4412 - 1412 nLINUX内核: 4.12.0 n交叉编译器: arm-none-linux-g
RTC实时时钟驱动
RTC<em>驱动</em>
2.6.23_rtc驱动解读
这是<em>关于</em>2.6.23内核中的<em>rtc</em><em>驱动</em>的解读,希望对大家有帮助
fl2440移植RTC驱动及hwclock命令使用
RTC实时时钟 nRTC(real time clock)实时时钟,主要作用是给Linux系统提供时间。RTC因为是电池供电的,所以掉电后时间不丢失。Linux内核把RTC用作“离线”的时间与日期维护器。当Linux内核启动时,它从RTC中读取时间与日期,作为基准值。在运行期间内核完全抛开RTC,以软件的形式维护系统的当前时间与日期,并在需要时将时间回写RTC芯片。另外如果RTC提供了IRQ中断
imx6ul+获取rtc时间
接上一节的<em>rtc</em>测试,不过这次是测试获取时间。rnrn主函数更改了:rnrn#include "so_lib.h"rn#include "sl_perpheral.h"rn#include "bsp_<em>rtc</em>.h"rnrnDEBUG_SET_LEVEL(DEBUG_LEVEL_INFO);rnrnint main(int argc, char** argv)rn{rn        int dev_
android rtc驱动问题
1. android4.4, i2c接口外部<em>rtc</em><em>驱动</em>。写<em>驱动</em>的时候,发现发<em>rtc</em>注册到i2c device下面时(<em>rtc</em> = devm_<em>rtc</em>_device_register(&client->dev, em3027_driver.driver.name, &em3027_<em>rtc</em>_ops, THIS_MODULE);),android系统里面设置时间时,rn<em>驱动</em>会提示找不到<em>rtc</em>设备;rn只有注册到paltform_dev下面时,android系统设置时间时才会找到<em>rtc</em>设备(priv-><em>rtc</em> = <em>rtc</em>_device_register("aml_<em>rtc</em>", &pdev->dev, &aml_<em>rtc</em>_ops, THIS_MODULE);).rnrnandroid系统设置时间时,会调用 到kernel中的drivers/staging/android/alarm-dev.crn[code=c]rnstatic int alarm_set_<em>rtc</em>(struct timespec *ts)rnrn struct <em>rtc</em>_time new_<em>rtc</em>_tm;rn struct <em>rtc</em>_device *<em>rtc</em>_dev;rn unsigned long flags;rn int rv = 0;rnrn <em>rtc</em>_time_to_tm(ts->tv_sec, &new_<em>rtc</em>_tm);rn <em>rtc</em>_dev = alarmtimer_get_<em>rtc</em>dev(); //<em>rtc</em>注册到i2c device中时,这里就找获取不到<em>rtc</em>_devrn rn rv = do_settimeofday(ts);rnrn if (rv < 0)rn return rv;rn rn if (<em>rtc</em>_dev)rn rn printk("#### [kernel] %s %s %d ####\n", __FILE__, __FUNCTION__, __LINE__);rn rv = <em>rtc</em>_set_time(<em>rtc</em>_dev, &new_<em>rtc</em>_tm);rn rn rn spin_lock_irqsave(&alarm_slock, flags);rn alarm_pending |= ANDROID_ALARM_TIME_CHANGE_MASK;rn wake_up(&alarm_wait_queue);rn spin_unlock_irqrestore(&alarm_slock, flags);rnrn return rv;rnrn[/code]rnrn2. i2c的<em>rtc</em><em>驱动</em> :<em>rtc</em>注册到&client->dev时,android系统里面设置时间时找不到<em>rtc</em>设备。rn[code=c]rn/*rn * An <em>rtc</em>/i2c driver for the EM Microelectronic EM3027rn * Copyright 2011 CompuLab, Ltd.rn *rn * Author: Mike Rapoport rn *rn * Based on <em>rtc</em>-ds1672.c by Alessandro Zummo rn *rn * This program is free software; you can redistribute it and/or modifyrn * it under the terms of the GNU General Public License version 2 asrn * published by the Free Software Foundation.rn */rnrn#include rn#include rn#include rn#include rnrn/* Registers */rn#define EM3027_REG_ON_OFF_CTRL 0x00rn#define EM3027_REG_IRQ_CTRL 0x01rn#define EM3027_REG_IRQ_FLAGS 0x02rn#define EM3027_REG_STATUS 0x03rn#define EM3027_REG_RST_CTRL 0x04rnrn#define EM3027_REG_WATCH_SEC 0x08rn#define EM3027_REG_WATCH_MIN 0x09rn#define EM3027_REG_WATCH_HOUR 0x0arn#define EM3027_REG_WATCH_DATE 0x0brn#define EM3027_REG_WATCH_DAY 0x0crn#define EM3027_REG_WATCH_MON 0x0drn#define EM3027_REG_WATCH_YEAR 0x0ernrn#define EM3027_REG_ALARM_SEC 0x10rn#define EM3027_REG_ALARM_MIN 0x11rn#define EM3027_REG_ALARM_HOUR 0x12rn#define EM3027_REG_ALARM_DATE 0x13rn#define EM3027_REG_ALARM_DAY 0x14rn#define EM3027_REG_ALARM_MON 0x15rn#define EM3027_REG_ALARM_YEAR 0x16rnrnstatic struct i2c_driver em3027_driver;rnrnstatic int em3027_get_time(struct device *dev, struct <em>rtc</em>_time *tm)rnrn return 0;rnrnrnstatic int em3027_set_time(struct device *dev, struct <em>rtc</em>_time *tm)rnrn return 0;rnrnrnstatic const struct <em>rtc</em>_class_ops em3027_<em>rtc</em>_ops = rn .read_time = em3027_get_time,rn .set_time = em3027_set_time,rn;rnrn//em3027_probe中, <em>rtc</em>注册到&client->dev时,android系统里面设置时间时找不到<em>rtc</em>设备。rnstatic int em3027_probe(struct i2c_client *client, const struct i2c_device_id *id)rnrn struct <em>rtc</em>_device *<em>rtc</em>;rnrn if (!i2c_check_functionality(client->adapter, I2C_FUNC_I2C))rn return -ENODEV;rnrn <em>rtc</em> = devm_<em>rtc</em>_device_register(&client->dev, em3027_driver.driver.name, &em3027_<em>rtc</em>_ops, THIS_MODULE);rn if (IS_ERR(<em>rtc</em>))rn return PTR_ERR(<em>rtc</em>);rnrn i2c_set_clientdata(client, <em>rtc</em>);rnrn return 0;rnrnrnstatic int em3027_remove(struct i2c_client *client)rnrn return 0;rnrnrnstatic struct i2c_device_id em3027_id[] = rn "i2c-<em>rtc</em>", 0 ,rn rn;rnrnstatic struct i2c_driver em3027_driver = rn .driver = rn .name = "aml-<em>rtc</em>-em3027",rn ,rn .probe = &em3027_probe,rn .remove = &em3027_remove,rn .id_table = em3027_id,rn;rnrnmodule_i2c_driver(em3027_driver);rnrnMODULE_AUTHOR("Mike Rapoport ");rnMODULE_DESCRIPTION("EM Microelectronic EM3027 RTC driver");rnMODULE_LICENSE("GPL");rnrn[/code]rnrn3. 如果是注册到platform device下面, 操作<em>rtc</em>时,又获取不到i2c_client。请问如何去获取i2c_client?rn[code=c]rn/*rn* this driver is written for the internal <em>rtc</em> for M1rn*/rnrn#includern#includern#includern#includern#includern#includern#if MESON_CPU_TYPE >= MESON_CPU_TYPE_MESON6rn#include rn#endifrnrn#include rnrnstruct aml_<em>rtc</em>_privrn struct <em>rtc</em>_device *<em>rtc</em>;rn unsigned long base_addr;rn struct timer_list timer;rn struct work_struct work;rn struct workqueue_struct *<em>rtc</em>_work_queue;rn;rnrntypedef struct alarm_data_s rn int level;rn unsigned alarm_sec; //in srn alarm_data_t;rnrn//这里的to_i2c_client找不到devrnstatic int aml_<em>rtc</em>_read_time(struct device *dev, struct <em>rtc</em>_time *tm)rnrn return pt7c4337_get_datetime(to_i2c_client(dev), tm);rnrnrnstatic int aml_<em>rtc</em>_write_time(struct device *dev, struct <em>rtc</em>_time *tm)rnrn return pt7c4337_set_datetime(to_i2c_client(dev), tm);rnrnrnstatic const struct <em>rtc</em>_class_ops aml_<em>rtc</em>_ops =rn .read_time = aml_<em>rtc</em>_read_time,rn .set_time = aml_<em>rtc</em>_write_time,rn .set_alarm = aml_<em>rtc</em>_set_alarm,rn;rnrnstatic int aml_<em>rtc</em>_probe(struct platform_device *pdev)rnrn struct aml_<em>rtc</em>_priv *priv;rn struct device_node* aml_<em>rtc</em>_node = pdev->dev.of_node;rn int ret;rn int sec_adjust = 0;rnrn priv = (struct aml_<em>rtc</em>_priv *)kzalloc(sizeof(*priv), GFP_KERNEL);rnrn if(!priv)rn return -ENOMEM;rnrn platform_set_drvdata(pdev, priv);rn rn /* platform setup code should have handled this; sigh */rn if (!device_can_wakeup(&pdev->dev))rn device_init_wakeup(&pdev->dev, 1);rnrn priv-><em>rtc</em> = <em>rtc</em>_device_register("aml_<em>rtc</em>", &pdev->dev, &aml_<em>rtc</em>_ops, THIS_MODULE);rnrn if(IS_ERR(priv-><em>rtc</em>))rn ret = PTR_ERR(priv-><em>rtc</em>);rn goto out;rn rnrn return 0;rnrnout:rn if(priv-><em>rtc</em>_work_queue)rn destroy_workqueue(priv-><em>rtc</em>_work_queue);rn kfree(priv);rn return ret;rnrnrnstatic const struct of_device_id meson6_<em>rtc</em>_dt_match[]=rn .compatible = "amlogic,aml_<em>rtc</em>",rn ,rn;rnrnstruct platform_driver aml_<em>rtc</em>_driver = rn .driver = rn .name = "aml_<em>rtc</em>",rn .owner = THIS_MODULE,rn .of_match_table=meson6_<em>rtc</em>_dt_match,rn ,rn .probe = aml_<em>rtc</em>_probe,rn;rnrnstatic int __init aml_<em>rtc</em>_init(void)rnrnrn return platform_driver_register(&aml_<em>rtc</em>_driver);rnrnrnstatic void __init aml_<em>rtc</em>_exit(void)rnrn return platform_driver_unregister(&aml_<em>rtc</em>_driver);rnrnrnmodule_init(aml_<em>rtc</em>_init);rnmodule_exit(aml_<em>rtc</em>_exit);rnrnMODULE_DESCRIPTION("Amlogic internal <em>rtc</em> driver");rnMODULE_LICENSE("GPL");rnrn[/code]
有关sd2068时钟芯片问题
我有个项目是用到了SD2068,由于调试时老是出现写寄存器地址0x0A的数据为0x3E,写进去在读出来是好的,然后再读取时就变成0x00,还有就是有些板子的时钟数据秒到年为 0xff,0xff,0x3f,0xff,0xff,0xff,调了好久,最终发现是VDD跟VBAT切换有<em>问题</em>,在用GPIO控制P型mos管导通和关断时有<em>问题</em>,还有就是在VBAT模式下禁止IIC所以读芯片的时间时0xff,所以遇到
rtc 驱动问题
请问怎样让<em>rtc</em>每小时产生一次中断?谢了
Linux-4.9.2内核在mini2440上的移植(八)——RTC驱动移植
本篇目标:移植RTC<em>驱动</em>,使时钟正常运行。n8.1 添加RTC支持n上篇说到,RTC的<em>驱动</em>有<em>问题</em>,这个<em>问题</em>在启动日志中的体现是hctosys: unable to open <em>rtc</em> device (<em>rtc</em>0),可见RTC<em>驱动</em>没有加载上。n我们先将RTC<em>驱动</em>添加到mach-mini2440.c文件中。nroot@ubuntu:~/linux-4.9.2#vim arch/arm/mach-s
kvm虚拟化之时钟虚拟化
(文章来自作者维护的社区微信公众号【虚拟化云计算】)    我们知道kvm有一个半虚拟化的时钟kvm-clock,但是现在只对Linux Guest支持,半虚拟化的时钟具有准确高效的有点,而使用TSC和RTC等时钟存在效率低高延迟的缺点,本文具体介绍一下虚拟化下的时钟原理。传统时钟      我们知道传统时钟有RTC/HPET/PIT/ACPI PM TIMER/TSC等, 这些时钟按原理可分成两...
8.S5PV210之RTC实时时钟代码
RTC.h:rnrnrnrnRTC.c:rnrnrnrnrnrnrnmain.c
还是RTC问题,STM32的RTC太坑人
RTC!坑人!真坑!学32跳过这个部分!
S3C2440 RTC实时时钟 驱动分析以及使用(三十)
https://www.cnblogs.com/lifexy/p/7839625.htmlnnRTC<em>驱动</em>分析总结:nnndrivers\<em>rtc</em>\<em>rtc</em>-s3c.cnns3c_<em>rtc</em>_initn platform_driver_registern s3c_<em>rtc</em>_proben <em>rtc</em>_device_register(&quot;s3c&quot;, &amp;amp;pdev-&amp;gt;dev, &amp;amp;s3c_<em>rtc</em>o...
STM32的RTC程序,亲测可用
STM32的RTC程序,亲测可用。内有详细注释和说明文档,很好的参考资料。
s3c2410的rtc驱动的实现.doc
s3c2410的<em>rtc</em><em>驱动</em>的实现.doc
gd32的rtc使用心得
gd32<em>rtc</em> drive by lse and lsi
ht1381时钟芯片驱动程序
因项目中需要使用,从网络上借助大神们的<em>驱动</em>程序略作修改,仅具有读写时间的功能,,,实测可用
DS1339驱动
DS1339时钟芯片源码<em>驱动</em>,经编写测试,已完成,可移植到任何单片机上。 MCU用的是STM32F205,注意操作步骤
【树莓派】RTC时钟模块安装教程第二部分:Rasbian(linux)下配置工作
第二部分:LINUX下配置工作nnn该部分可能会有点复杂,但是若您跟着本文引导一步一步实施的话是完全能正确完成该步骤的,完成这最难的部分后我们就可以立刻进入最后一步很简单的收尾工作。nnnnn首先确认您的树莓派中是否已经有i2c工具nnn在terminal中输入:dpkg-l |grep i2c-toolsn如果列表为空的话您可以接着输入:nsudoapt-get ins
使用RTC模块的Arduino数字时钟
在本篇文章中,我们将使用RTC实时时钟模块搭建数字时钟。我们将了解什么是“RTC”模块,如何与Arduino开发板进行交互以及它的作用。nRTC模块电路可以准确地保持当前时间。它具有两个功能,它与微控制器和微处理器通信以提供当前时间,以及充当备用电路,以便在发生电源故障时保持时间,因为它具有内置电池备份系统。n我们可以在任何电子设备中找到RTC,其中时间是小工具的重要功能。例如,即使在断电或取出电...
STM32F103系列RTC晶振问题解决记录
我从2014年开始使用STM32内部RTC用于产品,之前出现过很多<em>问题</em>,也换过很多晶振,比如按照ST推荐的6pF晶振,也出现很多<em>问题</em>,贴片的很贵的那种也用过几种,都不行,查询了一些晶振启振的资料,最后还是使用2mm的那种最便宜的晶振,使用过多个批次,每次200套左右,已经1000多套了,只有几套出现<em>问题</em>,并且更换晶振后都能够修复,卖出去的产品里面也只有一套出现<em>问题</em>了(我程序里面如果检测到RTC外部
Linux系统时间和RTC时间、时钟设置与同步、ntpd服务/ntpdate
Linux有两个时间,一个是系统时间,一个是RTC时间(也叫硬件时间)。Linux系统启动时,会自动获取硬件时间,设置为系统时间。一、查询系统时间:查询系统时间:date查询/设置硬件时间:       hwclock –r        显示硬件时钟与日期       hwclock –s        将系统时钟调整为与目前的硬件时钟一致。       hwclock –w       将硬件...
嵌入式开发——rtc时钟调试笔记
前段时间在调试AM335X的<em>rtc</em>时钟功能,一开始是使用芯片内部的<em>rtc</em>时钟模块,后来发现功耗有点高,转而使用<em>rtc</em>时钟芯片,型号为ds1672.。现在把两者的调试要点记录下来,方便后续的查阅。nn注:使用的linux内核版本为4.4.32nn芯片内部RTC:nn查看官方的说明文档:http://processors.wiki.ti.com/index.php/AM335x_Schematic_C...
linux RTC驱动资料
linux RTC<em>驱动</em>资料整理,学习linuxRTC<em>驱动</em>就下载吧
基于STM32F103CT86的OLED 软件IIC显示,带RTC时钟显示,AD采样显示。
内有CT86最小系统,OLEDIIC显示,RTC时钟显示,AD采样显示,内附效果图。
RTC使用野火例程,LSE复位可用,HSE和LSI不可用问题
通 过 设 置 备 份 域 控 制 寄 存 器 (RCC_BDCR) 里 的 RTCSEL[1:0] 位 , RTCCLK 时 钟 源 可 以 由HSE/128、 LSE或LSI时钟提供。除非备份域复位,此选择不能被改变。LSE时钟在备份域里,但HSE和LSI时钟不是。因此:● 如果LSE被选为RTC时钟:─ 只要VBAT维持供电,尽管VDD供电被切断, RTC仍继续工作。● 如果LSI被选为自动...
stm32HAL库学习——最简单的方法实现RTC的万年历功能
使用的芯片是stm32f103系列,在项目中使用了RTC的计时功能与ALARM闹钟功能。由于f103系列的<em>rtc</em>外设只是一个简单的计数器,并没有所谓的日历功能(关机之后日期将不会保存,只会保存时间),下面是针对HAL库关机后日期清零bug的修复。一、RTC万年历的实现(修改HAL库)cube配置:在时钟上选择外部低速的32.768的时钟,其他没有特殊的配置。通过配置cube后生成代码。在MX_RT...
STM32 TIM2+LCD1602时钟实验
STM32 TIM2+LCD1602时钟实验,完整项目文件~~
⑬tiny4412 Linux驱动开发之RTC子系统驱动程序
本次来说一下Linux的RTC子系统. (Real Time Clock).nn在说之前,先说一下STM32上的一些事儿,在移植UCOS的时候,总是想着用timer为系统提供定时中断服务,然后这次搞RTC<em>驱动</em>,忽然,就想到了实际上还可以使用RTC来为UCOS提供系统时钟中断服务,STM32上是有集成RTC的,其实UCOS的创始人出的书上就有说,能提供定时中断的对象有很对,甚至可以用交流电来提供,这...
linux驱动 程序
<em>rtc</em>的<em>驱动</em>,S3C2440,LINUX 非常实用
设备树学习之(六)RTC
开发板:tiny4412SDK + S702 + 4GB Flash n 要移植的内核版本:Linux-4.4.0 (支持device tree) n u-boot版本:友善之臂自带的 U-Boot 2010.12 n busybox版本:busybox 1.25n目标: nLinux4.4 中已经对 tiny4412 <em>rtc</em> 有了支持,但是使能设备树之后启动报错,简单修改,使 <em>rtc</em> 正常
STM32开发笔记44:RTC驱动程序的移植
单片机型号:STM32F070F6P6nn本文介绍,将RTC<em>驱动</em>程序移植到自己的工程项目中的方法。本项目仅使用了RTC的实时时钟功能,没有启动定时报警等功能。nn nn1、在STM32CubeMX中对RTC进行配置,如下图所示,激活了时钟源和日历功能。nnnn2、配置RTC的时钟,如下图所示,STM32F070F6P6不能接外部的32.768K的晶振,所以只能使用HSE或LSI RC供给,考虑LS...
请教一个RTC驱动问题
在添加RTC设备(RX8025)时,遇到一个<em>问题</em>rn启动信息里有一行:rx8025: probe of 0-0064 failed with error -5rn在/dev目录下看不到<em>rtc</em>设备rnsys/bus/i2c/drivers/里可以看到rx8025rn有谁遇到过类似<em>问题</em>,谢谢
RTC-晶振基础
分类n最简单的就是单纯的晶体振荡器。n增加电压调频功能,叫压控晶振(VCXO)n增加温度补偿电路,叫温补晶振(TCXO)n增加温度控制电路,叫恒温晶振(OCXO)n也有带了以上所有功能的晶振。比较常见的分类方法是根据是否需要外部提供电源和地分为有源晶振和无源晶振,有源晶振一般四个引脚,无源晶振两个引脚。n无源晶振n有源晶振nn#晶振的结构n一般晶振要经过几个步骤制作完成:nn晶体选择n晶体切割n晶...
【树莓派】RTC时钟模块安装教程第一部分:接线
您的树莓派系统时间是否在每次断电重启后都需要联网矫正?您是否苦于在没网时需要手动矫正树莓派时间?n一个RTC时钟就能解决您的烦恼,只要跟随本篇文章引导,您的树莓派将无需联网也能自动矫正因关机断电引起的时间错误,随时获取最精确时间就是这么简单!在本篇文章中作者将一步一步教您怎样将RTC时钟装载配置在您的树莓派上。nnn首先除了树莓派以外您需要的东西有:n1,一个RTC时钟(并不一定要买树莓
STM32的RTC实时时钟程序,亲测能用
STM32的RTC实时时钟程序,亲测能用。内有详细的讲解文档,很好的学习资料。
RTC--日期必须重启才更新问题
芯片:STM32F030C8T6nn<em>问题</em>:RTC设置时间,时间可正常设置,日期需要重启才能设置成功nn相关代码:nn/************************************************nn函数名称 : RTC_GetDateTimenn功    能 : 读取RTC日期时间(含日历、星期)nn参    数 : RTC_DateTimeStructure -- RTC结构...
基于FreeRTOS和HAL库STM32F1的RTC例程
基于FreeRTOS操作系统和HAL库函数版本的STM32F103RCT6的LED,USART和RTC例程。USART1采用二值信号量同步中断与任务,RTC每10秒(可以自行设定,已将函数引出到main函数)中断一次,直接在中断函数中打印信息到串口。本代码是很好的一个例程,可以用来作为基础工程使用。
Linux时间系统之RTC时间
Linux时间有两个,系统时间(Wall Time),RTC时间。n系统时间(WT):由Linux系统软件维持的时间,比如command date,获取到的就是系统时间。nRTC时间:这个时间来自我们设备上的RTC芯片,通过command hwclock 可以读取。
Android4.4 pcf8563无法保存设置时间的问题
Android4.4 使用外部<em>rtc</em> pcf8563无法保存设置时间的<em>问题</em>需要对原有<em>驱动</em>进行如下修改rn首先在struct <em>rtc</em>_class_ops中增加set_alarm接口如下:rnstatic const struct <em>rtc</em>_class_ops pcf8563_<em>rtc</em>_ops = {n .read_time = pcf8563_<em>rtc</em>_read_time,n .set_time = pc
Arduino使用时钟模块(Tiny RTC i2C)
买的Arduino开发套件中带的有一个时钟模块,实物图如下图所示,该模块的名称应该就是Tiny RTC时钟模块,RTC表示Real Time Clock,该模块虽然左右都有引脚,但是有些引脚的意义相同,根据参考文献1,各引脚的意义如下:  GND:接电源负极 VCC:接电源正极 BAT:输出纽扣电池的电压,可以不接该引脚 SCL:输出时钟信息的时序信号 SDA:输出时钟信息的数据信号 DS:输出温
stm32液晶、RTC时间显示问题
最近调液晶屏日期和时间显示,修改RTC.c中的程序中if(HAL_RTCEx_BKUPRead(RTCHandle,RTC_BKP_DR0)!= 0xABCD)   n    {    n    sTime->Hours=14;n    sTime->Minutes=37;n    sTime->Seconds=20;n    sTime->SubSeconds=0;n    sTim
ESP8266之RTC处理代码
void ICACHE_FLASH_ATTR <em>rtc</em>CountInit(void){ os_printf( &quot;<em>rtc</em> time init...\r\n&quot;);    <em>rtc</em>Time.magic = RTC_MAGIC;   <em>rtc</em>Time.timeAcc = 0; <em>rtc</em>Time.timeBase = system_get_<em>rtc</em>_time();   os_printf( &quot;time ba...
am335x rtc和电源控制
<em>关于</em>am335x的<em>rtc</em>和电源的相关描述和设计
51单片机rtc实时时钟程序
<em>关于</em>stc89c52单片机 Rtc 时钟芯片的 程序
STM32L051的RTC的坑 基于HAL库
条件1:STM32L051K8T6nn条件2:HAL库1.10.0nn nn坑:在调用HAL_Get_Date()前必需先调用HAL_Get_Time,否则取出来的时间,会存在延时,即取值错误!nn错误示例:nnnn200ms打印一次,输出结果 :nnnn正确示例:nnnn 200ms打印一次,输出结果 :nnnn其实在HAL库的HAL_Get_Time()和HAL_Get_Date()函数说明中...
RTC驱动程序分析
drivers\<em>rtc</em>\<em>rtc</em>-s3c.cnnns3c_<em>rtc</em>_initnplatform_driver_registerns3c_<em>rtc</em>_proben<em>rtc</em>_device_register("s3c", &pdev->dev, &s3c_<em>rtc</em>ops, nnnTHIS_MODULE)n<em>rtc</em>_dev_preparencdev_init(&<em>rtc</em>->char_dev, &rt
linux rtc驱动
详细介绍linux <em>rtc</em><em>驱动</em>的编写思路,以及测试程序介绍
关于STM32中RTC的校准方法.txt
<em>关于</em>STM32中RTC的校准方法.txt
字符设备驱动之RTC驱动分析
我们板子上一般带有一个RTC模块,实时时钟,你断电之后,里面的时钟还是会维持的,就像你的手机,关了机或者拔了电池之后里面实际上还有个备份时钟,维持里面的一个时钟模块在运行,这样就可以保持你的时间了。我们来看一下原理图rnrnrn这个电池是给RTC模块用的,你开发板即使关了电RTC模块还是会运行的,RTC模块耗电非常少,一小块电池就可以维持1 2年了rn我们每次data一次 如果RTC工作了,那么时
STM32F4 裸机RTC驱动
STM32F4裸机RTC<em>驱动</em>,寄存器操作。/*************************************************************************************************************n * 文件名 : RTC.cn * 功能 : STM32F4 RTC<em>驱动</em>n * 作者 : cp1300@139.comn *
AM437x——RTC驱动
CSDN仅用于增加百度收录权重,排版未优化,日常不维护。请访问:www.hceng.cn 查看、评论。n本博文对应地址: https://hceng.cn/2017/08/27/AM437x——RTC<em>驱动</em>/#moren本文主要记录AM437X<em>驱动</em>的RTC。包含一个不标准的RTC<em>驱动</em>、一个还算有点标准的RTC<em>驱动</em>,以及正常的测试方式。nnn0.本次<em>关于</em><em>驱动</em>的新收获n写RTC<em>驱动</em>的时候,我先尝试的按标...
i2c底层数据传输解析之RTC实时时钟
在i2c上进行数据传输,都是通过一个叫i2c_smbus_xfer的函数进行传输,这个函数被i2c_smbus函数族所调用,不同的i2c_smbus函数族的函数调用时都会传入一个i2c_smbus_xfer_emulated函数的switch中所需要的size,在case分支中将不同的数据写入i2c_msg结构体成员,然后执行i2c_smbus_xfer_emulated中的i2c_transfer,i2c_transfer最终调用了i2c_algorithm算法实现中的master_xfer周期性的发送i
CentOS 7解决系统时间相关问题
方法一:Linux的时间分为System Clock(系统时间)和Real Time Clock (硬件时间,简称RTC)。查看系统时间的命令: #date设置系统时间的命令: #date –set “18/01/10 15:15”查看硬件时间的命令: # hwclock设置硬件时间的命令: # hwclock –set –date = (月/日/年 时:分:秒)或者用同步网络时间1.安装ntpd...
RTC开始默认时间
#include n#include n#include nnnnntypedef unsigned int uint32_t;nnnnn#define CLOCK_DEFAULT_START_DATE                                                     \n{
STM32F030低温下RTC不工作
客户反馈在批量生产阶段,发现部分产品的MCU的RTC在低温(0℃)下工作不正常,但是在常温下又是正常的,且其他正常的MCU的RTC在常温与低温下都是正常的。
RTC(SD24C03API)驱动
SD24C03API<em>驱动</em>
STM32F103 RTC驱动
STM32F103 RTC<em>驱动</em>程序,亲测可用, 在主电源断电情况下可以保持运行,(Vbat必须有纽扣电池,不然每次上电时钟都得重新设置) 已运行半个月,如果时差较大,可以自行调节校准值 已实现字符串设置 年,月,日 时,分,秒以及校准值
RTC驱动系统分析
参考资料:http://blog.csdn.net/fanqipin/article/details/8089995nhttp://www.embedu.org/Column/Column468.htmnhttp://www.linuxidc.com/Linux/2013-08/88964.htmnhttp://blog.csdn.net/crycheng/article/details/7
STM32之RTC例程
-
ARM Linux RTC 时间的读取与设置
<em>问题</em>描述nn  RTC 芯片采用 PCF8563T,Linux 系统使用 date 设置时间后用 hwclock -w 同步到 RTC,一段时间后 Linux 系统时间与本地时间相差 8 个小时。nnnn分析<em>问题</em>nn  直觉告诉我们这是时区造成的,要么是系统的时区配置不对,要么是 RTC 时间的读写不对。nn时区配置主要是两个文件:/etc/localtime 和 /etc/timezone,内容...
DS3231驱动
GPIO模拟I2C<em>驱动</em>美信高精度RTC芯片
关于STM32驱动DS1302的一点思考
之前用51<em>驱动</em>过DS1302,没用多久就输出了正确的时间。当时以为这块芯片其实没啥,很简单。但是现在用STM32做项目,用到同样的芯片,以为这有何难,只要把那个程序拿过来复制黏贴改一下IO设置不就行了?但是事情远没有想想的那么简单。               rnrn经过3天的挣扎,现在才知道当时自己是多么天真。rnrn<em>关于</em>DS1302的基本操作可以看这里:http://www.cnblogs.
STM32之RTC实时时钟
RTC实时时钟简介: n STM32的RTC外设,实质是一个掉电后还继续运行的定时器,从定时器的角度来看,相对于通用定时器TIM外设,它的功能十分简单,只有计时功能(也可以触发中断).但是从掉电还能继续运行来看,它是STM32中唯一一个具有这个功能功能的外设.(RTC外设的复杂之处不在于它的定时,而在于它掉电还可以继续运行的特性) n所谓掉电,是指电源Vpp断开的情况下,为了RTC外设掉电可以
RTC自动唤醒
stm8l152进入active halt模式后,可以通过RTC中断唤醒。首先切换为外部低速时钟源,然后对RTC进行一些配置。nnnvoid RTC_Config(void)//设置RTC中断n{n        /* Select LSE as system clock source */n        CLK_SYSCLKSourceSwitchCmd(ENABLE);
关于RTC的问题
我想问一下ARM9中的RTC模块应该是被当做是<em>驱动</em>程序来实现还是被当做OAL层中的函数来实现,还有就是怎样在WINCE下调用RTC模块的函数???
STM32 RTC学习笔记
前一段时间画了一个stm32f103c8t6最小系统n之前没弄过,都是买现成的,RTC电路出了<em>问题</em>,开始一直没弄明白,<em>问题</em>到底出在了哪里,经过查官方手册,发现32.768晶振需要的电容电容值在5pF到15pF之间,PCB产生的电容值一般在2pF到7pF,所以晶振两端要接的负载电容值为3pF到8pF,开始接的是20pF的电容,不起振,于是换了6pF,然后就起振了。n如何确认芯片RTC晶振起振了呢
关于RTC client的问题
<em>关于</em>RTC client的<em>问题</em>rnrn各位大侠:rn我现在在<em>rtc</em> client ,已经能音频通话了,但是我想在这基础上增加一个rtp链路。应该怎么弄?rn<em>问题</em>:rn1、怎么在<em>rtc</em>的构架下增加rtp链路,是addstream()吗?rn2、增加了链路以后应该怎么发数据?rn3、怎么得到我的rtp port?rn4、在微软的<em>rtc</em>的例子里,audio是怎么发的,然后是怎么播放的(因为现在不知道数据是怎么传递的)?rnrnrn谢谢各位了!rn
C8051F移植uCOS286
C8051F移植uCOS286,非常好,包括了必要的<em>驱动</em>和<em>rtc</em>实时时钟
stm32在rt-thread上的RTC(实时时钟)
rt-thread中已经部分实现了<em>rtc</em>的内容 - <em>rtc</em>.c ,调用rt_hw_<em>rtc</em>_init()函数即可使用msh设置date和time等rn<em>rtc</em>时钟来源有三个:rnHSE, LSE, LSI, 实现如下: 在原RTC_Configuration(void)进行替换即可rnrnrn    /* Enable LSE */rn    #ifdef USE_LSErn        RC
关于RTC地问题
是这样的!我下了一个RTC地原程序,就是微软介绍RTC时的那个原代码,按道理应该图像也能传过去,可是我现在只有声音能传,而图像不能传。rn我有一张天敏的SDK-2000视频采集卡,一个USB摄像头,是用中微心301芯片的。rnrn图像不能传的原因是啥。还有能不能给RTC的全的函数与属性。已经进一步的介绍。
西门子模块软件编程手册与硬件手册下载
西门子模块软件编程手册与硬件详细资料AT指令 相关下载链接:[url=//download.csdn.net/download/sunguoqiang_2009/1987865?utm_source=bbsseo]//download.csdn.net/download/sunguoqiang_2009/1987865?utm_source=bbsseo[/url]
论文反剽窃软件,论文通过好帮手下载
论文通过好帮手,可检测学位论文、硕士论文、博士论文 相关下载链接:[url=//download.csdn.net/download/jlj1155/2415353?utm_source=bbsseo]//download.csdn.net/download/jlj1155/2415353?utm_source=bbsseo[/url]
跨页数据传递 sql2005 vs2005下载
应用 vs2005 sql2005 实现跨页数据传递 相关下载链接:[url=//download.csdn.net/download/kangqingxia/2419764?utm_source=bbsseo]//download.csdn.net/download/kangqingxia/2419764?utm_source=bbsseo[/url]
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 关于大数据培训 关于云计算
我们是很有底线的