|
如題,做一個(gè)環(huán)境檢測系統(tǒng),用了SHT31和GY39,一時(shí)興起,就把兩個(gè)溫濕度拿來比比,然后發(fā)現(xiàn)LCD1602第二排顯示錯(cuò)誤,濕度的%RH后面多出了兩個(gè)HH,在按下按鍵(顯示大氣壓力和光照時(shí))第二排變成了KPaaa,多了兩個(gè)aa但是程序里應(yīng)該是沒有寫入重復(fù)字符的啊求教
下面是主程序部分的LCD部分程序
LcdInit();
if(count==1)
{
LcdWriteData(Bme.Temp/1000+0X30);
LcdWriteData(Bme.Temp%1000/100+0X30);
LcdWriteData('.');
LcdWriteData(Bme.Temp%100/10+0X30);
LcdWriteData(0xdf);
LcdWriteData('C');
LcdWriteData(' ');
LcdWriteData(' ');
LcdWriteData(' ');
LcdWriteData(Bme.Hum/1000+0x30);
LcdWriteData(Bme.Hum%1000/100+0x30);
LcdWriteData('%');
LcdWriteData('R');
LcdWriteData('H');
LcdWriteCom(0x40+0x80);
LcdWriteData(a/10+0X30);
LcdWriteData(a%10+0X30);
LcdWriteData('.');
LcdWriteData(b%10+0X30);
LcdWriteData(0xdf);
LcdWriteData('C');
LcdWriteData(' ');
LcdWriteData(' ');
LcdWriteData(' ');
LcdWriteData(c/10+0X30);
LcdWriteData(c%10+0X30);
LcdWriteData('%');
LcdWriteData('R');
LcdWriteData('H');
delay(50000);
}
else if(count==2)
{
LcdWriteData('L');
LcdWriteData('u');
LcdWriteData('x');
LcdWriteData(':');
LcdWriteData(Lux/100000+0X30);
LcdWriteData(Lux%100000/10000+0X30);
LcdWriteData(Lux%10000/1000+0X30);
LcdWriteData(Lux%1000/100+0X30);
LcdWriteData('.');
LcdWriteData(Lux%100/10+0X30);
LcdWriteData(Lux%10+0X30);
LcdWriteCom(0x40+0x80);
LcdWriteData('P');
LcdWriteData(':');
LcdWriteData(Bme.P/100/100000+0x30);
LcdWriteData(Bme.P/100%100000/10000+0x30);
LcdWriteData(Bme.P/100%10000/1000+0x30);
LcdWriteData('.');
LcdWriteData(Bme.P/100%1000/100+0x30);
LcdWriteData(Bme.P/100%100/10+0x30);
LcdWriteData(Bme.P/100%10+0x30);
LcdWriteData('k');
LcdWriteData('p');
LcdWriteData('a');
delay(50000);}
|
-
圖1.jpg
(721.92 KB, 下載次數(shù): 35)
下載附件
2020-5-27 13:29 上傳
第二排那個(gè)后面多兩個(gè)H
-
圖2.jpg
(3.2 MB, 下載次數(shù): 33)
下載附件
2020-5-27 13:30 上傳
多了兩個(gè)a
|