矿石收音机论坛

 找回密码
 加入会员

QQ登录

只需一步,快速开始

搜索
查看: 7606|回复: 10

用YJD1602四线驱动+DS1302+DS18B20+89C52构成的带温度时钟

[复制链接]
     
发表于 2011-1-26 13:16:26 | 显示全部楼层 |阅读模式
用YJD1602四线驱动+DS1302+DS18B20+89C52构成的带温度时钟
/*=====================================================
用YJD1602四线驱动+DS1302+DS18B20+89C52构成的带温度时钟

P0^0=接YJD1602的 4脚 RS
P0^1=接YJD1602的 5脚 RW
P0^2=接YJD1602的 6脚 EN
P0^4=接YJD1602的11脚 D4
P0^5=接YJD1602的12脚 D5
P0^6=接YJD1602的13脚 D6
P0^7=接YJD1602的14脚 D7

程序编写:LBQ691477940     23-01-2011   16:30

======================================================*/
用YJD1602四线驱动+DS1302+DS18B20+89C52构成的带温度时钟.c (17.72 KB, 下载次数: 102)
CIMG0720.JPG
CIMG0721.JPG
CIMG0724.JPG
CIMG0742.JPG
CIMG0744.JPG
     
发表于 2011-1-26 19:33:13 | 显示全部楼层
不错哦!有源程序来学习就更好了!
回复 支持 反对

使用道具 举报

发表于 2011-4-4 17:25:38 | 显示全部楼层
不错,有电路图吗?参考一下.
回复 支持 反对

使用道具 举报

     
发表于 2011-4-4 17:39:10 | 显示全部楼层
我对DS1302不感冒,正常读取时间没问题,停电后再启动,读出的时间就错误了,一直搞不清楚原因.
回复 支持 反对

使用道具 举报

     
发表于 2011-4-5 10:19:24 | 显示全部楼层
板不错,热转印法?
回复 支持 反对

使用道具 举报

发表于 2011-4-5 11:04:30 | 显示全部楼层
原帖由 zhqi2ky 于 2011-4-4 17:39 发表
我对DS1302不感冒,正常读取时间没问题,停电后再启动,读出的时间就错误了,一直搞不清楚原因.

怎么会呢?接入备用电池了吗?正确连接备用电池到VCC1,则断开主电源VCC2,DS1302一旦检测到VCC1高于VCC2就会立即用VCC1维持它继续走时。不会错误的
回复 支持 反对

使用道具 举报

     
发表于 2011-4-6 08:32:14 | 显示全部楼层
原帖由 wey05 于 2011-4-5 11:04 发表

怎么会呢?接入备用电池了吗?正确连接备用电池到VCC1,则断开主电源VCC2,DS1302一旦检测到VCC1高于VCC2就会立即用VCC1维持它继续走时。不会错误的

备用电池接3伏特的计算机纽扣电池,到了后面什么措施都使用了:
1、更换集成电路(怀疑质量不好)
2、减小上拉电阻到1k,
3、降低51单片机频率到455K。(以为读数据太快)
但是也不是次次都错。就是没有规律。网上百度一下,好像其他人也有这种情况。
回复 支持 反对

使用道具 举报

发表于 2011-4-6 20:08:26 | 显示全部楼层
求电路图,谢谢!
回复 支持 反对

使用道具 举报

     
发表于 2011-4-7 21:52:07 | 显示全部楼层
但是ds1302也就是没事做块小玩意玩玩,真正要记时的话就不行了~干扰因素太多比如外部环境温度,晶振等,真正做块表还是看看达拉斯其他产品吧,比如DS12887等DS1337等内部晶振的!我做的一块表用DS1302每星期在18度环境下快4秒
回复 支持 反对

使用道具 举报

     
发表于 2011-4-8 12:43:41 | 显示全部楼层

回复 9# 生活的旋律 的帖子

DS1302每星期在18度环境下快4秒,
这个误差不大啊,旋律兄是用的DIP封装+外接晶振吗
回复 支持 反对

使用道具 举报

     
发表于 2012-11-11 23:11:45 | 显示全部楼层
zhqi2ky 发表于 2011-4-4 17:39
我对DS1302不感冒,正常读取时间没问题,停电后再启动,读出的时间就错误了,一直搞不清楚原因.

那就是没处理好程序初始化问题,单片机第一次上电后,先读取DS1302寄存器内容是否是自定义的内容(0x33)?不是则向

DS1302寄存器写入一个标记(自己定义,例如这里说的0x33),然后再写入初始化时间,表示系统是第一次上电;这样,下次断电

后重启,只要DS1302电池还有电,就会回读到0x33,继续读时间就行了,不能再初始化了,不然就错了


回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入会员

本版积分规则

小黑屋|手机版|矿石收音机 ( 蒙ICP备05000029号-1 )

蒙公网安备 15040402000005号

GMT+8, 2025-4-30 21:10

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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