matlab发送串口数据,并进行串口数据头的添加,我们来看下pwm解析后并通过串口输出的效果

uintt16位的话会在上面前面加上00,16位的话一定是两个字节,一共16位的数据

如果是unint8的话就不会,

注意这里给的是13,但是现实的00 0D,这是大小端的问题,在matlanb里设置,我们就默认用这个模式吧,没关系的,小端,小段的小数据在前,所以是00 0D。

下图是串口输出PWM波的结果:

下图是我实际用pwm发生器发出的pwm,对比一下结果一致(我使用的是uint16位,也就是0-2的16次方,所以我测量最大的频率范围是0-65535,占空比没关系的,最大是0-100)

如果要提高我串口现实的频率范围,可以将我的matlab程序模型精度修改位无符号32位,这样就可以测量0-30MHZ一点问题都没有,但是缺点是的其他数据类型就会多一些00出来。

相关推荐
leaves falling4 小时前
c语言-扫雷游戏
c语言·单片机·游戏
梁洪飞5 小时前
clk学习
linux·arm开发·嵌入式硬件·arm
浩瀚地学6 小时前
【Java】JDK8的一些新特性
java·开发语言·经验分享·笔记·学习
JeffDingAI6 小时前
【Datawhale学习笔记】深入大模型架构
笔记·学习
暖阳之下6 小时前
学习周报三十一
学习
eewj7 小时前
STM32中FCLK时钟信号的作用
stm32·单片机·嵌入式硬件
淘晶驰AK7 小时前
ESP32和STM32哪个更容易学?
stm32·单片机·嵌入式硬件
Master_oid8 小时前
机器学习29:增强式学习(Deep Reinforcement Learning)④
人工智能·学习·机器学习
楼田莉子8 小时前
Linux学习之磁盘与Ext系列文件
linux·运维·服务器·c语言·学习
一条闲鱼_mytube8 小时前
智能体设计模式(三)多智能体协作-记忆管理-学习与适应
人工智能·学习·设计模式