萤火工场 CEM5826-M11 毫米波雷达模块进行开箱测评(二)

分享作者:CSXSXSXS
作者昵称:MUHHHH
评测品牌:萤火工场
评测型号:CEM5826-M11
发布时间:2025-01-06 08:50:59
0
概要
转自创作者“Aprilis”CEM5826-M11 雷达模块-通过STM32数据解析数据
开源口碑分享内容

 上一篇帖子介绍了如何初步的测试CEM5826-M11 雷达模块,今天写一篇帖子介绍如何使用常见的STM32单片机来完成对雷达数据的读取。

1、硬件连接

      类似于上一篇介绍的如何通过电脑来读取雷达模块发送的信息,与单片机连接同样需要连接四根线,分别是5V→5V,GND→GND,RXD→PA2,TXD→PA3;可见,电源部分对应相接即可,信号线部分,雷达模块的发送连接单片机的接收,雷达模块的接收连接单片机的发送,由于主要使用的是雷达模块发出的信息,雷达模块的发送不接线也可以。

      接线效果如图:

2、代码编写

      接下来便是对代码的编写,通信方式是为串口通信,我使用的是单片机的串口2,也就是PA3引脚来接收雷达模块发出的数据,

雷达模块发送出的数据在单片机端接收到的为字符串的格式,所以还需要将字符串中的有用信息解析出来,这也是本帖主要要实现的功能。

      首先要编写的是串口的初始化以及串口的接收函数,这里采用的是中断的方式来进行接收,初始化部分比较基础,就不在介绍,最重要的还是对数据的接收以及解析部分代码的编写。

      串口中断接收代码如下:

   

     大致思路如下:首先对接收到的数据进行判断,由于雷达模块发送的第一个字母为v,固可以通过v来作为接收的开始,此后依次接收雷达模块发送出的数据,当数据为‘\n‘时说明一帧有效数据以及接收完毕,此时对相关标志位进行置位并将接收到的数据拷贝到另一个数组中,将接收数组清空,进行下一次的接收。

     接下来是对数据的解析,由于接收到的数据里有些数据是没有用的,我们需要的主要是雷达模块发送的两个数字。

     相关代码如下:

     代码主要是通过for循环来将接收到的数组内的数据赋值给一个新的数组,新的数组里只包含所需的数值数据。

3、实现效果

     最终实现的效果如下:

4、最后总结

      今天的测评就到这里,代码我放在下面,需要的小伙伴可以直接下载,明天我计划将字符串数据转换为可进行计算的数值数据,并通过OLED屏幕进行显示,利用开发板的LED作一个迷你版的感应灯。拜拜~

全部评论
暂无评论
0/144