请问温度传感器DS18B20的实际序列号是否一定要通过实际硬件调试才能得到?

来源:百度知道 编辑:UC知道 时间:2024/09/27 17:29:49
刚买了DS18B20温度传感器,想用多片该传感器在单线上,但书上说每个DS18B20都有自己的序列号。
而我看了传感器封装上并没有提及序列号,那么是不是该把DS18B20焊进电路里,利用DS18B20的读取指令,用仿真器来读取实际中该DS18B20温度传感器的序列号??
不然我真的想不到其他办法来知道它的序列号。不知道它们各自的序列号就没法多路来探测温度。

基本上是这样的,可以用仿真器读取每一个18B20的序列号.也可以单独找一块有数码管或液晶显示的板子,专门烧个片子读序列号,然后显示出来,玩单片机的人这种板子肯定会有吧,没有的话焊一块出来也很快.
如果有兴趣的话还可以把读序列号的子程序融合到你测量温度的主程序中.条件:单片机内含有或板上有EEPROM.方法:设一个I/O口跳线,可临时将I/O口置高电平或低电平(实际上接个按钮也行),主程序一开始就读这个I/O口,低电平就读序列号,并将序列号写入EEPROM(当然18B20每次只能接一个读取,多个18B20可分次读取,存入EEPROM不同的地址),如果高电平就执行测量温度的程序,序列号从EEPROM中获取.这种方法比较麻烦,但可提高系统的可维护性,做好了就一劳永逸,否则一旦某个18B20损坏更换,就必须依赖仿真器读序列号,还要到主程中修改,再用编程器重新烧片子.

是的,一定要通过