极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: 弘毅

arduino学习笔记27 - DS1307 RTC时钟芯片与DS18B20数字温度传感器实验

  [复制链接]
发表于 2014-1-13 20:33:57 | 显示全部楼层
本帖最后由 yhy630 于 2014-1-13 20:38 编辑

[img]E:\是.bmpE:\是,bmp[/img]
出现这样的问题,求解


"onewire" does not name a type
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-1-17 10:52:50 | 显示全部楼层
yhy630 发表于 2014-1-13 20:33
出现这样的问题,求解

缺少onewire库
回复 支持 反对

使用道具 举报

发表于 2014-3-26 17:57:05 | 显示全部楼层
whuwolf 发表于 2013-12-30 10:18
请教为啥时间不能设置成2013年及以后呢?

不知道这位兄台可有解决2013时间设置的问题,我也遇到了,求教一下怎么解决?
这套库的时钟部分实在写得太烂了,各种反人类,解决这个问题我准备参照DS1302 的函数改一个库
回复 支持 反对

使用道具 举报

发表于 2014-3-26 18:06:27 | 显示全部楼层
whuwolf 发表于 2013-12-30 16:08
下面我们试用一下DS1307时钟芯片功能。
先把下面库自带测试代码下载进入arduino控制板

刚仔细看了一下源码:假设你Arduino想设置年,则:
        RTC.set(DS1307_YR,rtc[0]>=2000 ? rtc[0]-2000: rtc[0]);

但是它的switch 里面有个判断,见红色高亮,明显把月份的给复制粘贴过来的,不带这么坑爹的复制粘贴,气死我了...

void DS1307::set(int c, int v)  // Update buffer, then update the chip
{
        switch(c)
        {
                case DS1307_SEC:
                        if(v<60 && v>-1)
                        {
                                //preserve existing clock state (running/stopped)
                                int state=rtc_bcd[DS1307_SEC] & DS1307_CLOCKHALT;
                                rtc_bcd[DS1307_SEC]=state | ((v / 10)<<4) + (v % 10);
                        }
                        break;
                case DS1307_MIN:
                        if(v<60 && v>-1)
                        {
                                rtc_bcd[DS1307_MIN]=((v / 10)<<4) + (v % 10);
                        }
                        break;
                case DS1307_HR:
                        // TODO : AM/PM  12HR/24HR
                        if(v<24 && v>-1)
                        {
                                rtc_bcd[DS1307_HR]=((v / 10)<<4) + (v % 10);
                        }
                        break;
                case DS1307_DOW:
                        if(v<8 && v>-1)
                        {
                                rtc_bcd[DS1307_DOW]=v;
                        }
                        break;
                case DS1307_DATE:
                        if(v<31 && v>-1)
                        {
                                rtc_bcd[DS1307_DATE]=((v / 10)<<4) + (v % 10);
                        }
                        break;
                case DS1307_MTH:
                        if(v<13 && v>-1)
                        {
                                rtc_bcd[DS1307_MTH]=((v / 10)<<4) + (v % 10);
                        }
                        break;
                case DS1307_YR:
                        if(v<13 && v>-1)
                        {
                                rtc_bcd[DS1307_YR]=((v / 10)<<4) + (v % 10);
                        }
                        break;
        } // end switch
        save();
}
回复 支持 反对

使用道具 举报

发表于 2014-5-5 21:10:47 | 显示全部楼层
请问弘毅老师,多个传感器的时候用标准供电方式应该怎样取得每一个传感器的数据呢?
回复 支持 反对

使用道具 举报

发表于 2014-5-6 15:42:21 | 显示全部楼层
哎呀,还有 DallasTemperature.h这个库!!!!!!!!!
之前一直没找到,只好自己重写OneWire.h库,啃了两天的资料,完成7成了已经~~~~
太打击了,浪费2天时间
回复 支持 反对

使用道具 举报

发表于 2014-5-10 20:45:19 | 显示全部楼层
请问你的电路图是用什么软件做的呀?
回复 支持 反对

使用道具 举报

发表于 2014-5-14 16:46:23 | 显示全部楼层
C:\Users\Administrator\Documents\Arduino\libraries\DallasTemperature\DallasTemperature.cpp:9:26: error: WConstants.h: No such file or directory
怎么办
回复 支持 反对

使用道具 举报

发表于 2014-5-14 17:11:10 | 显示全部楼层
弘毅 发表于 2012-10-25 17:48
额。。。。。iic做上拉了吧,难道是连接线过长干扰?

我的也是真么办
回复 支持 反对

使用道具 举报

发表于 2014-5-30 12:20:11 | 显示全部楼层
弘毅老师:您好!我用的DS18B20单独实验,为啥测出来的数据是这样子的?而且去掉传感器之后数据还是这样,好像DS18B20没作用,到底哪里出问题了?求解,万分感谢!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2014-7-17 23:50:12 | 显示全部楼层
不错。准备试试。已经买了模块。
回复 支持 反对

使用道具 举报

发表于 2014-9-16 13:40:42 | 显示全部楼层
感谢分享。。。学习了
回复 支持 反对

使用道具 举报

发表于 2014-9-16 22:05:56 | 显示全部楼层
在用过DS1307和DS3231(我各有两块)之后发现DS1307准确度太低,平均运行一天就快了30秒,而DS3231则运行了一个多月偏差都不到2秒。
回复 支持 反对

使用道具 举报

发表于 2014-10-4 16:36:44 | 显示全部楼层
本帖最后由 cyf211 于 2014-10-4 16:49 编辑

请问,我也是使用的这个板子不过在编译的时候显示:'RTC' was not declared in this scope,这是怎么回事? 我使用的是DS1307的例子,软件是用的1.0.5的
回复 支持 反对

使用道具 举报

发表于 2015-2-12 16:54:05 | 显示全部楼层
问一下#include <WProgram.h>这个库是自带的吗?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-4-20 05:26 , Processed in 0.044178 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表