|
想在stm32單片機中通過DHT11傳感器返回的溫濕度自動控制繼電器的開合,但是代碼好像并沒有起到控制繼電器的作用,并且運行的時候溫濕度在lcd上沒有正常顯示,求大神指點如何修改一下代碼,最終可以通過DHT11檢測到的溫濕度控制繼電器的開合,控制繼電器的代碼如下():
GPIO_SetBits(GPIO_jidianqi,jidianqi);
GPIO_ResetBits(GPIO_jidianqi2,jidianqi2);
while(1)
{
if(temp>10&&humi>10)
{
GPIO_SetBits(GPIO_jidianqi,jidianqi);
GPIO_SetBits(GPIO_jidianqi2,jidianqi2);
}
}
主函數(shù)的代碼:
#include "system.h"
#include "SysTick.h"
#include "led.h"
#include "usart.h"
#include "tftlcd.h"
#include "dht11.h"
#include "jidianqi.h"
void data_pros()
{
u8 temp;
u8 humi;
u8 temp_buf[3],humi_buf[3];
DHT11_Read_Data(&temp,&humi);
temp_buf[0]=temp/10+0x30;
temp_buf[1]=temp%10+0x30;
temp_buf[2]='\0';
LCD_ShowString(55,100,tftlcd_data.width,tftlcd_data.height,16,temp_buf);
humi_buf[0]=humi/10+0x30;
humi_buf[1]=humi%10+0x30;
humi_buf[2]='\0';
LCD_ShowString(55,130,tftlcd_data.width,tftlcd_data.height,16,humi_buf);
printf("ζè=%d¡ãC êa¶è=%d%%RH\r\n",temp,humi);
GPIO_SetBits(GPIO_jidianqi,jidianqi);
GPIO_ResetBits(GPIO_jidianqi2,jidianqi2);
while(1)
{
if(temp>10&&humi>10)
{
GPIO_SetBits(GPIO_jidianqi,jidianqi);
GPIO_SetBits(GPIO_jidianqi2,jidianqi2);
}
}
}
int main()
{
u8 i=0;
u8 temp;
u8 humi;
SysTick_Init(72);
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
LED_Init();
USART1_Init(115200);
TFTLCD_Init();
jiqianqi_Init();
FRONT_COLOR=BLACK;
LCD_ShowString(10,10,tftlcd_data.width,tftlcd_data.height,16,"PRECHIN STM32F1");
LCD_ShowString(10,30,tftlcd_data.width,tftlcd_data.height,16,"www8prechin8net");
LCD_ShowString(10,50,tftlcd_data.width,tftlcd_data.height,16,"DHT11 Test");
LCD_ShowString(10,100,tftlcd_data.width,tftlcd_data.height,16,"Temp: C");
LCD_ShowString(10,130,tftlcd_data.width,tftlcd_data.height,16,"Humi: %RH");
FRONT_COLOR=RED;
while(DHT11_Init()) //¼ì2aDS18B20êÇ·ñ′¿Ôú
{
LCD_ShowString(130,50,tftlcd_data.width,tftlcd_data.height,16,"Error ");
printf("DHT11 Check Error!\r\n");
delay_ms(500);
}
LCD_ShowString(130,50,tftlcd_data.width,tftlcd_data.height,16,"Success");
printf("DHT11 Check OK!\r\n");
while(1)
{
i++;
if(i%20==0)
{
LED1=!LED1;
data_pros();
}
delay_ms(10);
}
}
|
|