STM32单片机雨滴模块

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

    • STM32单片机雨滴模块
  • 前言
  • 一、设备说明
  • 二、部分关键代码
    • 1.初始化ADC采集
    • 2.读入数据
  • 总结

前言

STM32单片机雨滴模块功能实现


一、设备说明

单片机:STM32f103zet6
雨滴模块


片描述

二、部分关键代码

1.初始化ADC采集

代码如下(示例):

void  Adc_Init(void)
{   ADC_InitTypeDef ADC_InitStructure; GPIO_InitTypeDef GPIO_InitStructure;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA |RCC_APB2Periph_ADC1 , ENABLE );   //使能ADC1通道时钟RCC_ADCCLKConfig(RCC_PCLK2_Div6);   //设置ADC分频因子6 72M/6=12,ADC最大时间不能超过14M//PA1 作为模拟通道输入引脚                         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;     //模拟输入引脚GPIO_Init(GPIOA, &GPIO_InitStructure);
//**All notes can be deleted and modified**//ADC_InitStructure.ADC_Mode = ADC_Mode_Independent;    //ADC工作模式:ADC1和ADC2工作在独立模式ADC_InitStructure.ADC_ScanConvMode = DISABLE;    //模数转换工作在单通道模式ADC_InitStructure.ADC_ContinuousConvMode = DISABLE;  //模数转换工作在单次转换模式ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None; //转换由软件而不是外部触发启动ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right; //ADC数据右对齐ADC_InitStructure.ADC_NbrOfChannel = 1;  //顺序进行规则转换的ADC通道的数目ADC_Init(ADC1, &ADC_InitStructure);  //根据ADC_InitStruct中指定的参数初始化外设ADCx的寄存器    ADC_Cmd(ADC1, ENABLE); //使能指定的ADC1 ADC_ResetCalibration(ADC1); //使能复位校准     while(ADC_GetResetCalibrationStatus(ADC1));    //等待复位校准结束  ADC_StartCalibration(ADC1);  //开启AD校准while(ADC_GetCalibrationStatus(ADC1));  //等待校准结束

2.读入数据

代码如下(示例):

         adcx=Get_Adc_Average(ADC_Channel_0,5);//读取ad转换值 5次求平均      printf(" adcx %d\r\n",adcx);  sensorVal =99-((float)adcx*3.3/4096)*2*99.0/5.0;// 采集值  *2表示电阻分压   输出最大5v 但是要转化为最大3.3v     sensorVal =99-((float)adcx*3.3/4096)*99.0/5.0;printf(" sensorVal %d\r\n",sensorVal);if(sensorVal<BASICS_VAL)sensorVal = 0;//过滤传感器本身自带电压else{sensorVal = (sensorVal-BASICS_VAL)*99/(99-BASICS_VAL);//将30-99值转化为0-99的值}printf(dis0,"nowValue:%d   ",sensorVal);     //打印                    if(setMode){printf(dis1,"setValue:%02d<   ",setNum);       //打印                }else{printf(dis1,"setValue:%02d    ",setNum);    }

总结

最后输出的结果:
根据测试,雨滴模块浸入水的深度不同,返回的电压值转化成的adc值不同:
完全无水的情况返回的adc值为4096;
完全浸入水中返回值接近400(是因为有模块供电的电压)。
根据400~4096的区间,按百分比输出,无水情况输出0,完全浸没输出99;

STM32单片机雨滴模块相关推荐

  1. STM32单片机智能语音温控摇头电风扇落地扇可红外遥控可PWM调速定时温度显示

    实践制作DIY- GC0074-智能语音温控摇头电风扇 一.功能说明: 基于STM32单片机设计-智能语音温控摇头电风扇 功能介绍: 硬件组成:STM32单片机+语音识别模块+DS18B20温度传感器 ...

  2. STM32单片机蓝牙APP手势语音温控电风扇落地扇人体感应

    实践制作DIY- GC0134-蓝牙APP手势语音温控电风扇 一.功能说明: 基于STM32单片机设计-蓝牙APP手势语音温控电风扇    二.功能介绍: 硬件组成:STM32单片机+语音识别模块+P ...

  3. stm32通过wifi模块实现手机远程控制灯与舵机

    由于对wifi模块的控制需要,在网上找了许多资料,发现wifi模块通过单片机进行通讯的代码不多,也有一些存在着错误,于是便自己写了一个wifi控制舵机和灯的程序,记录下来 stm32通过wifi模块实 ...

  4. 【Proteus仿真】【STM32单片机】温度报警控制系统设计

    文章目录 一.主要功能 二.硬件资源 三.软件设计 四.实验现象 联系作者 一.主要功能 本项目使用Proteus8仿真STM32单片机控制器,使用继电器模块.DS18B20温度传感器模块.LCD16 ...

  5. 【Proteus仿真】【STM32单片机】步进电机控制系统设计

    文章目录 一.主要功能 二.硬件资源 三.软件设计 四.实验现象 联系作者 一.主要功能 本项目使用Proteus8仿真STM32单片机控制器,使用ULN2003电机模块.LCD1602模块.按键模块 ...

  6. 基于STM32单片机智能自动伸缩衣架雨滴重量光强温度检测伸缩速度可调-蓝牙版

    实践制作DIY- GC0010-智能自动伸缩衣架 一.功能说明: 基于STM32单片机设计-智能自动伸缩衣架 功能介绍: 基于STM32F103C系列,LCD1602显示器,光敏电阻采集光强,雨滴传感 ...

  7. STM32单片机蓝牙APP自动伸缩遮阳棚雨伞雨滴角度温度光强控制

    实践制作DIY- GC0130-蓝牙APP自动伸缩遮阳棚 一.功能说明: 基于STM32单片机设计-蓝牙APP自动伸缩遮阳棚 二.功能介绍: 基于STM32F103C系列,LCD1602显示器,光敏电 ...

  8. 基于STM32单片机窗帘窗户晾衣架雨滴光照检测控制系统电子代

    基于STM32单片机窗帘窗户晾衣架雨滴光照检测控制系统电子代 硬件构成: STM32单片机+最小系统+液晶LCD1602显示+蜂鸣器报警模块+设置按键+雨滴检测模块+光敏电阻模块5516+ULN200 ...

  9. STM32单片机SIM800C创客GSM短信GPRS可编程模块SDK二次开发DIY

    STM32单片机SIM800CGSM电话短信GPRS网络可编程模块SDK二次开发 板载STM32F103RCT6单片机,板载LDO,板载SIM800C,有SDK,有基础技术支持,可深度定制. 通过我们 ...

  10. STM32单片机通过ESP8266WiFi模块与Android APP实现数据传输(二)---上位机搭建

    事物的难度远远低于对事物的恐惧 完成对STM32单片机和ESP8266 WiFi模块的配置之后,接下来需要完成Android APP代码的编写以及实现. 1.添加网络权限 因为我们需要对WiFi进行操 ...

最新文章

  1. Java性能压测-性能监控-jvisualvm使用
  2. JSR303自定义校验注解
  3. 6月26号.NET面试题(程序题部分)只要做懂这3道题肯定能脱离菜鸟称号!
  4. python递归和循环的区别_递归与伪递归区别,Python 实现递归与尾递归
  5. ZooKeeper 典型的应用场景
  6. 谈谈JavaScript的ECMA5中forEach
  7. WebDAV 是什么
  8. PHP5.4 Apache Mysql搭配与多站点配置
  9. wso2 ei 6.4.0安装笔记
  10. Abaqus帮助文档翻译——启动和退出Abaqus/CAE
  11. 电磁流量计 ADMAG AXG系列
  12. excel表格数字显示不全_Excel表格中输入数字最后几位数变成0的解决方法
  13. java网络病毒_网络病毒是由因特网衍生出的新一代病毒,即JAVA及ACTIVEX病毒。 (),不被人们察觉。...
  14. 个人建站用php,个人用不花钱 8款PHP建站软件推荐
  15. 【项目】费曼技巧,终极学习法
  16. 蜘蛛程序php,php模仿百度spider蜘蛛爬虫程序例子
  17. 使用iperf测试网络性能
  18. 第二次上机作业 (数组综合)
  19. 算法学习笔记:简单数据结构及排序算法
  20. 什么样的软件架构是好的?

热门文章

  1. WebRTC 之 RTX
  2. 为什么一用迅雷下东西wifi就上不了网了?限速也没用
  3. HTML网页设计:七、表格
  4. java毕设查重,已经毕业的给毕设查重的人一点建议
  5. stata 空间杜宾模型_空间面板数据模型及Stata实现
  6. mnist数据集python导入_关于Pytorch的MNIST数据集的预处理详解
  7. idea黑暗护眼主题
  8. 《未来编年史》——关于地球未来2000年的预言
  9. 致每一位Java初学者
  10. h5 兑换商品 页面模版_H5商城静态页面(模板)