yhy630 发表于 2014-1-13 20:33:57

本帖最后由 yhy630 于 2014-1-13 20:38 编辑

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


"onewire" does not name a type

弘毅 发表于 2014-1-17 10:52:50

yhy630 发表于 2014-1-13 20:33 static/image/common/back.gif
出现这样的问题,求解




缺少onewire库

Rotor 发表于 2014-3-26 17:57:05

whuwolf 发表于 2013-12-30 10:18 static/image/common/back.gif
请教为啥时间不能设置成2013年及以后呢?

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

Rotor 发表于 2014-3-26 18:06:27

whuwolf 发表于 2013-12-30 16:08 static/image/common/back.gif
下面我们试用一下DS1307时钟芯片功能。
先把下面库自带测试代码下载进入arduino控制板



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

但是它的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_CLOCKHALT;
                                rtc_bcd=state | ((v / 10)<<4) + (v % 10);
                        }
                        break;
                case DS1307_MIN:
                        if(v<60 && v>-1)
                        {
                                rtc_bcd=((v / 10)<<4) + (v % 10);
                        }
                        break;
                case DS1307_HR:
                        // TODO : AM/PM12HR/24HR
                        if(v<24 && v>-1)
                        {
                                rtc_bcd=((v / 10)<<4) + (v % 10);
                        }
                        break;
                case DS1307_DOW:
                        if(v<8 && v>-1)
                        {
                                rtc_bcd=v;
                        }
                        break;
                case DS1307_DATE:
                        if(v<31 && v>-1)
                        {
                                rtc_bcd=((v / 10)<<4) + (v % 10);
                        }
                        break;
                case DS1307_MTH:
                        if(v<13 && v>-1)
                        {
                                rtc_bcd=((v / 10)<<4) + (v % 10);
                        }
                        break;
                case DS1307_YR:
                        if(v<13 && v>-1)
                        {
                                rtc_bcd=((v / 10)<<4) + (v % 10);
                        }
                        break;
        } // end switch
        save();
}

Champagne 发表于 2014-5-5 21:10:47

请问弘毅老师,多个传感器的时候用标准供电方式应该怎样取得每一个传感器的数据呢?

savagego 发表于 2014-5-6 15:42:21

哎呀,还有 DallasTemperature.h这个库!!!!!!!!!
之前一直没找到,只好自己重写OneWire.h库,啃了两天的资料,完成7成了已经~~~~
太打击了,浪费2天时间

tobyvampire 发表于 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 static/image/common/back.gif
额。。。。。iic做上拉了吧,难道是连接线过长干扰?

我的也是真么办

lwc710935612 发表于 2014-5-30 12:20:11

弘毅老师:您好!我用的DS18B20单独实验,为啥测出来的数据是这样子的?而且去掉传感器之后数据还是这样,好像DS18B20没作用,到底哪里出问题了?求解,万分感谢!

itbj00 发表于 2014-7-17 23:50:12

不错。准备试试。已经买了模块。

dltwcy 发表于 2014-9-16 13:40:42

感谢分享。。。学习了

ivan.liao 发表于 2014-9-16 22:05:56

在用过DS1307和DS3231(我各有两块)之后发现DS1307准确度太低,平均运行一天就快了30秒,而DS3231则运行了一个多月偏差都不到2秒。

cyf211 发表于 2014-10-4 16:36:44

本帖最后由 cyf211 于 2014-10-4 16:49 编辑

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

jlu_uno 发表于 2015-2-12 16:54:05

问一下#include <WProgram.h>这个库是自带的吗?
页: 1 2 3 4 [5] 6
查看完整版本: arduino学习笔记27 - DS1307 RTC时钟芯片与DS18B20数字温度传感器实验