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系列那要将所用到的按键专门裁剪成小图片,这是因为这时候的按键控件没有透明模式,设计成图片模式又没给它具体的图片的话,编译会报错。

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

相关推荐
充哥单片机设计1 小时前
【STM32项目开源】基于STM32的智能厨房环境监控系统
stm32·单片机·嵌入式硬件
爱倒腾的老唐1 小时前
03、51 单片机介绍
单片机·嵌入式硬件
国科安芯2 小时前
抗辐照MCU芯片在低轨商业卫星原子钟中的适配与优化
单片机·嵌入式硬件·fpga开发·架构·risc-v
赋能大师兄9 小时前
单片机3.3V和5V电压等级
单片机·3.3v·5v
BreezeJuvenile9 小时前
外设模块学习(6)——DHT11温湿度传感器(STM32)
stm32·单片机·dht11·温湿度传感器
桃里桑9 小时前
【嵌入式软件】STM32 UART转485通信问题
stm32·单片机·嵌入式硬件
萧技电创EIIA11 小时前
基于wifi摄像头与单片机的串口透传及二次开发
单片机·51单片机·硬件工程·个人开发
三佛科技-1341638421211 小时前
迷你加湿器方案开发,加湿器/香薰机MCU控制方案开发设计
单片机·嵌入式硬件·智能家居·pcb工艺
hazy1k11 小时前
51单片机基础-矩阵按键
嵌入式硬件·矩阵·51单片机
一支闲人12 小时前
带你了解STM32:SPI通信(硬件部分)
stm32·单片机·嵌入式硬件·基础知识