ds18b20送1602显示 无显示

2020-01-22 12:13发布

涉及到自己编写的头文件
主程序如下#include <reg51.h>
#include "lcd1602.h"
#include "ds18b20.h"
#define uchar unsigned char
int temp;float ftemp;
uchar tempchange()
{        uchar a,b;
        init_ds18b20();
        Delay_us(10);
        writeonebyte(0xcc);
        writeonebyte(0x44);

        init_ds18b20();
        writeonebyte(0xcc);
        writeonebyte(0xbe);
        a=readonebyte();
        b=readonebyte();
        temp=b;
        temp<<=8;
        temp=temp|a;
        ftemp=temp*0.0625;
        temp=ftemp*10+0.5;
        ftemp=ftemp+0.05;
        return temp;
}
void main()
{        int i,m;
        uchar wendu[10];
        delay_ms(15);
        LCD_init();
        while(1)
        {        for(m=0;m<100;m++)
                {
                        tempchange();
                        wendu[m]=temp;
                        m++;
                }
                LCD_w_com(0x80);
                for(i=0;i<4;i++)
                {
                        LCD_w_data(wendu[4]);
                 }       
        }
}
工程也上传了


不晓得怎么回事   ,lcd1602不显示温度
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
11条回答
tangjiaqq
1楼-- · 2020-01-23 11:54
dswybs 发表于 2014-9-4 15:08
DS18B20有没有调通哦,先通过串口把温度值读到串口助手看看,是不是对的

好的  我试试  谢谢
黑夜之狼
2楼-- · 2020-01-23 15:55
 精彩回答 2  元偷偷看……
lisingch
3楼-- · 2020-01-23 18:22
顶三楼。
别有洞天下
4楼-- · 2020-01-23 19:20
帮顶吧,让大神来看
lijie1116
5楼-- · 2020-01-23 21:53
第一步. 调通串口  2.串口输出程序运行信息

一周热门 更多>