项目介绍
基于STM32G030的激光测距仪,使用 VL53L0X激光测距传感器开发,设备包含:
- STM32G030单片机
- oled显示
- VL53L0X激光测距
- 锂电池充电电路
- 锂电池
- 2个按键
- 蜂鸣器
设备功能有:
- 单片机采集VL53L01激光测距传感器测量的距离值,显示在oeld上面,单位mm,测量距离范围20mm~2000mm
- 2个按键设定设备配置信息,包括接近报警、远离报警、测量精度等配置,各种配置保存在单片机内部FLASH中,掉电可以保存。
- 当触发报警逻辑时,蜂鸣器报警,提示用户当前异常。
- oled显示距离值以及设备处于的状态。
市场应用介绍
本设计适用于家用测量,具有体积小,使用方便等优点。
作为一个工程师,谁不想拥有一把酷酷的电子米尺。
项目设计思路
以小巧,便携,易于使用为主要思路,核心芯片选择STM32G031,属于比较新的芯片,价格与开发易用度都很高。
测距芯片选择VL53L0X,ST比较成熟的测距芯片,价格也合适,资料也多,很适合拿来开发。
项目方案框图和原理图解释
U3是本次的主角,通过IIC与OLED以及VL53L0X进行通信,这里选择使用了两路IIC进行控制,因为IO比较多,为了方便设计就没放在一起。
U1是xc6206,一个很小的LDO芯片,很好用。
设计中用到规定厂商的元器件介绍
1.STM32G030
全新的STM32G0系列不仅仅是另一种Arm® Cortex®-M0+微控制器。它为高效微控制器必须具备的功能设定了新的定义。这一切都是关于最优化设计,通过详细的各种细节设置,帮您以最小的BOM成本和最大的升级灵活性实现设计目标,从而让您的投资物超所值。
STM32G0x0 超值系列在传统的8位和16位市场中具有很强的竞争力,并通过嵌入精确的内部时钟进一步节省了成本。它帮用户省去了管理不同的架构的需求,以及相关的开发开销。
STM32G0系列采取“万能的通用架构”概念,可满足未来需求。
STM32G0系列具有高效、简单、坚固耐用等特点,可选的闪存大小为16~512 KB,封装的引脚选择范围是8~100,可满足众多行业领域的不同应用需求。
2.VL53L0X
VL53L0X是新一代飞行时间(ToF)激光测距模块(不同于传统技术),采用目前市场上最小的封装,无论目标反射率如何,都能提供精确的距离测量。它可以测量2m的绝对距离,为测距性能等级设定了新的基准,为各种新应用打开了大门。
VL53L0X集成了一个领先的SPAD阵列(单光子雪崩二极管),并内嵌ST的第二代FlightSense™专利技术。
VL53L0X的940nm VCSEL发射器(垂直腔面发射激光器)完全不为人眼所见,加上内置的物理红外滤光片,使其测距距离更长,对环境光的免疫性更强,对盖片的光学串扰具有更好的稳定性。
PCB绘制打板介绍及遇到的问题和解决方法
无
关键代码及说明
核心代码
uint8_t data;
uint8_t len;
uint16_t word;
uint8_t data1;
static char buf[VL53L0X_MAX_STRING_LENGTH];//测试模式字符串字符缓冲区
VL53L0X_Error Status=VL53L0X_ERROR_NONE;//工作状态
uint8_t mode=2; //0:默认;1:高精度;2:长距离;3:高速度
u32 i;
if(vl53l0x_init(&vl53l0x_dev)) //vl53l0x初始化
{
HAL_Delay(200);
}
else
{
VL53L0X_RdByte(&vl53l0x_dev,0xC0,&data);
VL53L0X_RdByte(&vl53l0x_dev,0xC1,&data1);
VL53L0X_RdByte(&vl53l0x_dev,0xC2,&len);
Status = VL53L0X_WrByte(&vl53l0x_dev,0x51,0x12);
VL53L0X_RdByte(&vl53l0x_dev,0x51,&len);
Status = VL53L0X_WrWord(&vl53l0x_dev,0x62,0x9e12);
VL53L0X_RdWord(&vl53l0x_dev,0x62,&word);
}
vl53l0x_set_mode(&vl53l0x_dev,mode); //配置测量模式
while(1)
{
Status = vl53l0x_start_single_test(&vl53l0x_dev,&vl53l0x_data,buf);//执行一次测量
OLED_ShowNum(0,0,Distance_data,5,32);
OLED_ShowString(80,0,"mm",32);
HAL_Delay(200);
}
功能展示及说明
测距功能
充电功能
对本大赛的心得体会(包括意见或建议),及整个设计过程中遇到的难点和解决方法
无