51單片機-時鐘芯片DS1302
常見的時鐘芯片有兩種。
一種是體積非常小的表貼是元件,通常用在高端小型手持式儀器或設(shè)備中。這種芯片在使用時需要外接備份電池和外部晶振,電池用來保持主系統(tǒng)在意外時為時鐘芯片供電,外部晶振用來給時鐘芯片所必須的震蕩來源。
另一種體積相對較大,一般為直插式,它的內(nèi)部有可充電鋰電池,同時內(nèi)部還集成了32.768KHZ的標準晶振。
DS18B20是由DALLAS公司生產(chǎn)的,采用普通的32.768KHZ。
DS18B20的內(nèi)部結(jié)構(gòu):
DS18B20的讀數(shù)據(jù)時序:
如圖的數(shù)據(jù)序列,左邊是低位,右邊是高位,在負跳變沿進行讀數(shù)據(jù),上升沿進行寫數(shù)據(jù)。
DS18B20的寫數(shù)據(jù)時序:
數(shù)據(jù)在SCLK在上升沿輸入,前8位指定訪問地址命令,在之后的時鐘周期,讀操作時輸出的數(shù)據(jù),寫操作時輸入數(shù)據(jù)。時鐘脈沖的個數(shù)在單字節(jié)方式下為8個地址加8個數(shù)據(jù)。
DS18B20的控制字:
日歷時鐘寄存器與控制字對照:
日歷時鐘寄存器:
寄存器功能說明:
萬年歷程序: #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};
關(guān)鍵詞:
51單片機時鐘芯片DS130
評論