你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32智能感光声控灯

[复制链接]
STMCU小助手 发布时间:2022-11-28 14:54
原理光照传感器结构

通常由光敏层、玻璃基片(或树枝防潮膜)和电极等组成的。


特性

光敏电阻器是利用半导体光电导效应制成的一种特殊电阻器,对光线十分敏感,它的电阻值能随着外界光照强弱(明暗)变化而变化。它在无光照射时,呈高阻状态;当有光照射时,其电阻值迅速减小。


作用与应用

广泛应用于各种自动控制电路(如自动照明灯控制电路、自动报警电路等)、家用电器(如电视机中的亮度自动调节,照相机的自动曝光控制等)及各种测量仪器中。


光敏电阻器主要参数

1)亮电阻(kΩ):指光敏电阻器受到光照射时的电阻值。

2)暗电阻(MΩ):指光敏电阻器在无光照射(黑暗环境)时的电阻值。

3)最高工作电压(V):指光敏电阻器在额定功率下所允许承受的最高电压

4)亮电流:指光敏电阻器在规定的外加电压下受到光照射时所通过的电流。

5)暗电流(mA):指在无光照射时,光敏电阻器在规定的外加电压下通过的电流。

6)时间常数(s):指光敏电阻器从光照跃变开始到稳定亮电流的63%时所需的时间。

7)电阻温度系数:指光敏电阻器在环境温度改变1℃时,其电阻值的相对变化。

8)灵敏度:指光敏电阻器在有光照射和无光照射时电阻值的相对变化。


定义程序
  1. #ifndef __GUANGMIN_DO_H
  2. #define __GUANGMIN_DO_H
  3. #include "stm32f10x.h"
  4. #define guangmin_OUT  GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_3)   
  5. void guangmin_Init(void);
  6. #endif /* __GUANGMIN_DO_H */
复制代码
  1. #include "guangmin_DO.h"
  2. void guangmin_Init(void)
  3. {
  4. GPIO_InitTypeDef GPIO_InitStructure;
  5.   RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
  6. GPIO_InitStructure.GPIO_Pin  = GPIO_Pin_3;
  7. GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
  8. GPIO_Init(GPIOA, &GPIO_InitStructure);
  9. }
复制代码

声音传感器
原理

声音传感器是通过麦克风接收声音信号转化为音频信号,根据音频的变化确定电压的变化,从而输出所感知的声音信号的强度。


结构

声音传感器一般有四个接口,AO表示模拟量输出,用来实时输出麦克风所检测声音电压信号,DO表示当声音到达某个阈值时,输出高低电平信号。


定义程序
  1. #ifndef __shengyin_H
  2. #define __shengyin_H
  3. #include "stm32f10x.h"
  4. #define shengyin_OUT  GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_4)  
  5. void shengyin_Init(void);
  6. #endif /* __SHENGYIN_H */
复制代码
  1. #include "shengyin.h"
  2. void shengyin_Init(void)
  3. {
  4. GPIO_InitTypeDef GPIO_InitStructure1;
  5.   RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
  6. GPIO_InitStructure1.GPIO_Pin  = GPIO_Pin_4;
  7. GPIO_InitStructure1.GPIO_Mode = GPIO_Mode_IPU;
  8. GPIO_Init(GPIOA, &GPIO_InitStructure1);
  9. }
复制代码

LED
驱动原理
640.jpg
定义程序
  1. #ifndef __LED_H
  2. #define __LED_H
  3. #include "stm32f10x.h"
  4. #include "delay.h"
  5. #define LED  PAout(8)
  6. void LED_Init(void);
  7. #endif /* __LED_H */
复制代码
  1. #include "LED.h"
  2. #include "stm32f10x_gpio.h"
  3. #include "delay.h"
  4. void LED_Init(void)
  5. {
  6. GPIO_InitTypeDef GPIO_InitStructure;
  7.   RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE); //使能时钟
  8. GPIO_InitStructure.GPIO_Pin  = GPIO_Pin_8;
  9. GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
  10. GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  11. GPIO_Init(GPIOA, &GPIO_InitStructure);
  12. LED = 1;   
  13. }
复制代码

主函数
  1. if(shengyin_OUT==0 && guangmin_OUT)
  2.   {
  3.    LED = 0;
  4.   }
  5.   else
  6.   {
  7.    LED = 1;
  8.   }
复制代码


转载自: 跋扈洋
收藏 评论0 发布时间:2022-11-28 14:54

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版