极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: singz

用1602和DS3231搭建的可调时钟 ~~新人帖~~标题要长~~

[复制链接]
发表于 2015-9-16 16:20:51 | 显示全部楼层
刚用普通显示测试程序测试过,用逻辑分析仪发现开发板上的SDA,SCL无信号输出,你怎么添加库的,不是直接添加zip就可以么?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-9-16 19:01:42 | 显示全部楼层
767348927 发表于 2015-9-16 16:20
刚用普通显示测试程序测试过,用逻辑分析仪发现开发板上的SDA,SCL无信号输出,你怎么添加库的,不是直接添加 ...

我是解压到 IDE 的 libraries 目录,

完成后启动 IDE,在 项目 -- Include Library -- Contributed libraries 里就有了 LiquidCrystal_I2C1602V1 项目
回复 支持 反对

使用道具 举报

发表于 2015-9-16 20:01:39 | 显示全部楼层
简化功能与程序,去掉三个调整按键,用软件输入调整时间,已搞定,感谢分享。调整程序搞了二天。
回复 支持 反对

使用道具 举报

发表于 2015-9-17 09:27:16 | 显示全部楼层
我的显示测试程序就这几行
//YWROBOT
//Compatible with the Arduino IDE 1.0
//Library version:1.1
#include <Wire.h>
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27,16,2);  // set the LCD address to 0x27 for a 16 chars and 2 line display

void setup()
{
  lcd.init();                      // initialize the lcd

  // Print a message to the LCD.
  lcd.backlight();
  lcd.print("Hello, world!");
}

void loop()
{
}
可是就没显示;逻辑分析仪显示SDA,SCL无信号;

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

发表于 2015-9-17 09:34:26 | 显示全部楼层

我是一个好学的菜鸟,求各路大神指导!!!!楼主方便留QQ么,我的QQ2277907706,很想跟您学习
扫描后的i2c地址是这个,但就是看不懂
--- I2C Bus Scanner Test ---
starting scanning of I2C bus from 1 to 127...

addr: 63         HEX: 0x7E         found!

所以显示屏就变成一行黑一行无字

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-9-17 16:33:52 | 显示全部楼层
本帖最后由 singz 于 2015-9-17 16:39 编辑
767348927 发表于 2015-9-17 09:34
我是一个好学的菜鸟,求各路大神指导!!!!楼主方便留QQ么,我的QQ2277907706,很想跟您学习
扫描后的 ...


测试程序没问题

放张接线照片来看看

再试试其他版本的 i2c 总线库,也许是我的转接板和你的不一样
回复 支持 反对

使用道具 举报

发表于 2015-9-20 14:29:07 | 显示全部楼层
代码编译出错   compilation terminated.
编译有误。  求救啊
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-9-21 09:18:33 | 显示全部楼层
xfy 发表于 2015-9-20 14:29
代码编译出错   compilation terminated.
编译有误。  求救啊

没添加 运行库 吧
回复 支持 反对

使用道具 举报

发表于 2015-9-22 20:21:06 | 显示全部楼层
singz 发表于 2015-9-17 16:33
测试程序没问题

放张接线照片来看看

可以了!可以了!这几天买了几个模块,最后一家发例程是这个就有显示了不知是不是这句话意思,不过没看懂后面的(20,4)
LiquidCrystal_I2C lcd(0x3F,20,4);



#include <Wire.h>

#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x3F,20,4); // set the LCD address to 0x27 for a 20 chars and 4 line display

void setup()

{

lcd.init();

lcd.backlight();

lcd.print("Hello, world!");

}

void loop(){}
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-9-23 09:15:42 | 显示全部楼层
本帖最后由 singz 于 2015-9-23 09:28 编辑
767348927 发表于 2015-9-22 20:21
可以了!可以了!这几天买了几个模块,最后一家发例程是这个就有显示了不知是不是这句话意思,不过没看懂 ...


0x3F 是把转接板地址设成 0x3F

20,4 是每行20个字、每屏4行

能有显示说明你这块液晶屏的地址是 0x3F,而不是常见的0x27

(20,4)是给2004液晶屏用的,1602应该是(16,2)
回复 支持 反对

使用道具 举报

发表于 2015-9-24 20:01:17 | 显示全部楼层
singz 发表于 2015-9-23 09:15
0x3F 是把转接板地址设成 0x3F

20,4 是每行20个字、每屏4行

哦,原来这样子,感谢大神指导!顺便在问一下,我想做两个闹钟,要在您这程序里怎样改才能再添加一个闹钟
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-9-25 10:12:54 | 显示全部楼层
本帖最后由 singz 于 2015-9-25 10:17 编辑
767348927 发表于 2015-9-24 20:01
哦,原来这样子,感谢大神指导!顺便在问一下,我想做两个闹钟,要在您这程序里怎样改才能再添加一个闹钟


byte A2Day, A2Hour, A2Minute, A2Second, A2Bits;  //A2Hour, A2Minute, A2Second分别是第2闹钟的时分秒,具体数值自己输入

Clock.setA2Time(A2Day, A2Hour, A2Minute, A2Second, B1000, ADy, false, Apm);  // 设置闹钟每天响一次

详细参考这里:
http://wiki.geek-workshop.com/do ... raries:ds-seta2time
回复 支持 反对

使用道具 举报

发表于 2015-10-8 23:32:57 | 显示全部楼层
学习了,有不懂日后请教
回复 支持 反对

使用道具 举报

发表于 2015-10-9 22:31:00 | 显示全部楼层
能否设置一个开关用作减?不然年份一直加,还有在每次设置是小时总是自动改变,蜂鸣器到时只响一声。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-10-10 10:03:36 | 显示全部楼层
本帖最后由 singz 于 2015-10-10 11:12 编辑
huangshan78 发表于 2015-10-9 22:31
能否设置一个开关用作减?不然年份一直加,还有在每次设置是小时总是自动改变,蜂鸣器到时只响一声。


在 390 行,加个 if 判断 syear 是否大于 50 ,是的话归零,这样就可以限制在2050年以内了。

设置 “-” 开关有现成的方案 http://geek-workshop.com/thread-2737-1-1.htmlhttp://bbs.zol.com.cn/diybbs/d34439_14232.html

小时自动变的问题还没发现,我用的是无源蜂鸣器
回复 支持 反对

使用道具 举报

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

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

Archiver|联系我们|极客工坊

GMT+8, 2024-3-28 23:51 , Processed in 0.047904 second(s), 20 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

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