MATLAB输出串口发送所需十六进制数据

  在FPGA设计过程中,有时需要与MATLAB进行联合调试,需要从MATLAB导出数据,再从PC端通过串口发送给FPGA,对数据进行处理后再返回PC端。串口的收发一般是以十六进制进行收发的,在MATLAB中没有直接从二进制数据转十六进制的函数,所以需要自行编写相关函数用于二进制转十六进制。如下:

function hex_matrix = bin2hex(bin_matrix)
L = length(bin_matrix); % 二进制数组长度
str_matrix = {}; %空元组
dec_matrix = []; %空数组
for i = 1:Lstr_matrix{i} = num2str(bin_matrix(i)); % 十进制转字符串dec_matrix(i) = bin2dec(str_matrix{i}); % 二进制转十进制hex_matrix{i} = dec2hex(dec_matrix(i)); % 十进制转十六进制
end
end

  可以用一个文件来测试其是否符合我们的要求,将一个二进制向量转化为十六进制向量,每个十六进制数表示1byte(不足1byte前面补0),并且写入txt文件中,每byte之间用空格隔开。

clc;clear;
fid=fopen('F:\Matlab_Function\hex.txt','w'); % txt文件存储路径
bin_matrix = [10110 11101001 00001101 00001111]; % 二进制数组
hex_matrix = bin2hex(bin_matrix); % 十六进制数组
L = length(hex_matrix); % 数组中数据个数
for i = 1:Lfprintf(fid,'%02s ',hex_matrix{i}); % 逐个输出到txt文件
end

  打开存储路径下的txt文件,可见符合预期需求。

  使用串口助手载入txt文件,可见按照txt文件中的数据读入到串口助手的发送端口。

《源码》
以上仅为个人学习笔记,欢迎评论区探讨交流!

MATLAB输出串口发送所需十六进制数据相关推荐

  1. 向串口发送特殊的十六进制数据的两种方法

    法一:直接发送十六进制字符串 ser = serial.Serial('com1', 9600) # 初始化串口 send_data = '\x31\x32\x33\x34\x35' ser.writ ...

  2. java串口发送16进制数据_MFC串口通信发送16进制数据的方法

    本文实例为大家分享了MFC串口通信发送16进制数据的具体代码,供大家参考,具体内容如下 MFC串口通信会使用m_mscomm控件. 发送数据一般是在edit control 里输入自己想发送的内容,然 ...

  3. App Inventor 使用BLE发送一串十六进制数据

    最近做的东西需要通过低功耗蓝牙BLE发送和接收一串的十六进制数据,现在终于把发送搞定了. 现在要用手机发送一串指令"01 01 02 12 45 65",想要既可以直接发送,也可以 ...

  4. STM32串口发送16进制数据

    方法一(用printf函数) 下面演示两个示例 //说明:用u8或unsigned char都能正常发送//示例 1 u8 send1=0x55; printf("%c",send ...

  5. 【Python】python2.7使用串口发送txt文件的数据

    实现效果:Python端发送txt文件里的数据 串口助手显示接收到的数据 操作步骤如下: 1.先安装Python的串口库pyserial,安装方法有很多种,以下的适用我的win10 64位. 将你电脑 ...

  6. matlab串口陀螺仪,matlab通过串口接收ARM7外设陀螺仪数据并绘图有困难急求解答...

    我用STM32的板子接了个陀螺仪,想用matlab画个图看看数据,但是从网上扒了个代码不好用,,,,串口应该是连上了,就是数据送不到matlab里,也不报错,就是显示不出来,哪位大神帮忙看看问题在哪啊 ...

  7. arduino向串口发送数据时掉包_[技术]清楚简单,一种串口触摸屏的开发流程和方法介绍...

    1.什么是串口触摸屏 触摸屏是工业控制上很常见的人机交互部件,很多设备.系统都在使用它,它至少有两个功能:显示,触摸控制. 串口触摸屏是采用串行数据通信协议进行数据交换的触摸屏,具有简单.可靠.易于操 ...

  8. stm32串口自定义协议接收一串十六进制数据(将其中两个字节转化为十进制数据)+部分串口基础知识

    文章目录 一.基本储存单元 二.通信协议 (一)并行通信和串行通信 (二)三种工作方式 (三)收发数据同步或异步传输 (四)通信速率 三.串口通信协议 (一)RS232 (二)USB转串口(TTL标准 ...

  9. stm32串口传输数据第一个数据被吞_stm32串口发送数据复位 第一个数据丢失

    http://blog.csdn.net/kevinhg/article/details/40991655 STM32串口发送必须先检测状态,否则第一个字节无法发出,发送完毕,必须检测发送状态是否完成 ...

最新文章

  1. 2020年“3D视觉工坊”视频号最受欢迎视频 Top 10!
  2. 【html、css、jq】制作一个简洁的音乐播放器
  3. 古诗文网页版html,古诗文网古诗文经典传承
  4. SICP 之斐波那契数
  5. python并发处理list数据_3种方式实现python多线程并发处理
  6. 中国大妈也不带钱包了!支付宝春节60后境外支付人数增长130%
  7. 数组的基本操作(1)
  8. mongodb 导出一条数据_将 MongoDB 导出成 csv
  9. MySQL 常用工具sysbench/fio/tpcc等测试
  10. 使用react-native做一个简单的应用-03欢迎界面
  11. python刚出来多少薪资-Python最低薪资在北上深是多少你们知道吗?我已经整理好了哦...
  12. mvn clean install 与 mvn install 的区别
  13. 电脑编程就业找哪方面
  14. matlab陷波带阻滤波器,matlab陷波滤波器 陷波滤波器器应放在系统的闭环吗
  15. linux用迅雷下载软件,wine 迅雷下载安装(wine 迅雷极速版)
  16. 打印纸张尺寸换算_各种打印纸的尺寸是多少?
  17. mysql 汉字笔画排序规则_SQL Server 与MySQL中排序规则与字符集相关知识的一点总结...
  18. java中not equal_Java ObjectUtils.notEqual方法代码示例
  19. 从都市丽人2022年财报,看专业内衣如何进阶突围
  20. 完整的模型测试(deom)步骤

热门文章

  1. 高中信息技术教资-笔记-思维导图(原创)
  2. 表情包钢琴家安天旭来昆山春晚了
  3. 云数据中心概述与趋势
  4. android小说阅读器智能断章功能的实现
  5. Java的isblank,strip方法找不到
  6. 从零玩转Node.js,助你打通前后端任督二脉
  7. 基于Java Swing编写的运费计算系统
  8. 计算机前沿(2022计算机前沿方向)
  9. Refused to apply style from ‘http://localhost:8080/iconfont.css‘ because its MIME type (‘text/html‘
  10. webservice实现天气预报