matlab 的串口通讯速度问题 50
用matlab的timer定时中断发送通讯请求,我试过了,确实是可以的。不过有个问题,我跟设备的通讯波特率是38400,命令每帧10字节,加上起始终止位,100Bits,...
用matlab的timer定时中断发送通讯请求,我试过了,确实是可以的。
不过有个问题,我跟设备的通讯波特率是38400,命令每帧10字节,加上起始终止位,100Bits,也就是说理论上,2.604ms(384Hz)就可以完成一次通讯,考虑到一些延迟和数据处理时间,
我把通讯周期设定为10ms,结果误码率特别高。周期改为直到30ms才开始比较稳定,改到50ms就完全没有问题了。
不知道这种延迟是matlab本身各种事件过多造成的?
还是Windows线程过多造成的?
还是我的USB-COM转换器处理时间过长造成的?
之前的问题:http://zhidao.baidu.com/question/1830364275704002740.html?sort=6#answer-1718945701 展开
不过有个问题,我跟设备的通讯波特率是38400,命令每帧10字节,加上起始终止位,100Bits,也就是说理论上,2.604ms(384Hz)就可以完成一次通讯,考虑到一些延迟和数据处理时间,
我把通讯周期设定为10ms,结果误码率特别高。周期改为直到30ms才开始比较稳定,改到50ms就完全没有问题了。
不知道这种延迟是matlab本身各种事件过多造成的?
还是Windows线程过多造成的?
还是我的USB-COM转换器处理时间过长造成的?
之前的问题:http://zhidao.baidu.com/question/1830364275704002740.html?sort=6#answer-1718945701 展开
展开全部
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
迪凯特科技(北京)有限公司
2023-07-28 广告
2023-07-28 广告
单片机串口通信数据丢失的原因可能如下:1. 按键通过串口发送对应命令,第一次按按键串口发送的指令正确且能把数据正确的显示出来,在第二次按按键串口发送的指令出现丢失的状况,可能是因为串口通信的波特率设置不正确。2. 如果单片机和外部设备的波特...
点击进入详情页
本回答由迪凯特科技(北京)有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询