關(guān)于DS18B20系列號
讀取ROM方法:先復(fù)位DS18B20,成功后執(zhí)行讀取ROM命令(33H),然后將這64位以8個字節(jié)的方式存入數(shù)組,最后用LCD或LED逐個字節(jié)顯示出來。下面是讀取ROM的主程序:
void main()
{
uchar i;
uint j=200;
rest_ds18b20();//復(fù)位
write_ds18b20(0x33); //讀序列號
for(i=0;i<8;i++)
Rom_18B20[i]=read_ds18b20();
while(1)
{
for(i=0;i<8;i++)
{
while(j--)
dis(i,16,Rom_18B20[i]/16,Rom_18B20[i]%16,16,16);//數(shù)碼管顯示
j=200;
}
}
}
在讀取ROM實(shí)驗(yàn)中發(fā)現(xiàn):仿真或?qū)嶋H電路實(shí)驗(yàn)第0字節(jié)均為28,這情有可原,因?yàn)檫@是DS的產(chǎn)品類型標(biāo)號。但第5、6字節(jié)均為00,無論仿真或?qū)嶋H電路實(shí)驗(yàn)都是如此。如果真的這樣,那第5、6字節(jié)就失去意義了,64位ROM其實(shí)就只有48位了。真的嗎?
評論