TI毫米波雷达开发——High Accuracy Demo 串口数据接收及TLV协议解析 matlab 源码

本文主要是介绍TI毫米波雷达开发——High Accuracy Demo 串口数据接收及TLV协议解析 matlab 源码,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

TI毫米波雷达开发——串口数据接收及TLV协议解析 matlab 源码

  • 前置基础
  • 源代码功能说明
  • 功能演示视频
  • 文件结构
    • 01.bin / 02.bin
    • ParseData.m
    • read_file_and_plot_object_location.m
    • read_serial_port_and_plot_object_location.m
  • 函数解析
    • configureSport(comportSnum)
    • readUartCallbackFcn(sphandle, 0);
    • 缓冲区控制
    • TLV协议解析
      • Magic Word 搜索及确认
      • TLV Header 解析
      • TLV Body 解析
    • 协议解析
      • 数据处理函数及绘图
  • 源代码

前置基础

需熟悉TLV 协议 并对TI 基本的 TLV 输出套路有基本的概念。

源代码功能说明

一个使用matlab对6843 High Accuracy Demo 进行数据解析的Demo Project。


适用于TI 毫米波雷达 TLV 协议架构解析的Matlab上位机代码走读博客。

功能演示视频

Matlab mmWave TLV 协议解析功能演示

文件结构

在这里插入图片描述

01.bin / 02.bin

通过串口捕获到的原始数据保存在当前bin文件中。

ParseData.m

函数执行入口

read_file_and_plot_object_location.m

读取bin文件并且绘图

read_serial_port_and_plot_object_location.m

读取串口并保存数据

函数解析

configureSport(comportSnum)

配置串口

% 配置串口号及波特率。
% 串口接收的数据存在InputBufferSize中。
function [sphandle] = configureSport(comportSnum,BaudRate)global BYTES_AVAILABLE_FCN_CNT;if ~isempty(instrfind('Type','serial'))disp('Serial port(s) already open. Re-initializing...');delete(instrfind('Type','serial'));  % delete open serial ports.endcomportnum_str = ['COM' num2str(comportSnum)];sphandle = serial(comportnum_str,'BaudRate',BaudRate);set(sphandle,'InputBufferSize', 2^20);set(sphandle,'Timeout',10);set(sphandle,'ErrorFcn',@dispError);set(sphandle,'BytesAvailableFcnMode','byte');set(sphandle,'BytesAvailableFcnCount', 2^20+1);%BYTES_AVAILABLE_FCN_CNT);set(sphandle,'BytesAvailableFcn',@readUartCallbackFcn);fopen(sphandle);
return

readUartCallbackFcn(sphandle, 0);

串口数据接收并放入缓冲区并控制


function [] = readUartCallbackFcn(obj, event)
global bytevecAcc;
global bytevecAccLen;
global readUartFcnCntr;
global BYTES_AVAILABLE_FLAG
global BYTE_VEC_ACC_MAX_SIZE
global EX

这篇关于TI毫米波雷达开发——High Accuracy Demo 串口数据接收及TLV协议解析 matlab 源码的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/690019

相关文章

Java汇编源码如何查看环境搭建

《Java汇编源码如何查看环境搭建》:本文主要介绍如何在IntelliJIDEA开发环境中搭建字节码和汇编环境,以便更好地进行代码调优和JVM学习,首先,介绍了如何配置IntelliJIDEA以方... 目录一、简介二、在IDEA开发环境中搭建汇编环境2.1 在IDEA中搭建字节码查看环境2.1.1 搭建步

Oracle Expdp按条件导出指定表数据的方法实例

《OracleExpdp按条件导出指定表数据的方法实例》:本文主要介绍Oracle的expdp数据泵方式导出特定机构和时间范围的数据,并通过parfile文件进行条件限制和配置,文中通过代码介绍... 目录1.场景描述 2.方案分析3.实验验证 3.1 parfile文件3.2 expdp命令导出4.总结

更改docker默认数据目录的方法步骤

《更改docker默认数据目录的方法步骤》本文主要介绍了更改docker默认数据目录的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1.查看docker是否存在并停止该服务2.挂载镜像并安装rsync便于备份3.取消挂载备份和迁

不删数据还能合并磁盘? 让电脑C盘D盘合并并保留数据的技巧

《不删数据还能合并磁盘?让电脑C盘D盘合并并保留数据的技巧》在Windows操作系统中,合并C盘和D盘是一个相对复杂的任务,尤其是当你不希望删除其中的数据时,幸运的是,有几种方法可以实现这一目标且在... 在电脑生产时,制造商常为C盘分配较小的磁盘空间,以确保软件在运行过程中不会出现磁盘空间不足的问题。但在

在C#中合并和解析相对路径方式

《在C#中合并和解析相对路径方式》Path类提供了几个用于操作文件路径的静态方法,其中包括Combine方法和GetFullPath方法,Combine方法将两个路径合并在一起,但不会解析包含相对元素... 目录C#合并和解析相对路径System.IO.Path类幸运的是总结C#合并和解析相对路径对于 C

在 VSCode 中配置 C++ 开发环境的详细教程

《在VSCode中配置C++开发环境的详细教程》本文详细介绍了如何在VisualStudioCode(VSCode)中配置C++开发环境,包括安装必要的工具、配置编译器、设置调试环境等步骤,通... 目录如何在 VSCode 中配置 C++ 开发环境:详细教程1. 什么是 VSCode?2. 安装 VSCo

详解Spring Boot接收参数的19种方式

《详解SpringBoot接收参数的19种方式》SpringBoot提供了多种注解来接收不同类型的参数,本文给大家介绍SpringBoot接收参数的19种方式,感兴趣的朋友跟随小编一起看看吧... 目录SpringBoot接受参数相关@PathVariable注解@RequestHeader注解@Reque

Java解析JSON的六种方案

《Java解析JSON的六种方案》这篇文章介绍了6种JSON解析方案,包括Jackson、Gson、FastJSON、JsonPath、、手动解析,分别阐述了它们的功能特点、代码示例、高级功能、优缺点... 目录前言1. 使用 Jackson:业界标配功能特点代码示例高级功能优缺点2. 使用 Gson:轻量

Java如何接收并解析HL7协议数据

《Java如何接收并解析HL7协议数据》文章主要介绍了HL7协议及其在医疗行业中的应用,详细描述了如何配置环境、接收和解析数据,以及与前端进行交互的实现方法,文章还分享了使用7Edit工具进行调试的经... 目录一、前言二、正文1、环境配置2、数据接收:HL7Monitor3、数据解析:HL7Busines

Mybatis拦截器如何实现数据权限过滤

《Mybatis拦截器如何实现数据权限过滤》本文介绍了MyBatis拦截器的使用,通过实现Interceptor接口对SQL进行处理,实现数据权限过滤功能,通过在本地线程变量中存储数据权限相关信息,并... 目录背景基础知识MyBATis 拦截器介绍代码实战总结背景现在的项目负责人去年年底离职,导致前期规