1.基础知识
2.代码部分
#include "ds18b20_hal.h"
#define delay_us(X) delay((X)*100/5)//80改为100
float ds18b20_read()
{
uint8_t high,low;
uint16_t dat;
ow_reset();
ow_byte_wr(OW_SKIP_ROM);
ow_byte_wr(DS18B20_CONVERT);
HAL_Delay(1);
ow_reset();
ow_byte_wr(OW_SKIP_ROM);
ow_byte_wr(DS18B20_READ);
low=ow_byte_rd();
high=ow_byte_rd();
dat=(high<<8)+low;
return dat*0.0625;
}
DHT11代码不用改
void loop()
{
float DS_temp,DHT_temp,DHT_humi;
DS_temp = ds18b20_read();
DHT11_Read_Data(&DHT_temp, &DHT_humi);
sprintf(text,"DT:%.2f ",DS_temp);
LCD_DisplayStringLine(Line3,(uint8_t *)text);
sprintf(text,"HT:%.2f,HH:%.0f ",DHT_temp,DHT_humi);
LCD_DisplayStringLine(Line4,(uint8_t *)text);
}