当前位置: 首页 > news >正文

stm32之雨滴传感器使用记录

一、简介

        雨滴传感器、烟雾传感器(MQ2)、轨迹传感器、干黄管等的原理都类似,都是将检测到的信号通过LM393进行处理之后再输出,可以输出数字信号DO(0和1)和模拟信号A0。

雨滴传感器在正常情况下是AO输出的是工作电压,如果遇到水,电压会迅速下降。当然在遇到水时DO输出0,正常输出1。

实物图(曾被雨水泡过,生锈了) 

 

原理图

CubeMX配置,PC13用于DO口或者通过ADC(PA3)

二、代码

数字信号检测

GPIO_PinState state = HAL_GPIO_ReadPin(GPIOC, GPIO_PIN_13);
if(state == GPIO_PIN_RESET) {printf("water\r\n");
}

模拟信号检测

uint16_t ADC_Read(uint32_t Channel)
{ADC_ChannelConfTypeDef sConfig = {0};sConfig.Channel = Channel;                                         /* 通道 */sConfig.Rank = ADC_REGULAR_RANK_3;                              sConfig.SamplingTime = ADC_SAMPLETIME_1CYCLE_5;                  /* 采样时间 */if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)             {Error_Handler();}HAL_ADC_Start(&hadc1);HAL_ADC_PollForConversion(&hadc1, HAL_MAX_DELAY);return (uint16_t)HAL_ADC_GetValue(&hadc1);
}result = ADC_Read(ADC_CHANNEL_3);
printf("result = %f\r\n", 5.0/4096 * result);

三、效果图

http://www.lryc.cn/news/182100.html

相关文章:

  • 华硕平板k013me176cx线刷方法
  • C#停车场管理系统
  • C++:stl:stack、queue、priority_queue介绍及模拟实现和容量适配器deque介绍
  • ​【Java】面向对象程序设计 课程笔记 面向对象基础
  • Hive【Hive(五)函数-高级聚合函数、炸裂函数】
  • zabbix(二)
  • 容器安全检测工具KubeHound使用
  • 机器学习笔记 - 基于强化学习的贪吃蛇玩游戏
  • C++_pen_类
  • MySQL 多表关联查询优化实践和原理解析
  • LeNet网络复现
  • Oracle 慢查询排查步骤
  • 互联网Java工程师面试题·MyBatis 篇·第二弹
  • Linux 下如何调试代码
  • 腾讯云服务器简介和使用流程
  • python 二分查找
  • 通过async方式在浏览器中调用web worker
  • FPGA project : TFT_LCD
  • 2023年-华为机试题库B卷(Python)【满分】
  • 创建GCP service账号并管理权限
  • 想要精通算法和SQL的成长之路 - 验证二叉树
  • ERROR 6400 --- [ main] com.zaxxer.hikari.pool.HikariPool : root - Exception
  • CART算法解密:从原理到Python实现
  • C++项目:【高并发内存池】
  • [论文笔记]BitFit
  • 浅谈yolov5中的anchor
  • RabbitMQ-工作队列
  • 网站安全防护措施
  • C++的继承基础和虚继承原理
  • 第三章:最新版零基础学习 PYTHON 教程(第十三节 - Python 运算符—Python 中的运算符函数 - 套装2)