完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
背景:利用visa读取串口数据,解析及实时显示出X-Y曲线。
问题:利用状态机编写的程序读取显示都没有问题,而用消息队列结构写的程序读取的数据不对,不对的判断是从曲线上看出来的,测量工况是Y值维持0,X值不断变化。(正确如fig1,fig2是队列结构下的曲线,明显乱了),疑问是这两种仅仅是程序结构不同,但串口读取、解析及显示部分的程序都是一样的,请问高手知道这个问题产生的原因是什么? |
|
相关推荐
7个回答
|
|
你确定fig1正确吗?fig2会不会是噪音?而fig1是不是没有输出。用一个标准输出(比如2N的)测试一下先。
|
|
|
|
Fig1做过测试,Y值输出正常,这里只是为了方便比较,没有施加Y值。Fig2像是噪声,但从串口读出来,再到解析的这个过程没有变过,不知道为啥会产生这种类似噪声的数据
|
|
|
|
tigergang 发表于 2018-5-11 11:54 用两种程序,在同一硬件状态下(如果空载都空载,如果负载就用同一负载),然后名义环境保持一致(温湿度,环境噪音等),先测试A程序再测试B程序,接着,先测试B程序再测试A程序(以排除时序上的变异)。最后比较两者测试结果,确认是否是程序问题。 |
|
|
|
目测程序问题,
|
|
|
|
试了应该不是时序问题,可能是串口读取吗?可是也能够收到下位机发来的符合协议的数据,解析这块都一样,没方向了。。
|
|
|
|
经过探针监视发现是数据存储的问题,但是都是同样的寄存器+数组插入方式,为啥fig2数组里面的Y值每循环一次就变化一次。。理论上存储下来的值就不会变化了啊,如X值就一直没变化。
|
|
|
|
楼主辛苦了,我正在学习呢
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
780 浏览 1 评论
2279 浏览 2 评论
2035 浏览 4 评论
labview如何实现电机位置与图像清晰度计算值相对应,或者说如何实现电机每步距计算一次清晰度值?
2239 浏览 2 评论
2765 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-2-24 02:15 , Processed in 0.657772 second(s), Total 87, Slave 69 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191