首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >清除CAN适配器的套接字缓冲区

清除CAN适配器的套接字缓冲区
EN

Unix & Linux用户
提问于 2022-03-18 10:30:19
回答 1查看 1K关注 0票数 1

我有一个USB/CAN适配器,来自lsusb

OpenMoko,Inc. Geschwister Schneider CAN适配器

它从ip addr提供了一个套接字接口:

代码语言:javascript
复制
5: can0: <NOARP,UP,LOWER_UP,ECHO> mtu 16 qdisc pfifo_fast state UP group default qlen 10 link/can 

总线上还有其他设备可以连续地发送数据。如果我重新启动我的PC,我将无法再发送/接收数据,因为我得到了以下错误:

没有可用的缓冲区

我想,当设备与PC“断开”时(因为它正在重新启动,但仍在供电),内部缓冲区就会被填满。

我能发出命令清除缓冲区吗?

EN

回答 1

Unix & Linux用户

发布于 2022-07-15 18:38:20

我相信python-can库提供了一种解决方案。

https://buildmedia.readthedocs.org/media/pdf/python-can/develop/python-can.pdf

Python库为Python提供了Controller网络支持,为不同的硬件设备提供了通用的抽象,并为在CAN总线上发送和接收消息提供了一套实用程序。

这里提供的功能之一是flush_tx_buffer()

flush_tx_buffer()丢弃可能在输出缓冲区(S)中排队的所有消息。

该库可以从不同的位置下载,包括从https://github.com/hardbyte/python-can的github repo下载。

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/695926

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档