singz
发表于 2017-3-17 11:23:59
suoma 发表于 2017-3-17 10:40
如果不要闹钟,那这个reset按键就不要了?
reset键可以不要的
suoma
发表于 2017-3-17 21:43:05
singz 发表于 2017-3-17 11:23
每0.5秒在年份位置显示一次4个字符的空白,这样就可以让年份数字闪烁了
和TicSet(0, 0)功能一样,只是一个四位,一个两位。可以留个QQ吗?我设置时间后没有写入时钟芯片,我把你的程序修改为300行了,还请指点一下,我是用DS1302,LCD 4bit控制
singz
发表于 2017-3-19 10:10:09
suoma 发表于 2017-3-17 21:43
和TicSet(0, 0)功能一样,只是一个四位,一个两位。可以留个QQ吗?我设置时间后没有写入时钟芯片,我把 ...
厉害,43133996,可能上得不多
singz
发表于 2017-3-19 10:14:07
suoma 发表于 2017-3-17 21:43
和TicSet(0, 0)功能一样,只是一个四位,一个两位。可以留个QQ吗?我设置时间后没有写入时钟芯片,我把 ...
DS1302库的设置时间函数好像是下面这样的:
rtc.halt(false); //不知道啥意思
rtc.writeProtect(false); //关闭写保护
rtc.setDOW(SATURDAY); // 设置星期
rtc.setTime(22, 56,00); //设置时间
rtc.setDate(9, 11, 2013); // 设置日期2013年11月9日
rtc.writeProtect(true); //开启写保护
DS1302有写保护,关闭后才能改时间
参考:
http://www.cnblogs.com/xiaowuyi/p/3448394.html
suoma
发表于 2017-3-19 14:19:44
singz 发表于 2017-3-19 10:14
DS1302库的设置时间函数好像是下面这样的:
rtc.halt(false); //不知道啥意思
/* Initialize a new chip by turning off write protection and clearing the
clock halt flag. These methods needn't always be called. See the DS1302
datasheet for details. */
rtc.write_protect(false);
rtc.halt(false); //清除halt标志位
suoma
发表于 2017-3-19 14:28:38
suoma 发表于 2017-3-19 14:19
/* Initialize a new chip by turning off write protection and clearing the
clock halt flag....
rtc.halt(false); //不知道啥意思
CLOCK HALT FLAG
Bit 7 of the seconds register is defined as the clock halt (CH) flag. When this bit is set to logic 1, the clock oscillator is stopped and the DS1302 is placed into a low-power standby mode with a current drain of less than 100nA. When this bit is written to logic 0, the clock will start. The initial power-on state is not defined.
suoma
发表于 2017-3-20 09:39:09
singz 发表于 2017-3-19 10:14
DS1302库的设置时间函数好像是下面这样的:
rtc.halt(false); //不知道啥意思
我连接IIC模块,使用hello world例程,液晶屏显示如下,如果拔掉短路帽,屏亮无显示,换了两个IIC模块同样问题,调电位器也无显示
singz
发表于 2017-3-20 10:10:54
suoma 发表于 2017-3-20 09:39
我连接IIC模块,使用hello world例程,液晶屏显示如下,如果拔掉短路帽,屏亮无显示,换了两个IIC模块同 ...
应该是IIC地址不对
suoma
发表于 2017-3-20 10:23:17
singz 发表于 2017-3-20 10:10
应该是IIC地址不对
换成0x27、0x3f地址都是这个问题,确认地址是0x27,我把我DS1302的程序发你了,按键设置后无法写入时钟芯片,还请指点一下
singz
发表于 2017-3-20 10:50:45
suoma 发表于 2017-3-20 10:23
换成0x27、0x3f地址都是这个问题,确认地址是0x27,我把我DS1302的程序发你了,按键设置后无法写入时钟芯 ...
在保存并退出的 t.min=sminute;下面加上
rtc.setDOW(SATURDAY); // 设置星期
rtc.setTime(shour, sminute,00); //设置时间
rtc.setDate(sdate, smonth,syear); // 设置日期2013年11月9日
rtc.writeProtect(true); //开启写保护
DS1302(2)库
singz
发表于 2017-3-20 10:55:20
本帖最后由 singz 于 2017-3-20 10:59 编辑
suoma 发表于 2017-3-20 10:23
换成0x27、0x3f地址都是这个问题,确认地址是0x27,我把我DS1302的程序发你了,按键设置后无法写入时钟芯 ...
第一个库的 设置函数是:
Time t(2009, 5, 19, 21, 16, 37, 3);
rtc.time(t);
数值改成变量后是:
Time t(syear, smonth, sdate, shour, sminute, 00, sdow);
rtc.time(t);
singz
发表于 2017-3-20 11:03:05
本帖最后由 singz 于 2017-3-20 11:05 编辑
suoma 发表于 2017-3-20 10:23
换成0x27、0x3f地址都是这个问题,确认地址是0x27,我把我DS1302的程序发你了,按键设置后无法写入时钟芯 ...
IIC库正确吗? 我看你发来的文件里用的是液晶库,如果是IDE自带的液晶库应该是不行的,自带的是并行总线的库,IIC总线要用另一个库
suoma
发表于 2017-3-20 11:10:45
singz 发表于 2017-3-20 11:03
IIC库正确吗? 我看你发来的文件里用的是液晶库,如果是IDE自带的液晶库应该是不行的,自带的是并行总 ...
两个都用了
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
用helloworld例程,有时液晶上电显示
singz
发表于 2017-3-20 11:20:33
suoma 发表于 2017-3-20 11:10
两个都用了
#include
#include
卖你 IIC 转接卡 的商家有提供库吗?
suoma
发表于 2017-3-20 13:10:29
singz 发表于 2017-3-20 11:20
卖你 IIC 转接卡 的商家有提供库吗?
提供了,就是用他的库中helloworld例程