急求解答!!!
我做了一个基于周立功CAN卡的 labview上位机数据接受显示,只是接收并显示CAN网络上的数据,波特率为250kbps,刚开始数据还能实时接收,但一段时间后,也就几分钟吧,接受就越来越慢了,而且停止运行后,再与外界CAN网络断开,CAN卡还在,下次重新运行,依然在接收数据,这时已经与外界断开了啊。我是新手菜鸟,请大神帮忙解决一下吧,感激不尽!!!!
0
|
|
|
|
你这程序没有清除CAN卡的寄存器,寄存器数据存满后一帧一帧往外顶,这样数据的实时性就差。你要再做一个清除寄存器的子VI放到主循环中,子VI要给一个时间延时每多少毫秒清除一次自己看在来,我自己做的是200ms清除一次,实时性还可以,你可以试一下。
|
|
-
王坤玉
2018-12-29 11:23
清除CAN寄存器是采用clearBuffer吗?
-
自强不息
回复
王坤玉:
2019-2-24 20:49
是的,用clearbuff
|
|
|
libobmwm3 发表于 2017-6-30 11:40
你这程序没有清除CAN卡的寄存器,寄存器数据存满后一帧一帧往外顶,这样数据的实时性就差。你要再做一个清除寄存器的子VI放到主循环中,子VI要给一个时间延时每多少毫秒清除一次自己看在来,我自己做的是200ms清除一次,实时性还可以,你可以试一下。 ...
您好 请问能不能上图说明一下呐 我也遇到这个问题了
|
|
|
|
|
libobmwm3 发表于 2017-6-30 11:40
你这程序没有清除CAN卡的寄存器,寄存器数据存满后一帧一帧往外顶,这样数据的实时性就差。你要再做一个清除寄存器的子VI放到主循环中,子VI要给一个时间延时每多少毫秒清除一次自己看在来,我自己做的是200ms清除一次,实时性还可以,你可以试一下。 ...
您好 请问能不能上图说明一下呐 我也遇到这个问题了
|
|
|
|
|
libobmwm3 发表于 2017-6-30 11:40
你这程序没有清除CAN卡的寄存器,寄存器数据存满后一帧一帧往外顶,这样数据的实时性就差。你要再做一个清除寄存器的子VI放到主循环中,子VI要给一个时间延时每多少毫秒清除一次自己看在来,我自己做的是200ms清除一次,实时性还可以,你可以试一下。 ...
您好 请问能不能上图说明一下呐 我也遇到这个问题了
|
|
|
|
|
你可以看一下,我把库函数封装成子VI了,你要自己把buff库函数封装一下
-
1.jpg
(54.29 KB, 下载次数: 9)
|
|
|
|
|
看来你也是做电动汽车之类的。用这个周立功的demo 会碰到很多问题的。所以不要用了
|
|
-
奔波兒霸
2020-5-24 16:20
你好,我用周立功的demo就遇到好多问题,包括上面的问题了,请问有没有更好的例程使用啊
|
|
|
去网上找一下test10.vi 我以前用过,那个只在在while内放延时,就不会死。工作一个月也没事,
|
|
|
|
|