ds18b20 STC89c52ƬϵͳLCD1602Һʾ
C棩
¶ȴڶ࣬Ӧ߾ȡ߿ɿԵijʱ DALLAS˹˾ DS18B20 ¶ȴʲáС͵Ӳǿȸߣӹǿʹ DS18B20 ܻӭͨĵӰ˵DS18B20 ƸѧϰƬͿ¶صСƷIJѡ˽乤ԭӦÿؿԵƬ˼· Ҫȫds18b20.pdf DS18B20 Ҫ ? ȫ¶ת ? Ƚĵͨš
? 12 λֱʣȿɴ 0.5϶ȡ ? 12 λֱʱΪ 750 롣 ? ѡʽ
? ¶ȷΧΪC55C ~+125C (C67F ~+257F) ? EEPROM±ܡ
? 64 λ ROMòƷкţҽӡ ? װʽӦͬӲϵͳ
DS18B20 Źܣ
GND ѹ DQ VDD Դѹ NC
DS18B20 ԭӦã
DS18B20 ¶ȼȫһоƬ֮ϣӶǿһڿɷΪ֣¶ȼݴڽ乤֮ǰбҪ˽ 18B20ڲ洢Դ18B20 2̬Ĵ洢ԴǷֱǣ 1> ROM ֻ洢ڴ DS18B20ID 룬ǰ 8 λǵϵб루DS18B20 ı19H 48 λоƬΨһкţ 8λ 56λ CRC루У飩ڳʱòûġDS18B20 64 λ ROM
2> RAM ݴڲݴȡڵʧDS18B20 9 ֽ RAMÿֽΪ 8 λ12 ֽ¶תֵϢ 34 ֽû EEPROM¶ȱֵ棩ľϵ縴λʱֵˢ¡ 5 ֽû 3 EEPROMľ 678 ֽΪĴΪûõߵ¶ȷֱʶƵģͬҲڲ¶תݴ浥Ԫ 9 ֽΪǰ 8ֽڵ CRC롣EEPROM ʧԼ壬ڴųҪݣ¶ȱֵУݣ DS18B203λEEPROM RAM ھԷû
ǻds18b20 STC89c52ƬϵͳLCD1602ҺʾC棩 #include
#define uchar unsigned char #define uint unsigned int
sbit DQ=P3^7;//ds18b20뵥Ƭӿ sbit RS=P3^0; sbit RW=P3^1;
sbit EN=P3^2;
unsigned char code str1[]={\ %unsigned char code str2[]={\ \
uchar data disdata[5]; uint tvalue;//¶ֵ uchar tflag;//¶־
/*************************lcd1602
**************************/
void delay1ms(unsigned int ms)//ʱ1루ȷģ {unsigned int i,j; for(i=0;i void wr_com(unsigned char com)//дָ// { delay1ms(1); RS=0; RW=0; EN=0;