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

【STM32-HAL库】TEMT6000光照强度传感器(STM32F407ZGT6)(附带工程下载链接)

一、TEMT6000光照强度传感器

该传感器用于测量环境光强度。它具有很高的灵敏度,达到570nm,而且对红外光谱具有抑制作用

原理图 

工作原理

TEMT6000是一个三极管类型的光敏传感器,其光照强度和基极的电流成正比。当光线照射在半导体材料上时,会产生电荷,从而改变电阻值。TEMT6000中包含一个敏感元件(光敏电阻器)和一个滤光片,用于选择感兴趣的光谱范围。当环境光照射在敏感元件上时,电阻值会随之变化。因此,可以通过测量TEMT6000的电阻值来确定环境光强度。

应用领域

TEMT6000对可见光照度的反应特性与人眼的特性类似,可以模拟人对环境光线的强度的判断,从而方便做出与人友好互动的应用。它可以应用于照明控制、屏幕背光控制等领域23。

技术规格

  • 工作电压:3.3~5.5V
  • 工作温度:-40~85°C
  • 照度范围:1 – 1000Lux
  • 输出信号:模拟电压,在5V工作电压情况下范围为0 – 5V

使用方法

  1. 硬件连接:将TEMT6000传感器与微控制器连接。通常,TEMT6000有三个引脚:VCC(供电)、GND(地)和OUT(输出)。将VCC引脚连接到微控制器的电源引脚,GND引脚连接到微控制器的地引脚,OUT引脚连接到微控制器的模拟输入引脚。

  2. 引脚配置:根据你所使用的微控制器的规格和引脚功能,配置相应的引脚为输入或输出模式。

  3. 读取传感器数据:使用微控制器的模拟输入功能,读取TEMT6000传感器输出的模拟电压值。可以使用相应的模拟输入库函数或编写自定义代码来读取模拟电压值

二、cubeMX配置

 1、新建工程

 可以参考我的新建工程系列教程

stm32-HAL库+cubeMX新建工程教程系列icon-default.png?t=O83Ahttps://blog.csdn.net/qq_39150957/article/details/143087351?fromshare=blogdetail&sharetype=blogdetail&sharerId=143087351&sharerefer=PC&sharesource=qq_39150957&sharefrom=from_link

2、配置ADC

 3、配置串口

 可以参考我的文章,配置串口教程以及如何重定向串口。重定向串口之后即可直接使用【printf】函数直接向串口发送数据

【STM32-HAL库】串口配置、printf函数重定向icon-default.png?t=O83Ahttps://blog.csdn.net/qq_39150957/article/details/136638229?fromshare=blogdetail&sharetype=blogdetail&sharerId=136638229&sharerefer=PC&sharesource=qq_39150957&sharefrom=from_link

三、编写代码

main函数中

  /* USER CODE BEGIN 2 */int ADC_value = 0 ;float voltage = 0 ;/* USER CODE END 2 */

while中

HAL_ADC_Start(&hadc1); //开始ADC转换HAL_ADC_PollForConversion(&hadc1,100); //等待ADC转换完成,第二个参数表示超时时间,单位msADC_value = HAL_ADC_GetValue(&hadc1);//获取ADC采样值voltage = (float)(ADC_value *3.3/4096);//ADC采样值到电压的转换printf("亮度:%.3f\r\n",voltage);HAL_GPIO_TogglePin(GPIOA,GPIO_PIN_8);HAL_Delay(200);

四、运行效果

 

PA8引脚接了LED灯,我们通过代码不断翻转电平实现灯光闪烁,并把光照度传感器放在旁边,就看到串口软件接收到如下数据

下载工程

提取码:6666icon-default.png?t=O83Ahttps://pan.baidu.com/s/1uz06TTddAXQTQXIygELQqg?pwd=6666


http://www.mrgr.cn/news/60049.html

相关文章:

  • JUC并发编程面试题总结
  • 【Java基础】2、Java基础语法
  • 标题点击可跳转网页
  • 萤石设备视频接入平台EasyCVR私有化视频平台变电站如何实现远程集中监控?
  • 威胁 Windows 和 Linux 系统的新型跨平台勒索软件:Cicada3301
  • 读取模拟信号
  • 动态规划算法专题(九):完全背包问题
  • C语言 | Leetcode C语言题解之第515题在每个树行中找最大值
  • C++ | Leetcode C++题解之第516题最长回文子序列
  • #### 运用语言影切进行旧脑抑制:
  • 【STM32-HAL库】火焰传感器(STM32F407ZGT6)(附带工程下载链接)
  • 你了解kafka消息队列么?
  • Java基础04
  • 【音视频 | ADPCM】音频编码ADPCM详细介绍及例子
  • PCL库中的算法封装详解
  • springmvc请求源码流程解析(二)
  • Java语言-异常
  • 查找与排序-插入排序
  • golang中的goroutine
  • OD机试真题-单词接龙
  • (7) cuda异常处理
  • 关于科学计算法 二进制 十进制 16进制 8进制的换算
  • RN的 Button 组件没有 style 属性
  • 微调大模型-4-合并基座模型
  • Supabase:当开源遇上实时数据库服务
  • 进程间通信初识:管道