【资源下载】下载地址如下:
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);//显示