📄 main.c
字号:
#include "reg51.h"
#include "ds18b20.h" //引入DS18B20头文件
#include "1602.h" //引入DS18B20头文件
//变量定义:
uchar ly_dis[4];//定义显示缓冲区
//函数声明:
void display(void);//显示函数,显示缓冲区内容
//主函数,C语言的入口函数:
void main()
{
unsigned int i=0;
float tt;
int ltemp;
LCDInit();
DisplayListChar(0, 0, "Temperature:");
while(1)
{
if(i==0)
tmpchange(); //温度转换
if(i==100)
{
tt=tmp()*0.0625; //得到真实十进制温度值,因为DS18B20
//可以精确到0.0625度,所以读回数据的最低位代表的是0.0625度。
ltemp=tt*10+0.5; //放大十倍,这样做的目的将小数点后第一位也转换为可显示数字,同时进行一个四舍五入操作。
if(ltemp<0)
{ //判断第一位显示整数还是负号
ly_dis[0]=0xbf;
ltemp=0-ltemp;
}
else
ly_dis[0]=ltemp/1000;//显示百位值
ltemp=ltemp%1000;
ly_dis[1]=ltemp/100; //显示温度十位值
ltemp=ltemp%100;
ly_dis[2]=ltemp/10; //显示温度个位值
ly_dis[3]=ltemp%10; //显示小数点后一位
}
i++;
if(i==3000)
i=0;
display(); //调用显示
}
}
//显示函数,参数为显示内容
void display()
{
if(0==ly_dis[0])
DisplayOneChar(1, 1, ' ');
else
DisplayOneChar(1, 0, table[ly_dis[0]]);
DisplayOneChar(2, 1, table[ly_dis[1]]);
DisplayOneChar(3, 1, table[ly_dis[2]]);
DisplayOneChar(4, 1, '.');
DisplayOneChar(5, 1, table[ly_dis[3]]);
DisplayOneChar(6, 1, 0xdf);
DisplayOneChar(7, 1, 'C');
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -