用USB采集传输8路数据并要求同时显示在波形图上
时间:10-02
整理:3721RD
点击:
就是之前做过类似的温度采集数据,不过就是简单地采集1路,现在要采集8路,BOSS说下位机传上来的数据是这样的
(帧头+1通道数据+2+3+4+5+6+7+8+1+2+····+8+1+···+8+····)每次采集16位,其中带1位校验位(用异或),我现在有点不懂得是,怎么将8位数据分别分出来而且能归在一起在波形图上显示8通道采集到的数据,有考虑用过移位寄存器加数组,但是我好像用的有点不对 = = 求各位帮忙指点一下,感激不尽!
上图是自己乱做的一部分,有什么不对请大家帮我纠正一下,谢谢谢谢了!
(帧头+1通道数据+2+3+4+5+6+7+8+1+2+····+8+1+···+8+····)每次采集16位,其中带1位校验位(用异或),我现在有点不懂得是,怎么将8位数据分别分出来而且能归在一起在波形图上显示8通道采集到的数据,有考虑用过移位寄存器加数组,但是我好像用的有点不对 = = 求各位帮忙指点一下,感激不尽!
上图是自己乱做的一部分,有什么不对请大家帮我纠正一下,谢谢谢谢了!
8通道和1通道是一样的,先读取串口内容,然后将读取的字符串转换为字节数组,再根据索引数组索引出八个通道的参数进行计算,得到结果最后用信号合并一起送入波形图表显示,搞定。
问题来了,怎么将8个通道数据分开?还要单独将每个通道的数据整合到一起嘛?
你1通道的难道不用提取数据吗,难道发送的直接就是一个值没有帧头帧尾吗!说了,将串口读取的字符串转换为字节数组,然后索引数组,最后合并信号。可参考我关于温度采集的程序,整个流程都是一样的。
RE: 用USB采集传输8路数据并要求同时显示在波形图,xuexi
我知道你说的,我也看了你的,不过我采集上传的数据是8通道同时的,还只有一个帧头,没有帧尾,而且你前面板可以选择通道1,通道8 ,然后分别处理数据对吧,所以你不需要将数据从字节数组里分别挑拣出来,我的只要选择一个USB口就可以了,所以我想不出能更准确的分出通道1,通道2,通道3····的数据的方法,流程其实我也能知道,但是就是在我找到帧头位置之后,我就不懂怎么再分别索引出不同通道的数据,还要把同一个通道的数据放在一起,数据进来的时候是通道1+通道2+···通道8+通道1···· ,一直都这么循环,我可以计数然后除8的余数来判断是哪个通道的值嘛?因为数据进来不含设备位, = =
也真是麻烦你看我这么多字了,谢谢大神~~~
不清楚你什么意思,既然你知道整个流程,那么就应该能够扩展成多通道,只不过是多提取几个字节数据而已。我做过一个12个参数的,每个参数四个字节,还不是一样提取处理吗?或者你直接说你的数据协议吧,完整一点。
也不是很明白,求解