VL53L8CX TOF开发(1)----驱动TOF进行区域检测

描述

概述

VL53L8CX是一款8x8多区域ToF测距传感器,它在环境光下能够在降低功耗的同时增强性能。该传感器基于意法半导体的FlightSense技术设计,能够提供最高400 cm的精确测距,并具有65°对角线视场。
VL53L8CX集成了功能强大的新一代VCSEL,以及两个先进的超表面镜头。硬件封装在创新的“一体化”模块中。这使得它能够适用于更广泛的高性能应用场景,如低功耗系统激活、手势识别、机器人SLAM、液位监控等多种用途。
VL53L8CX采用意法半导体的专利算法,可以检测和跟踪视场内的多个目标,具有64区域深度测量能力。意法半导体的直方图确保盖片玻璃串扰抗扰度超过60 cm。
与所有基于意法半导体FlightSense技术的ToF传感器一样,VL53L8CX能够测量绝对距离,不受目标颜色和反射率的影响。
VL53L8CX支持SPI和I²C接口,确保高频帧率和短启动时间。
VL53L8CX的VCSEL发射940 nm的完全不可见红外光。这种VCSEL具有1级认证,对眼睛是安全的。使用VL53L8CP可以进行场景浏览和多区域检测。这归因于软件可定制的检测阵列。它能快速且低功耗地检测到人体存在。此类检测被称为微深度图。

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

区域检测

视频教学

[https://www.bilibili.com/video/BV1Z1421d7Dv/]

样品申请

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

源码下载

[https://download.csdn.net/download/qq_24312945/89194498]

主要特点

新一代多区域飞行时间 (ToF) 传感器的功耗较低,提高了距离测距性能

  • 可以使用4x4或8x8独立区域测量功能进行多区域距离测量
  • 自主低功耗模式,通过可编程中断阈值唤醒主机
  • 增强了环境光条件下的性能,测量距离可达400 cm
  • 在每个区域均可进行多目标检测和测距
  • 直方图处理和算法补偿可最大程度减少甚至消除盖片串扰的影响
  • 每个区域都配有运动指示器,用于显示目标是否以及如何移动
  • 60 Hz帧速率能力

完全集成的微型模块,具有宽视野 (FoV)

  • 新一代大功率发射器:940 nm不可见光VCSEL(垂直腔面发射激光器)集成式模拟驱动器
  • 65°对角线方形视场,发射器和接收器采用衍射光学元件 (DOE)
  • 单光子雪崩二极管 (SPAD) 接收阵列
  • 运行固件的低功耗微控制器
  • 尺寸:6.4 x 3.0 x 1.75 mm

可轻松集成

  • 单回流焊元件
  • 需要1.8 V核心电源和3.3 V AVDD电源
  • 可选1.2 V或1.8 V IOVDD接口电压等级
  • I²C(可达1 MHz)或SPI(可达3 MHz)接口
  • 兼容多种盖片材料
  • 可隐藏在深色盖片之后

区域检测

硬件准备

首先需要准备一个开发板,这里我准备的是自己绘制的开发板,需要的可以进行申请。

区域检测

技术规格

区域检测

系统框图

区域检测

应用示意图

IIC模式下应用示意图。

区域检测

SPI模式下应用示意图。

区域检测

区域映射

VL53L8CX支持4x4模式的区域映射和8x8模式的区域映射。
下图显示了4x4模式下的区域定义。总共有16个区域,它们沿着一行递增,然后再开始新的一行。物理视图是从设备顶部朝向镜头。如下图所示,每个区域的编号对应于传感器返回的ZoneIDs。

区域检测

下图显示了8x8模式下的区域定义。总共有64个区域,它们沿着一行递增,然后再开始新的一行。物理视图是从设备顶部朝向镜头。如下图所示,每个区域的编号对应于传感器返回给主机的ZoneIDs。

区域检测

生成STM32CUBEMX

选择MCU

测试版所用的MCU为STM32G431CB。

区域检测

串口配置

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

区域检测

配置串口。

区域检测

IIC配置

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

区域检测

区域检测

配置IIC为快速模式,速度为400k。

区域检测

LPn 设置

若进行IIC通讯,LPn设置为高电平状态。

区域检测

这里对应管脚为PA12。

区域检测

配置为PA12。

区域检测

X-CUBE-TOF1

本节介绍在不需要使用样例应用时如何使用STM32CubeMX将X-CUBE-TOF1软件包添加到项目中。有了这样的设置,就只配置了驱动层。

区域检测

串口重定向

打开魔术棒,勾选MicroLIB

区域检测

代码配置

在custom_ranging_sensor.c代码中,有IO口驱动VL53L8CX进行复位的代码,由于没有配置对应的IO,所以需要注释掉。

区域检测

Tera Term配置

打开Tera Term并使用以下设置进行配置。

区域检测

区域检测

演示结果

配置完成侯可以在Tera Term下查看结果,如下是4*4的显示。

区域检测

可以切换到8*8显示。

区域检测

审核编辑 黄宇

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分