一、模块介绍
通过雨雪传感器可以检测到雨雪
购买链接:
https://item.taobao.com/item.htm?spm=a1z10.5-c-s.w4002-18748153240.24.7eda723cVVKOLp&id=576159766147
雨雪传感器是利用雨水的导电特性,采用先进检测电路,检测是否有雨雪的仪器。
雨雪传感器采用表面栅形 电极感应外界雨雪情况,内部采用进口智能微处理器,反应灵敏、测量精度高。内置自动加热装置可排除雨雪附着的干扰,保障系统的正常运行。输出为一组常开、一组常闭开关信号,方便安装使用。
本产品可广泛用于 气象、海洋、环境、机场、港口、实验室、工农业及交通等领域的雨雪有无定性测量。
1、精度高,输入线电阻高,稳定性好。
2、体积小,安装方便。
3、传输距离长,抗干扰能力强。
4、结构设计合理,使用寿命长。
5、密封性好。
二、原理分析
P1端口的两个引脚连接的是模块表面的金属,两个引脚的线路之间没有连接点。当有水滴落到传感器表面时,使P1导通。此时,比较器U2的3脚电压为3.3V,1脚电压为0.3V,正极输入低于负极输入所以输出低电平。当P1不导通时,比较器U2的3脚电压为0V,1脚电压为0.3V,所以输出高电平。
三、代码解读
1、初始化IO口为输入。
GPIO_Init();
2、开启IO口复用时钟。
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);
3、设置IO口与中断线的映射关系。
void GPIO_EXTILineConfig();
4、初始化线上中断,设置触发条件等。
EXTI_Init();
5、配置中断分组(NVIC),并使能中断。
NVIC_Init();
6、编写中断服务函数。
EXTIx_IRQHandler();
7、清除中断标志位
EXTI_ClearITPendingBit();
四、实践操作
一、实验操作步骤:
1、将 STM32F103 核心板正确插接到魔法师 M3/M4 底板上,连接好 J-link 与 PC 机;
2、将 雨雪传感器 模块插到底板 P5 口,底板拨码 S1 拨向 ON 端;
3、编译整个工程,打开底板电源,烧写程序到核心板,并按一次复位按键。串口调试助手波特率为115200。
二、实验现象:
用手指触摸模块上的长条金属片,串口打印 报警信息。