文件名称:DS1302程序
文件大小:57KB
文件格式:DOC
更新时间:2014-12-06 13:54:45
1302
ds1302程序 bit DS18B20_ReadBit(void) // 读一位 { uint i; bit dat; DS=0;i++; //小延时一下 DS=1;i++;i++; dat=DS; i=8;while(i>0)i--; return (dat); } uchar DS18B20_ReadByte(void) //读一个字节 { uchar i,j,dat; dat=0; for(i=1;i<=8;i++) { j=DS18B20_ReadBit(); dat=(j<<7)|(dat>>1); //读出的数据最低位在最前面,这样刚好//一个字节在DAT里 } return(dat); //将一个字节数据返回 } void DS18B20_WriteByte(uchar dat) { //写一个字节到DS18B20里 uint i; uchar j; bit testb; for(j=1;j<=8;j++) { testb=dat&0x01; dat=dat>>1; if(testb) // 写1部分 { DS=0; i++;i++; DS=1; i=8;while(i>0)i--; } else { DS=0; //写0部分 i=8;while(i>0)i--; DS=1; i++;i++; } } }