VD6283TX环境光传感器驱动开发(1)----获取ID

这篇具有很好参考价值的文章主要介绍了VD6283TX环境光传感器驱动开发(1)----获取ID。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

概述

环境光传感器是一种光电探测器,能够将光转换为电压或者电流,使用多光谱环境光传感器为了测量光谱上特定波长或特定带锯波长的强度,该传感器的目标是改善视觉体验并最终使用户感到舒适的照明视觉体验。
VD6283TX环境光传感器驱动开发(1)----获取ID,stm32cube,传感器,单片机,STM32CUBEMX,VD6283TX,环境光传感器,光照强度,色温,LUX,CCT,原力计划
VD6283TX环境光传感器驱动开发(1)----获取ID,stm32cube,传感器,单片机,STM32CUBEMX,VD6283TX,环境光传感器,光照强度,色温,LUX,CCT,原力计划

最近在弄ST的课程,需要样片的可以加群申请:615061293 。

视频教学

https://www.bilibili.com/video/BV1du411u7Uz/

VD6283TX环境光传感器驱动开发(1)----获取ID

样品申请

https://www.wjx.top/vm/OhcKxJk.aspx#

源码下载

https://download.csdn.net/download/qq_24312945/88391797

模块参数

VD6283 是 ST 的一款微型光学模块,尺寸为 1.83 x 1.0 x 0.55 mm,具有6个独立的环境光传感通道,包括红、绿、蓝、红外、透明和可见通道。它使用高级混合滤波器并能在7 mLux 到 30 kLux 的范围内运行。此传感器具有独特的读出架构,可以提取从100 Hz 到 2 kHz 频率的交流灯光闪烁信号。VD6283 还配备了 I2C 接口,工作电压为1.8 V,并具有低功耗特性。它可以在 -30 到 85 °C 的温度范围内运行。主要应用包括屏幕亮度调整的真实色调色感测定、光亮度和相关色温测量以及闪烁校正辅助的光频提取。通过专利架构和高性能的光电二极管设计,VD6283 可以提取灯光闪烁频率,避免视频上的“条纹效果”,或检查它们对人眼是否安全。此外,VD6283 是唯一能够同时进行闪烁操作和环境光传感操作的传感器。
VD6283TX环境光传感器驱动开发(1)----获取ID,stm32cube,传感器,单片机,STM32CUBEMX,VD6283TX,环境光传感器,光照强度,色温,LUX,CCT,原力计划

IIC接线方式

IIC接线方式如下所示,需要注意的是供电和上拉都是1.8V。

VD6283TX环境光传感器驱动开发(1)----获取ID,stm32cube,传感器,单片机,STM32CUBEMX,VD6283TX,环境光传感器,光照强度,色温,LUX,CCT,原力计划

开发板接线方式如下所示。

VD6283TX环境光传感器驱动开发(1)----获取ID,stm32cube,传感器,单片机,STM32CUBEMX,VD6283TX,环境光传感器,光照强度,色温,LUX,CCT,原力计划

设备ID

我们可以通过查询0x00和0x01获取模块ID和模块版本号。

VD6283TX环境光传感器驱动开发(1)----获取ID,stm32cube,传感器,单片机,STM32CUBEMX,VD6283TX,环境光传感器,光照强度,色温,LUX,CCT,原力计划

手册给出的取模块ID和模块版本号分别是0x70和0xBD。

VD6283TX环境光传感器驱动开发(1)----获取ID,stm32cube,传感器,单片机,STM32CUBEMX,VD6283TX,环境光传感器,光照强度,色温,LUX,CCT,原力计划

生成STM32CUBEMX

串口配置

查看原理图,PA1和PA0设置为开发板的串口。

VD6283TX环境光传感器驱动开发(1)----获取ID,stm32cube,传感器,单片机,STM32CUBEMX,VD6283TX,环境光传感器,光照强度,色温,LUX,CCT,原力计划
配置串口。
VD6283TX环境光传感器驱动开发(1)----获取ID,stm32cube,传感器,单片机,STM32CUBEMX,VD6283TX,环境光传感器,光照强度,色温,LUX,CCT,原力计划

IIC配置

在这个应用中,VD6283TX模块通过I2C(IIC)接口与主控器通信。具体来说,VD6283TX模块的I2C引脚连接到主控器的PB6(引脚B6)和PB7(引脚B7)两个IO口。

VD6283TX环境光传感器驱动开发(1)----获取ID,stm32cube,传感器,单片机,STM32CUBEMX,VD6283TX,环境光传感器,光照强度,色温,LUX,CCT,原力计划
配置IIC为普通模式,速度为100k。

VD6283TX环境光传感器驱动开发(1)----获取ID,stm32cube,传感器,单片机,STM32CUBEMX,VD6283TX,环境光传感器,光照强度,色温,LUX,CCT,原力计划

串口重定向

打开魔术棒,勾选MicroLIB

VD6283TX环境光传感器驱动开发(1)----获取ID,stm32cube,传感器,单片机,STM32CUBEMX,VD6283TX,环境光传感器,光照强度,色温,LUX,CCT,原力计划

在main.c中,添加头文件,若不添加会出现 identifier “FILE” is undefined报错。

/* USER CODE BEGIN Includes */
#include "stdio.h"
/* USER CODE END Includes */

函数声明和串口重定向:

/* USER CODE BEGIN PFP */
int fputc(int ch, FILE *f){
	HAL_UART_Transmit(&huart1 , (uint8_t *)&ch, 1, 0xFFFF);
	return ch;
}
/* USER CODE END PFP */

模块地址

VD6283TX模块的默认设备地址为0100000(0x20)。设备地址是用来识别和通信特定设备的标识符。通过将VL6180模块的设备地址设置为0100000(0x20),您可以确保与该模块进行正常的通信和控制。
若添加读写位,0x40为写地址,0x41为读地址。

VD6283TX环境光传感器驱动开发(1)----获取ID,stm32cube,传感器,单片机,STM32CUBEMX,VD6283TX,环境光传感器,光照强度,色温,LUX,CCT,原力计划

获取ID

读写函数如下所示。

/**
  * @brief  读取数据
  *
  * @param  add   模块地址
  * @param  reg   寄存器地址
  * @param  data  buffer 缓冲区
  * @param  len   读取长度
  * @retval ret   正常返回HAL_OK
  *
  */
uint8_t VD6283TX_read_reg(uint8_t add,uint8_t reg,  uint8_t * data, uint8_t len)
{
	uint8_t ret;
	ret=HAL_I2C_Mem_Read(&hi2c1 ,(add<<1)|1,reg,I2C_MEMADD_SIZE_8BIT,data,len,0xffff);

	return ret;
}


/**
  * @brief  写入数据
  *
  * @param  add   模块地址
  * @param  reg   寄存器地址
  * @param  data  buffer 缓冲区
  * @param  len   写入长度
  * @retval ret   正常返回HAL_OK
  *
  */
uint8_t VD6283TX_write_reg(uint8_t add,uint8_t reg, uint8_t * data, uint8_t len)
{
		uint8_t ret;
		ret=HAL_I2C_Mem_Write(&hi2c1 ,(add<<1)|0,reg,I2C_MEMADD_SIZE_8BIT,data,len,0xffff);
	return ret;

}

获取ID以及版本号代码如下所示。

/**
  * @brief  获取设备ID
  *
  * @param  add      设备地址
  * @param  val      设备ID.
  * @retval ret   		正常返回HAL_OK
  *
  */

uint8_t VD6283TX_getChipID(uint8_t add)
{
  uint8_t temp[1]={0};
	VD6283TX_read_reg(add,VD6283TX_DEVICE_ID,temp,1);
  return temp[0];
}




/**
  * @brief  获取VD6283硅芯片的修订版本
  *
  * @param  add      设备地址
  * @retval          硅芯片修订版本
  *
  */
uint8_t VD6283TX_getSiliconRevision(uint8_t add)
{
    uint8_t revision[1] = {0};
    VD6283TX_read_reg(add, VD6283TX_REVISION_ID, revision, 1);
    return revision[0];
}

主函数

  /* USER CODE BEGIN 2 */
	HAL_Delay(200);	
	printf("123\n");
	//获取设备IDHAL_I2C_Mem_Write(&hi2c1 ,(add<<1)|0,reg,I2C_MEMADD_SIZE_8BIT,data,len,0xffff);
	uint8_t VD6283_ID =VD6283TX_getChipID(VD6283TX_ID);
	printf("VD6283TX_ID=0x%x\n",VD6283_ID);		
	//获取VD6283硅芯片的修订版本
	uint8_t VD6283_Revision =VD6283TX_getSiliconRevision(VD6283TX_ID);
	printf("getSiliconRevision=0x%x\n",VD6283_Revision);		

  /* USER CODE END 2 */

结果演示

VD6283TX环境光传感器驱动开发(1)----获取ID,stm32cube,传感器,单片机,STM32CUBEMX,VD6283TX,环境光传感器,光照强度,色温,LUX,CCT,原力计划文章来源地址https://www.toymoban.com/news/detail-725722.html

到了这里,关于VD6283TX环境光传感器驱动开发(1)----获取ID的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • FPGA实现IIC驱动环境光、距离传感器

    本次实验平台为野火征途mini开发板,用到的外设有按键、LED灯数码管、环境光(ALS)+距离(PS)传感器芯片。 AP3216C是一款环境光、距离传感器芯片,其接口为IIC接口,FPGA通过IIC接口可以配置工作模式、读取环境光、距离数据。 系统模块连接如下: key_filter 模块实现按键消

    2024年02月16日
    浏览(51)
  • STM32外设芯片驱动学习记录 —— (一) BH1750光照传感器驱动开发

    一、芯片介绍 二、Datasheet解读 1.硬件说明 2.寄存器说明 3.通信过程 三、驱动代码编写 1.软件I2C驱动 2. BH1750芯片驱动函数 总结             BH1750是16位数字输出型,环境光强度传感器集成电路,使用I2C接口通信,工作电压:VCC(2.4~3.6V),I2C电平(1.65~VCC),用于各类消费类LCD屏

    2024年02月02日
    浏览(87)
  • Arduino开发实例-AS608光学指纹传感器驱动

    AS608 光学指纹传感器可用于扫描指纹,它也可以通过串行通信将处理后的数据发送到微控制器。 所有注册的指纹都存储在这个模块中。 AS608 最多可存储 127 个独立指纹。 最重要的特点是: 电源电压:3.3V 最大电流供应:60mA 分辨率:500dpi 最大指纹成像时间:1s 传感器引脚

    2024年01月17日
    浏览(57)
  • 【Android开发基础】手机传感器信息的获取

    描述:关于传感器的使用,我在同栏目下发了一篇关于传感器(方向传感器、加速度传感器)的使用,这篇博客主要以获取不同手机所支持的传感器信息为主,具体如何使用这些传感器,需要自己进行查阅和学习,也可以私聊我。 博客:传感器(方向传感器、加速度传感器)

    2024年02月10日
    浏览(104)
  • Clion开发Stm32之温湿度传感器(DHT11)驱动编写

    涵盖之前文章: Clion开发STM32之HAL库GPIO宏定义封装(最新版) Clion开发stm32之微妙延迟(采用nop指令实现) Clion开发STM32之日志模块(参考RT-Thread) 头文件 源文件

    2024年02月15日
    浏览(47)
  • 【IMX6ULL驱动开发学习】06.DHT11温湿度传感器驱动程序编写与测试

    目录 一、DHT11简介 1.1 DHT11模块硬件设计 1.2 DHT11模块软件设计 1.3 DHT11通讯协议 1.4 DHT11数据格式 二、相关代码 2.1 驱动代码 2.2 测试代码 2.3 上板子测试 DHT11是一款可测量温度和湿度的传感器。比如市面上一些空气加湿器,会测量空气中湿度,再根据测量结果决定是否继续加湿

    2024年02月12日
    浏览(42)
  • Clion开发Stm32之温湿度传感器(DS18B20)驱动编写和测试

    涵盖之前文章: Clion开发STM32之HAL库GPIO宏定义封装(最新版) Clion开发stm32之微妙延迟(采用nop指令实现) Clion开发STM32之日志模块(参考RT-Thread) 头文件 源文件

    2024年02月15日
    浏览(48)
  • 无线AP打流-TX、RX环境部署

                     PC2打开endpoint         PC1打开ixchariot         创建流:  然后,我们编辑脚本:  我们可以看到,是endpoint 1为发送端,endpoint 2为接收端。   也就是192.168.2.44为发送端,192.168.7.6为接收端 此时我们不用做任何修改,直接关闭脚本,点击保存。 然

    2024年02月09日
    浏览(37)
  • 1.1 Windows驱动开发:配置驱动开发环境

    在进行驱动开发之前,您需要先安装适当的开发环境和工具。首先,您需要安装Windows驱动开发工具包(WDK),这是一组驱动开发所需的工具、库、示例和文档。然后,您需要安装Visual Studio开发环境,以便编写和调试驱动程序。在安装WDK和Visual Studio之后,您还需要配置适当的

    2024年02月03日
    浏览(46)
  • 为减少来自环境使用的无线传感器网络的传输次数而开发的方法(Matlab代码实现)

    💥💥💞💞 欢迎来到本博客 ❤️❤️💥💥 🏆博主优势: 🌞🌞🌞 博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️ 座右铭: 行百里者,半于九十。 📋📋📋 本文目录如下: 🎁🎁🎁 目录 💥1 概述 📚2 运行结果 🎉3 参考文献 🌈4 Matlab代码实现 随着无线

    2024年02月08日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包