常用的传感器DS1320 DS18B20.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
常用的传感器DS1320 DS18B20.doc

好几天没有更新了,呵呵~~今天我把咱们常用的传感器DS1320 DS18B20给大家介绍下。 对于市面上的大多数51单片机开发板来说。ds1302和ds18b20应该是比较常见的两种外围芯片。ds1302是具有SPI总线接口的时钟芯片。ds18b20则是具有单总线接口的数字温度传感器。下面让我们分别来认识并学会应用这两种芯片。 首先依旧是看DS1302的datasheet中的相关介绍。 (原文件名:1.jpg) 上面是它的一些基本的应用介绍。 下面是它的引脚的描述。 (原文件名:2.jpg) 下面是DS1302的时钟寄存器。我们要读取的时间数据就是从下面这些数据寄存器中读取出来的。当我们要想调整时间时,可以把时间数据写入到相应的寄存器中就可以了。 (原文件名:3.jpg) 这是DS1302内部的31个RAM寄存器。在某些应用场合我们可以应用到。如我们想要做一个带定时功能的闹钟。则可以把闹钟的时间写入到31个RAM寄存器中的任意几个。当单片机掉电时,只要我们的DS1302的备用电池还能工作,那么保存在其中的闹钟数据就不会丢失~~ (原文件名:4.jpg) 由于对于这些器件的操作基本上按照数据手册上面提供的时序图和相关命令字来进行操作就可以了。因此在我们应用这些器件的时候一定要对照着手册上面的要求来进行操作。如果觉得还不够放心的话。可以到网上下载一些参考程序。对着手册看别人的程序,看别人的思路是怎么样的。 ? ? DS1302和单片机的连接很简单。只需一根复位线,一根时钟线,一根数据线即可。同时它本身还需要接一个32.768KHz的晶振来提供时钟源。对于晶振的两端可以分别接一个6PF左右的电容以提高晶振的精确度。同时可以在第8脚接上一个3.6V的可充电的电池。当系统正常工作时可以对电池进行涓流充电。当系统掉电时,DS1302由这个电池提供的能量继续工作。 ? ? 下面让我们来驱动它。 ? ? sbit io_DS1302_RST??= P2^0 ; ? ? sbit io_DS1302_IO? ? = P2^1 ; ? ? sbit io_DS1302_SCLK = P2^2 ; ? ? ? ? //-------------------------------------常数宏---------------------------------// ? ? #define DS1302_SECOND_WRITE? ?? ???0x80? ?? ?? ? //写时钟芯片的寄存器位置 ? ? #define DS1302_MINUTE_WRITE? ?? ???0x82 ? ? #define DS1302_HOUR_WRITE? ?? ???0x84 ? ? #define DS1302_WEEK_WRITE? ?? ???0x8A ? ? #define DS1302_DAY_WRITE? ?? ???0x86 ? ? #define DS1302_MONTH_WRITE? ?? ???0x88 ? ? #define DS1302_YEAR_WRITE? ?? ???0x8C ? ? #define DS1302_SECOND_READ? ?? ???0x81? ?? ?? ? //读时钟芯片的寄存器位置 ? ? #define DS1302_MINUTE_READ? ?? ???0x83 ? ? #define DS1302_HOUR_READ? ?? ???0x85 ? ? #define DS1302_WEEK_READ? ?? ???0x8B ? ? #define DS1302_DAY_READ? ?? ???0x87 ? ? #define DS1302_MONTH_READ? ?? ???0x89 ? ? #define DS1302_YEAR_READ? ?? ???0x8D //-----------------------------------操作宏----------------------------------// ? ? #define DS1302_SCLK_HIGH? ?? ???io_DS1302_SCLK = 1 ; ? ? #define? ? DS1302_SCLK_LOW? ?? ?? ?? ?io_DS1302_SCLK = 0 ; ? ? ? ? #define DS1302_IO_HIGH? ?? ?? ?? ?io_DS1302_IO??= 1 ; ? ? #define DS1302_IO_LOW? ?? ?? ?? ?io_DS1302_IO??= 0 ; ? ? #def

文档评论(0)

duyingjie1 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档