STM32之光敏电阻传感器模块的使用

发布者:fnfeecjknquc最新更新时间:2017-06-04 来源: eefocus关键字:STM32  光敏电阻  传感器模块 手机看文章 扫描二维码
随时随地手机看文章

本实验配合2.2寸TFT液晶屏显示,当光弱的时候显示“昏暗”,光强时显示“明亮”。

实验使用的是下图所示的3线光敏电阻传感器模块,用途:光线亮度检测,光线亮度传感器,智能小车寻光模块。模块特色:比较器输出,信号干净,波形好,驱动能力强,超过15mA;配可调电位器可调节检测光线亮度;输出形式 :数字开关量输出(0和1);使用宽电压LM393比较器。

模块使用说明1、光敏电阻模块对环境光线最敏感,一般用来检测周围环境的光线的亮度,触发单片机或继电器模块等;2、模块在环境光线亮度达不到设定阈值时,DO端输出高电平,当外界环境光线亮度超过设定阈值时,DO端输出低电平;3、DO输出端可以与单片机直接相连,通过单片机来检测高低电平,由此来检测环境的光线亮度改变;4、DO输出端可以直接驱动本店继电器模块,由此可以组成一个光控开关。

各引脚作用如图所示:

本实验中将DO引脚连接到PA0脚,电源连接3.3V电源。

while(1){        
        if( GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_0)==0){
            Gui_DrawFont_GBK24(70,80,RED,GRAY0,"明亮");
        }else{
            Gui_DrawFont_GBK24(70,80,RED,GRAY0,"阴暗");
        }
        delay_ms(100);     //延时函数 0.1S
  }


其中的:Gui_DrawFont_GBK24(70,80,RED,GRAY0,"明亮");和Gui_DrawFont_GBK24(70,80,RED,GRAY0,"阴暗");为液晶屏的显示函数,这里不是重点。我么在这里要关注的是if()判断语句,我们通过

if( GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_0)==0)

语句来判断是否数据引脚为0(低电平),若是低电平则输出下面的语句,

GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_0)==0

为STM32的读取引脚函数,引脚配置如下:


GPIO_InitTypeDef GPIO_InitStructure;

GPIO_InitStructure.GPIO_Pin =  GPIO_Pin_0;   //PA0用于光敏电阻 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING; 
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;  
GPIO_Init(GPIOA, &GPIO_InitStructure);


实验效果如下:(明亮)

用纸遮挡住阳光后(昏暗)


关键字:STM32  光敏电阻  传感器模块 引用地址:STM32之光敏电阻传感器模块的使用

上一篇:STM32 ADC基础与多通道采样
下一篇:恩智浦推出全新LPC84x系列

推荐阅读最新更新时间:2024-03-16 15:35

STM32的GPIO—快速IO的使用与讲解
STM32的每个GPIO端口都有两个特别的寄存器,GPIOx_BSRR和GPIOx_BRR寄存器,通过这两个寄存器可以直接对对应的GPIOx端口置'1'或置'0'。 GPIOx_BSRR的高16位中每一位对应端口x的每个位,对高16位中的某位置'1'则端口x的对应位被清'0';寄存器中的位置'0',则对它对应的位不起作用。 GPIOx_BSRR的低16位中每一位也对应端口x的每个位,对低16位中的某位置'1'则它对应的端口位被置'1';寄存器中的位置'0',则对它对应的端口不起作用。 简单地说
[单片机]
意法半导体新系列MCU STM32H5提升下一代智能应用的性能和安全性
意法半导体新系列MCU STM32H5提升下一代智能应用的性能和安全性 • 采用Arm Cortex-M33嵌入式微控制器内核,运行频率250MHz • 内置 STM32Trust TEE Secure Manager,让安全功能既强大又简单 2023年3月16日,中国 – 服务多重电子应用领域、全球排名前列的半导体公司意法半导体(STMicroelectronics,简称ST;)发布了STM32H5系列高性能微控制器(MCU)。 新系列产品引入STM32Trust TEE Security Manager安全技术,为智能物联网设备带来先进的安全功能。 新推出的STM32H5 MCU系列搭载Arm® 的C
[单片机]
意法半导体新系列MCU STM32H5提升下一代智能应用的性能和安全性
STM32-(26):RCC内部结构与原理分析
RCC(Reset Clock Controller)复位与时钟控制器 这个在STM32中起到一个举足轻重的作用,所有的外设都由时钟来控制。通过控制时钟的开关、速度来控制外设的开关、运行速度来控制整体功耗。特别是对手持式设备、利用电池供电的设备都对功耗要求比较高。 一、时钟系统与内部结构 四个驱动单元 Cortex-M3内核ICode(地址)总线(I-bus).DCode(数据)总线(D-bus).和系统总线(S-bus) GP-DMA(通用DMA) 三个被动单元 内部SRAM 内部闪存存储器 AHB到APB的桥(AHB2APBx),它连接所有的APB设备,APB2的时钟比APB1快。 简析: 首先,输入 OSC_OUT/
[单片机]
STM32-(26):RCC内部结构与原理分析
基于keil C mdk开发环境的stm32的USB接口单片机程序设计
  首先,我们来看看usb的工作过程。   当usb设备接入到主机时,主机开始枚举usb设备,并向usb设备发出指令要求获取usb设备的相关描述信息,其中包括设备描述(dev IC e descriptor)、配置描述(configuration descriptor)、接口描述(interface descriptor)、端点描述(endpoint descriptor)等。这些信息是通过端点0(endpoint 0)传送到主机的。获取各种描述信息后,操作系统会为其配置相应的资源。这样主机就可以与设备之间进行通信了。   usb通讯有四种通讯方式控制(control)、中断(interrupt)、批量(bulk)和同步( s
[单片机]
英国Pickering公司发布新款高精度电阻型传感器仿真模块
扩展了PXI和PXIe高精度电阻模块产品家族 4x-297A系列模块提供最低0.125Ω分辨率, 并将电阻范围提高至85.3MΩ,准确度提高至±0.1% 英国Pickering公司 作为生产用于电子测试及验证领域的信号开关与仿真解决方案的领导厂商,最近为高密度高精度电阻模块家族新增了一系列新产品,并提高了传感器仿真精度。 升级版的40-297A(PXI)和新品42-297A(PXIe)模块现在能提供更多的分辨率选择 —— 0.125Ω、0.25 Ω、0.5Ω、1Ω、2Ω、4Ω和8Ω,其中一种6通道模块的电阻范围提高至85.3MΩ,设定准确度现在为±0.1%±分辨率(原系列为±0.2%±分辨率)。 这些新增的模块使我们的
[测试测量]
英国Pickering公司发布新款高精度电阻型<font color='red'>传感器</font>仿真<font color='red'>模块</font>
STM32之重定向printf
学习stm32,打交道最多的莫过于串口通讯了,但是官方的串口发送库太恶心了,完全不好用甚是还念C语言的printf,想输出什么就有什么,现在,一步步来做个重定向,让你的stm32可以跟C语言一样能想看什么就看什么: 首先: 添加printf的头文件 : #include stdio.h //当时学C语言最熟悉的stdio.h 其次: 改写int fputc(int ch, FILE *f)函数 int fputc(int ch, FILE *f); int fputc(int ch, FILE *f) { USART_SendData(USARTx, (uint8_t) ch); while
[单片机]
利用STM32 ST-LINK Utility查看内核运行状态
本文围绕STM32 ST-LINK Utility讲几点主要功能及相关拓展知识: 1.STM32编程下载; 2.利用该编程工具查看内核运行状态; 3.Option Bytes选项字配置; 1STM32编程下载 STM32 ST-LINK Utility一个最重要的功能就是对STM32进行编程。支持常见的hex、bin文件,还有早期摩托罗拉定义的srec和s19格式的文件(说实话,我都不了解这两种格式的文件)。 这里主要想提示一下初学者:hex带有地址,而bin文件不带地址,下载时需要填写起始地址。 下面看两张在STM32 ST-LINK Utility中下载选择文件的图大家就明白了。 1.选择hex下载,地址不
[单片机]
利用<font color='red'>STM32</font> ST-LINK Utility查看内核运行状态
STM32 SPI 注意要点
觉得SPI很简单,所以从来没有去仔细去看就直接用了,这次在调一个芯片的时候出现了一个比较奇怪的问题,以为是程序逻辑的问题,浪费了好几天的时间都没有找到原因。今天乖乖查阅了一些手册,最后在《STM32不完全手册》里找到了线索,现在索性对SPI做个总结。首先说最近碰到的问题。 问题一:错以为SPI的读数据,直接读取SPIx- DR寄存器就可以完成。 这个问题我一直没注意,十分惭愧。原来SPI的时钟只有在往DR寄存器里面写数据的时候才会产生,读是不会产生的(暂时没有从哪个资料中得到确认,不过我猜就是这样)。所以要读取slave发过来的数据,master必须先发一个 DUMMY 数据,这个数据内容不重要,目的只是为
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved