怎样制作电子温度计
DS18B20是由dallas公司生产的可编程数字温度计,单总线通信,测量精确度高,使用便捷。
工具/原料
DS18B20温度传感器、51单片机最小系统、PL2303USB转串口模块,杜邦线
电脑和软件keil c51、pl2303驱动、stc-isp、串口调试助手
安装软件
1、安装好keil软件和PL2302驱动,打开设备管理器,确认PL2303安装正确。

2、选择atmel下的at89c51单片机

3、点“是”确认添加启动文件


6、/*编写初始化温度传感器的代码*/void initcgq(void){ uchar x=0; io=1; delay(8); io=0; delay(80); io=1; delay(14); delay(20);}

8、/*编写转温度的代码*/uint readt(void){uchar x=0,y=0;uint t=0;float tt=0;initcgq();write(0xCC);write(0x44);initcgq();write(0xCC);write(0xBE);x=read();y=read();t=y;t<<=8;t=t|x;tt=t*0.0625; t= tt*10+0.5; return(t);}

编译程序
1、点击target options按钮

3、点击rebuild按钮全部编译

5、在工程文件的相同目录里会生成对应的hex文件

2、将pl2303的5.0V连接单片机最小系统的VCC;将pl2303的txd连接单片机最小系统的rxd;将pl2303的rxd连接单片机最小系统的txd;将pl2303的gnd连接单片机最小系统的gnd;

4、点击下载-编程按钮,之后断开单片机最小系统上的vcc线,一秒之后再将vcc接回原处

2、连接完成之后插入电脑

4、十六进制数转换为十进制,除以10,就得到了十进制的摄氏度(比如我的是fb,转10进是251,温度为25.1摄氏度)
5、如果测得温度过低,可能是数据溢出.只需要在原始数据加上FF(25.5)即可