打印
[技术问答]

请教一个关于NUC120实时不准确的问题

[复制链接]
1797|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lussby|  楼主 | 2014-2-21 14:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在此向各位前辈请教一个关于NUC120的问题,我的例程是用官网的库的,用的芯片是NUC120LE03A,接的是外部晶振12M,和32.768KM的晶振。下载程序进去后,发现NUC120LE03A的实时时钟和实际时钟不对。我看了下实际时间,大概在5-7秒的时间,NUC120LE03A的实时时钟才走1秒。在此请前辈们帮小弟查下是什么原因,万分谢谢!
沙发
niuyaliang| | 2014-2-21 14:40 | 只看该作者
你的晶振和电容匹配不,用的多大的电容,然后烧官方给的例程,看看效果

使用特权

评论回复
板凳
lussby|  楼主 | 2014-3-26 15:16 | 只看该作者
niuyaliang 发表于 2014-2-21 14:40
你的晶振和电容匹配不,用的多大的电容,然后烧官方给的例程,看看效果

问题已经解决。是我其它程序影响到时钟了。

使用特权

评论回复
地板
zxf0168| | 2014-3-27 08:30 | 只看该作者
软件问题?

使用特权

评论回复
5
lussby|  楼主 | 2014-3-27 08:32 | 只看该作者
zxf0168 发表于 2014-3-27 08:30
软件问题?

恩。

使用特权

评论回复
6
sdnumcu| | 2014-3-27 08:53 | 只看该作者
软件要写好,晶振也要弄合适了

使用特权

评论回复
7
zxf0168| | 2014-3-27 13:59 | 只看该作者
晶振问题,分频不好?

使用特权

评论回复
8
zxf0168| | 2014-3-28 10:26 | 只看该作者
lussby 发表于 2014-3-27 08:32
恩。

软件问题赶紧解决啦

使用特权

评论回复
9
zxf0168| | 2014-3-31 22:10 | 只看该作者
niuyaliang 发表于 2014-2-21 14:40
你的晶振和电容匹配不,用的多大的电容,然后烧官方给的例程,看看效果

晶振电容要匹配

使用特权

评论回复
10
zxf0168| | 2014-3-31 22:10 | 只看该作者
lussby 发表于 2014-3-26 15:16
问题已经解决。是我其它程序影响到时钟了。

恭喜解决难题

使用特权

评论回复
11
zxf0168| | 2014-3-31 22:11 | 只看该作者
分享出解决方案,与人玫瑰,手有余香啊,楼主赞一个

使用特权

评论回复
12
lussby|  楼主 | 2014-4-1 13:42 | 只看该作者
本帖最后由 lussby 于 2014-4-1 13:47 编辑
zxf0168 发表于 2014-3-31 22:11
分享出解决方案,与人玫瑰,手有余香啊,楼主赞一个

恩恩,首先谢谢你一直以来关注此贴并给予回复,我的软件设置如下:
时间初始化。
if (DrvRTC_Init() != E_SUCCESS)
    {
        printf("RTC Initial Fail !! \n");   
    }   
    /* 时间设置*/
        sInitTime.u32Year            = 2014;//年份初始化
    sInitTime.u32cMonth    = 2;//月份
    sInitTime.u32cDay    = 4;//日期
        sInitTime.u32cHour            = 12;//小时
    sInitTime.u32cMinute    = 0;//分
    sInitTime.u32cSecond    = 0;//秒
    sInitTime.u32cDayOfWeek = DRVRTC_TUESDAY;//星期
    sInitTime.u8cClockDisplay = DRVRTC_CLOCK_24;   //时间格式为24小时            
    if (DrvRTC_Open(&sInitTime) != E_SUCCESS)
    {
        printf("RTC Open Fail !! \n");
    }
每次需要读取时间时,只需要下面代码:
S_DRVRTC_TIME_DATA_T sCurTime;
DrvRTC_Read(DRVRTC_CURRENT_TIME,&sCurTime);
a=sCurTime.u32cHour;//实时读到的小时
b=sCurTime.u32cMinute;//实时读到的分钟
c=sCurTime.u32cSecond;//实时读到的秒
这里a,b,c分别为实时时钟读到的值。希望对正在使用NUC120RTC的童鞋有用。

使用特权

评论回复
13
lanchong1980| | 2014-4-1 14:03 | 只看该作者
虽然 解决了,我还是路过下,别回头

使用特权

评论回复
14
zxf0168| | 2014-4-14 20:48 | 只看该作者
lussby 发表于 2014-3-27 08:32
恩。

好吧

使用特权

评论回复
15
zxf0168| | 2014-4-14 22:26 | 只看该作者
lussby 发表于 2014-4-1 13:42
恩恩,首先谢谢你一直以来关注此贴并给予回复,我的软件设置如下:
时间初始化。
if (DrvRTC_Init() != E_ ...

楼主有风度,值得赞扬,加油

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

14

主题

144

帖子

1

粉丝