427【畢設課設】基於STM32微控制器行動式氣象儀風速風向檢測系統
阿新 • • 發佈:2020-12-05
【資源下載】下載地址如下:
https://docs.qq.com/doc/DTlRSd01BZXNpRUxl
STM32微控制器行動式氣象儀風速風向檢測系統69
本系統由STM32T103C8T6微控制器、風向採集模組、風速採集模組及電源組成。
1、微控制器實時採集風速感測器資料,將採集模擬量轉化為數字量,
計算風速大小,單位m/s,顯示精度0.1,範圍:0-30m/s。
2、微控制器實時採集風向感測器資料,將採集模擬量轉化為數字量,
計算風向角度,單位度,範圍0-360度。
3、LCD1602實時顯示當前風速大小,風向角度值。
注意:風向角度相對於風向模組上箭頭指向的方向位置。
TIM3_Int_Init(499,7199); //定時器初始化 LED_Init(); //初始化介面 Adc_Init(); //初始化ad轉換 Lcd_GPIO_init(); //液晶介面初始化 Lcd_Init(); //液晶配置初始化 delay_ms(20); while(1) { if(disFlag==1)//定時讀取標誌 { disFlag=0;//清空標誌 adcx=Get_Adc_Average(ADC_Channel_0,5);//讀取ad轉換值 5次求平均 fanSpeed = ((float)adcx*3.3/4096)*2*MAX_FAN_SPEED/5; //風速轉換 根據手冊 if(fanSpeed>300)fanSpeed=300; // adcx=Get_Adc_Average(ADC_Channel_1,5);//讀取ad轉換值 5次求平均 fanDir = ((float)adcx*3.3/4096)*2*360/5; //風向轉換 根據手冊 if(fanDir>360)fanDir=360; sprintf(dis0,"nowSpeed:%04.1fm/s ",(float)fanSpeed/10);//列印 Lcd_Puts(0,0,(u8 *)dis0);//顯示 sprintf(dis1,"nowDir :%03d ",(unsigned int)fanDir);//列印 Lcd_Puts(0,1,(u8 *)dis1);//顯示 Lcd_1Put(12,1,0xdf);//顯示