程控
电源艾德克斯IT6332A,USB通讯时(Instr类),可以成功写入指令并且仪器会正常响应,但是却无法读取返回值,每次都提示如下图1的读取超时的错误。另外,在MAX里用VISA测试面板测试是没有问题的,能够正确返回,如图3。然后就是,通过图2所示程序写入与VISA测试面板中相同的指令时,依然会提示图1所示错误,但是在VISA测试面板中选择读取却会正确返回,再次说明图2程序能够正确写入指令却不能读取返回。既然能够写入指令,应该说明通讯是成功了的,可是为什么不能读取返回呢?不知道可有谁碰到类似问题,还望不吝赐教,先谢了。
-
1
-
2
-
3
串口有两种方式读取,一种是按设定的字节数读取,一种按终止符读取。
当返回的数据没有终止符时,一般按字节数读取,然后自己分析是否读完。
当返回数据有终止符时,就可以设定读取字节数大于实际字节数,函数自动会以设定的终止读取到完整的数据返回。
其实很多的串口通信里面基本都会定义终止符的,只是你用不用而已
一周热门 更多>