![]() |
#include "stm32f10x.h" #include "delay.h" #include "oled.h" #include "sys.h" #include "DTH117.h" #include "usart.h" #include "timer.h" #include "led.h" #include "bh1750.h" u8 temp = 0;//定義全局變量 u8 humi = 0; u8 t = 0; u8 light = 0; void TIM2_Int_Init(u16 arr,u16 psc);//對該函數(shù)進(jìn)行提前聲明,防止**《》**標(biāo)記行報錯 //void LED_Init();//包含了頭文件這個可以省 int main() { SystemInit();//開啟系統(tǒng)時鐘 delay_init();//初始化延時函數(shù) TIM2_Int_Init(4999,7199);//**《》** // LED_Init(); NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //0正常顯示;1對應(yīng)的反顯和旋轉(zhuǎn)顯示。 OLED_ColorTurn(0); OLED_DisplayTurn(0); OLED_Init();//oled初始化 // OLED_Clear();//對oled進(jìn)行一次清屏 /*******************************dht11操作函數(shù)*********************************/ Usart1_Init(115200);//開啟串口一 DHT11_Init();//初始化dht11模塊 bh1750_Init();//初始化bh1750 //顯示溫濕度 OLED_ShowChinese(0,16,4,16,1); OLED_ShowChinese(16,16,3,16,1); OLED_ShowChinese(32,16,5,16,1); OLED_ShowChinese(0,32,2,16,1); OLED_ShowChinese(16,32,3,16,1); OLED_ShowChinese(32,32,5,16,1); //顯示冒號u8*是強(qiáng)制類型轉(zhuǎn)換 OLED_ShowString(49,16,(u8*)":",16,1); OLED_ShowString(49,32,(u8*)":",16,1); OLED_Refresh(); while(1){ /*******************函數(shù)功能:啟動dht11并進(jìn)行溫濕度檢測,進(jìn)行串口打印******************/ // DHT11_Read_Data(&temp,&humi);//DHT11讀取數(shù)據(jù) // // UsartPrintf(USART_DEBUG,"濕度%d 溫度%d",temp,humi);//串口打印函數(shù) // delay_ms(100);//延時0.1秒 /*******************函數(shù)功能:啟動BH1750光照強(qiáng)度傳感器********************/ // Light=getValue(); // bh1750_ReadOneTime(); // bh1750_ReadContinuous1(); /*******************函數(shù)功能:啟動OLED顯示屏********************/ //這個函數(shù)沒用起來,還請大佬門在評論區(qū)幫忙解決一下,罵輕點(diǎn)。。。。 ////////// OLED_ShowString(35,16,(u8*)"濕度:",16,1); ////////// OLED_ShowString(35,32,(u8*)"溫度:",16,1); ////////// OLED_Refresh(); if(t%10==0) //每100ms讀取一次 { DHT11_Read_Data(&temp,&humi); //讀取溫濕度 UsartPrintf(USART_DEBUG,"濕度%d 溫度%d",temp,humi); //打印串口數(shù)據(jù) ,再加一個光照強(qiáng)度%d light OLED_ShowNum(57,16,humi,2,16,1); //顯示濕度 OLED_ShowNum(57,32,temp,2,16,1); //顯示溫度 // OLED_ShowNum(57,64,light,2,16,1); OLED_Refresh(); //更新顯示到OLED } delay_ms(50); t++; } ////////// OLED_ShowString(0,0,(u8*)"溫度",16,0); //delay_ms(5000); } 第一次發(fā)見諒,main.c沒發(fā)出去 |
Powered by 單片機(jī)教程網(wǎng)