STM32用DHT11采集温湿度在LCD上显示一直有00

2019-07-21 03:21发布

void data_pros()//一开始上电,温度后面会显示00,湿度后面显示:8,然后采集到数据后,这两个就一直在
{
u8 temp;            
u8 humi;
u8 temp_buf[3];
u8 humi_buf[3];

DHT11_Read_Data(&temp,&humi);
temp_buf[0]=temp/10+0x30;
temp_buf[1]=temp%10+0x30;
temp_buf[2]='';
Show_Str(60,25,RED,YELLOW,temp_buf,24,1);


humi_buf[0]=humi/10+0x30;
humi_buf[1]=humi%10+0x30;
humi_buf[2]='';
Show_Str(60,50,YELLOW,YELLOW,humi_buf,24,1);

}
int main(void)
{
u8 i;
SystemInit();
delay_init(72);       
LCD_Init();
LCD_Clear(BLACK);
DHT11_Init();
POINT_COLOR=WHITE;

LCD_DrawRectangle(0,0,128-1,128-1);

Show_Str(32,5,BLUE,YELLOW,"系统监控",16,0);

Show_Str(5,25,RED,YELLOW,"温度   C",24,1);

Show_Str(5,50,YELLOW,YELLOW,"湿度   %",24,1);

while(1)
{
i++;
if(i%20==0)
{
   data_pros();
}
  delay_ms(10);
}
         
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。