STM32CUBEMX+PLS_D1000激光测距模块+MT6701角度传感器,获取三角形第三边角度

一、完成激光测距需要什么

块 功能
激光测距模块 激光测量距离
测量角度模块 通过角度芯片测量角度
显示模块 显示测量出来的距离和角度

二、介绍每个模块

块 功能 备注
激光测距模块 使用激光测距头:PLS_D1000。这个激光测距模块使用串口与单片机的串口三通信,3.3v供电。
角度测量模块 使用MT6701芯片测量角度。这个芯片可以用SPI也可以用IIC,我用的是软件模拟 IIC PA6、PA7,3.3供电。角度芯片要和径向磁铁搭配使用才能测量出随磁铁变化的角度的,不用磁铁的话,读出来是一个固定的值。

串口屏显示|使用的是陶晶驰串口屏,串口屏是串口通信,与单片机的串口2通信,5V供电。

三、查看手册后通信

1、 激光模块:

激光模块有单次测量和无限次测量,两种测量模式。单片机通过串口三给激光模块发送:

激光模块检测到测量命令后,会返回给单片机一串数据,将这个数据寄存到数组里面。再取这个数组的第6、7位,就是距离信息:

测量回来的数据是分米,可以转化成米来显示到串口屏上。

2、测量角度模块:

查数据手册的IIC通信:

代码需要写以下部分:

序号 函数名 备注
1 触发函数 IIC通信的开始信号,后面跟地址,有可能是器件地址,也有可能是寄存器地址
2 "发送一个字节"函数 这个函数可以让单片机发送器件地址、寄存器地址给MT6701
3 "接受一个字节"函数 这个函数可以接收到MT6701返回给单片机的数据
4 "发送应答信号"函数 但单片机发送完器件地址、寄存器地址后,会受到MT6701发送给单片机的1bit的低电平应答信号
5 "接收应答信号"函数 当单片机接收到MT6701返回来的角度数据后,会给MT6701发送一个bit的高电平应答信号
6 停止函数 IIC通信结束

3、屏幕显示模块:

显示 部分
角度 屏幕需要显示测量的距离和角度。将串口三传来的距离显示在屏幕上、将IIC传来的角度显示在屏幕上。传来的角度是浮点数,要显示在串口屏幕上要先将浮点数转化成整数传给串口屏;同时在串口屏的上位机使用浮点数控件来显示角度数据。这样两个配合就可以显示浮点数了;
距离 传来的距离是分米,要将分米转化成米的话,转化后的米可能就是浮点数,因此处理方法也同上面一样。
界面设计 可以用画图软件将按键、界面切换的图片设计好。如果使用的是X某系列,那么在设计界面的时候,不需要给案件专门裁剪案件图片,直接在上位机上添加一个按键控件------将按键控件设置成透明;而如果使用的是陶晶驰的T1系列那要将所用到的按键专门裁剪成小图片,这是因为这时候的按键控件没有透明模式,设计成图片模式又没给它具体的图片的话,编译会报错。

四、等我记起其他的知识来继续补充!

相关推荐
HQB20265 小时前
CN6150|简芯维尔 6V/500mA 高速低噪声 CMOS‑LDO 线性稳压器
嵌入式硬件·硬件工程
科芯创展6 小时前
XZ3445 高集成升压/升降压DC-DC电源芯片技术解析
单片机·嵌入式硬件
艾芯微科技7 小时前
高充放电流锂电充放 SoC:ETA9885E10,便携储能、小移动电源 BOM 选型笔记
网络·单片机·嵌入式硬件·集成测试·51单片机
艾芯微科技7 小时前
钰泰 ETA6973PQ3Y|QFN3×3 2A 同步降压 Buck,I2C 可配置多档输出,动态调压 PMIC
网络·单片机·嵌入式硬件·fpga开发·集成测试·51单片机
Brilliantwxx8 小时前
【STM32】 通用定时器:输入捕获与输出比较详解 测脉宽、测频率
stm32·单片机·嵌入式硬件·mcu
意法半导体STM328 小时前
【官方原创】LAT1703 STM32C5 LL Cordic例程
stm32·单片机·嵌入式硬件·stm32c5·ll cordic
FPGA小徐9 小时前
电子工程师面试真题:LM7805 扩流 + 过流保护电路原理分析
单片机·嵌入式硬件
霖霖7149 小时前
【ESP32笔记】RGB灯WS2812实验
笔记·单片机·mcu·物联网
西城微科方案开发9 小时前
激光测距仪模组选择——M01还是M03?
单片机·嵌入式硬件