<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 51單片機(jī)-時(shí)鐘芯片DS1302

          51單片機(jī)-時(shí)鐘芯片DS1302

          作者: 時(shí)間:2016-12-02 來(lái)源:網(wǎng)絡(luò) 收藏
          在許多電子設(shè)備中,通常會(huì)進(jìn)行一些與時(shí)間有關(guān)的控制,如果用系統(tǒng)的定時(shí)器來(lái)設(shè)計(jì)時(shí)鐘的話(huà),偶然的掉電或晶振的誤差都會(huì)造成時(shí)間的錯(cuò)亂,更糟糕的是,若完全用程序設(shè)計(jì)時(shí)鐘還會(huì)占用大量的系統(tǒng)資源,從而嚴(yán)重影響系統(tǒng)的其他功能。為此,很多芯片制造公司都設(shè)計(jì)出了各種各樣的實(shí)時(shí)時(shí)鐘芯片。
          常見(jiàn)的時(shí)鐘芯片有兩種。
          一種是體積非常小的表貼是元件,通常用在高端小型手持式儀器或設(shè)備中。這種芯片在使用時(shí)需要外接備份電池和外部晶振,電池用來(lái)保持主系統(tǒng)在意外時(shí)為時(shí)鐘芯片供電,外部晶振用來(lái)給時(shí)鐘芯片所必須的震蕩來(lái)源。
          另一種體積相對(duì)較大,一般為直插式,它的內(nèi)部有可充電鋰電池,同時(shí)內(nèi)部還集成了32.768KHZ的標(biāo)準(zhǔn)晶振。
          DS18B20是由DALLAS公司生產(chǎn)的,采用普通的32.768KHZ。
          DS18B20的內(nèi)部結(jié)構(gòu):
          DS18B20的讀數(shù)據(jù)時(shí)序:
          如圖的數(shù)據(jù)序列,左邊是低位,右邊是高位,在負(fù)跳變沿進(jìn)行讀數(shù)據(jù),上升沿進(jìn)行寫(xiě)數(shù)據(jù)。
          DS18B20的寫(xiě)數(shù)據(jù)時(shí)序:
          數(shù)據(jù)在SCLK在上升沿輸入,前8位指定訪(fǎng)問(wèn)地址命令,在之后的時(shí)鐘周期,讀操作時(shí)輸出的數(shù)據(jù),寫(xiě)操作時(shí)輸入數(shù)據(jù)。時(shí)鐘脈沖的個(gè)數(shù)在單字節(jié)方式下為8個(gè)地址加8個(gè)數(shù)據(jù)。
          DS18B20的控制字:


          日歷時(shí)鐘寄存器與控制字對(duì)照:
          日歷時(shí)鐘寄存器:
          寄存器功能說(shuō)明:
          萬(wàn)年歷程序: #include <reg52.h>
          #define uchar unsigned char
          #define uint unsigned int
          uint i;
          sbit SCLK = P1^3;
          sbit IO = P1^4;
          sbit RST = P1^5;
          sbit RS = P1^0;
          sbit RW = P1^1;
          sbit E = P1^2;
          uchar Time_Data[]={0,1,2,3,4,5,6,7,8,9};

          上一頁(yè) 1 2 下一頁(yè)

          評(píng)論


          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();