基于51单片机的ds18b20数字华氏温度计

资料编号:114  下面是相关功能视频演示:

114-基于51单片机的数字华氏温度计报警(源码+仿真+全套资料)

功能讲解:

采用51单片机采集DS18B20的温度,LCD1602显示,并且可以设置上下限值,超过对应的值LED会有提醒,并且可以通过按键进行华氏温度转换显示,全套资料齐全:

 下面是部分程序展示:

void main()
{
    init();                                //LCD初始化
    Init_DS18B20();                        //DS18B20初始化
    while(1)                            //大循环
    { if(s1==0||s1num>=1)
        {    keyscan();                    //按键扫描
        }
    else{    ReadTemp();                    //读取温度值
            write_temp_value(0,temp_value);    //LCD显示温度值
        }
        comp();        
    }
}

void delay(uint z)                        //延时程序
{
    uint x,y;
    for(x=z;x>0;x--)
    for(y=110;y>0;y--);
}

void init()                        //LCD初始化程序
{   lcden=0;
      lcdrw=0;
    write_com(0x38);             //设置16x2 显示5x7 点阵,8 位数据接口
    write_com(0x0c);             //设置开始显示不显示光标
    write_com(0x06);             //写一个字符后地址指针加1
    write_com(0x01);             //显示清零数据指针清零
    write_com(0x80);             //将数据指针第一行第一个字处,
    
    write_com(0x80+9);             //定义当前指针位置
    write_data('H');                 //写入
    write_data(':');                 //写入
    write_data('+');                 //写入
    write_data('5');                 //写入
    write_data('0');                 //写入
    write_data(0xdf);                 //写入°
    write_data('C');                 //写入C
    write_com(0x80+9+0x40);          //定义当前指针位置
    write_data('L');                 //写入
    write_data(':');                 //写入
    write_data('-');                 //写入
    write_data('1');                 //写入
    write_data('0');                 //写入
    write_data(0xdf);                 //写入°
    write_data('C');                 //写入C
    h=0x32;
    l=0-0x0a;                         //h=45
    D1=1;
    D2=1;
    figh=0;                             //给正确初始值,便于上电比较
    figl=1;                             //给正确初始值,便于上电比较
}

下面是该资料的分享下载链接:

https://pan.baidu.com/s/1jMpfjrZYIpQ7JkwJfrkVhg?pwd=vtx7 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值