DS18B20在外形上和三极管很像,有三只脚。电压范围为3.0 V至5.5 V 无需备用电源 测量温度范围为-55 至+125 ℃ 。温度传感器可编程的分辨率为9~12位 温度转换为12位数字格式最大值为750毫秒 用户可定义的非易失性温度报警设置 应用范围包括恒温控制,工业系统,消费电子产品温度计,或任何热敏感系统。
下面是DS18B20的子程序,本人用过完全可行的:
#include《reg51.h》
#include《intrins.h》
#define uchar unsigned char
#define uint unsigned int
sbit DQ=P2^0;
void reset(); //DS18B20复位函数
void write_byte(uchar val); //DS18B20写命令函数
uchar read_byte(void); //DS18B20读1字节函数
void read_temp(); //温度读取函数
void work_temp(); //温度数据处理函数
uchar data temp_data[2]={0x00,0x00};
uchar data display[5]={0x00,0x00,0x00,0x00,0x00}; //对于温度显示值值
uchar code ditab[16]={0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09}; //温度小数部分查表
main()
{
while(1)
{
自己添加;
}
}
void delay1(uint t)
{
for(;t》0;t--);
}
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !