NI LabVIEW,CVI,数据采集等产品讨论区

取消
显示结果 
搜索替代 
您的意思是: 

can函数ncWaitForState的作用

已解决!
转到解答

请问CAN函数里的ncwaitforsate的作用是什么,我看帮助里面看的不是很明白。谢谢啦

注:我用ncreadnet函数从can口中读取数值,这里如果我的读取速度大于数值发送的速度时,read函数就会重复读取上次的数值。

0 项奖励
1 条消息(共 6 条)
5,651 次查看

可以用于等待(等待超时规定的时间)以下几个事件的发生:

NC_ST_READ_AVAIL (00000001 hex)

NC_ST_READ_MULT (00000008 hex)

NC_ST_REMOTE_WAKEUP (00000040 hex)

NC_ST_WRITE_MULT (00000080 hex)

NC_ST_WRITE_SUCCESS (00000002 hex)

比如NC_ST_READ_AVAIL (00000001 hex)用于在read的缓冲区里面有数据该函数才返回。

District Sales Manager | Shanghai Pudong, China
0 项奖励
2 条消息(共 6 条)
5,630 次查看
那么如果发送到can口的数据速度慢于can口读取速度,可以用waitstate函数来防止read函数重复读取缓冲区数据么(如果不加其他函数的话,我试过read函数会重复读取缓冲区的最后一个字节)。
0 项奖励
3 条消息(共 6 条)
5,625 次查看
解答
已被主题作者 jiangdafei435@163.com 接受
应该是可以的。用read_avail的事件。
District Sales Manager | Shanghai Pudong, China
4 条消息(共 6 条)
5,606 次查看
非常感谢你的帮助 极度高兴的表情
0 项奖励
5 条消息(共 6 条)
5,598 次查看
高兴表情
District Sales Manager | Shanghai Pudong, China
0 项奖励
6 条消息(共 6 条)
5,595 次查看