标题:
基于stm32f407的雨滴传感器源程序
[打印本页]
作者:
qwertytyui
时间:
2020-7-31 13:11
标题:
基于stm32f407的雨滴传感器源程序
基于stm32f407的雨滴传感器,原理就是进行ADC采样,然后使用模拟量输出口A0,D0可以不用接,因为是直接输出高低电平,再接VCC和GND就可以了,我是用的是PB1,通道9采样详情请看附件。
单片机源程序如下:
#include "Raindrops.h"
//雨滴传感器,PB1采样,通道9
void Raindrops_Get(void)
{
u16 adcx;
float temp,rh;
adcx=Get_Adc_Average(ADC_CH9,20);
LCD_ShowxNum(134,220,adcx,4,16,0); //显示ADC的值
rh=1.0f-(float)adcx/4096; //雨滴采样公式
temp=(float)adcx*(3.3/4096);
adcx=temp;
LCD_ShowxNum(134,240,adcx,1,16,0); //显示电压值
temp-=adcx;
temp*=1000;
LCD_ShowxNum(150,240,temp,3,16,0X80);
LCD_ShowxNum(134,260,rh*100,6,16,0); //显示湿度的值
delay_ms(250);
}
复制代码
#include "sys.h"
#include "delay.h"
#include "usart.h"
#include "led.h"
#include "lcd.h"
#include "adc.h"
#include "Raindrops.h"
int main(void)
{
Stm32_Clock_Init(336,8,2,7);//设置时钟,168Mhz
delay_init(168); //延时初始化
uart_init(84,115200); //初始化串口波特率为115200
LED_Init(); //初始化LED
LCD_Init(); //初始化LCD
Adc_Init(); //初始化ADC
POINT_COLOR=BLUE;//设置字体为蓝色
LCD_ShowString(30,220,200,16,16,"ADC1_CH9_VAL:");
LCD_ShowString(30,240,200,16,16,"ADC1_CH9_VOL:0.000V");
LCD_ShowString(30,260,200,16,16," RH: %");
while(1)
{
Raindrops_Get();
}
}
复制代码
所有资料51hei提供下载:
雨滴传感器.7z
(151.56 KB, 下载次数: 122)
2020-7-31 15:51 上传
点击文件名下载附件
下载积分: 黑币 -5
作者:
summer0492
时间:
2022-6-30 22:20
这个是用的哪个雨滴传感器呢?FC37吗
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1