安澜仙王
希望生活会越来越好
展开
-
Scripts
以下模块可从python can调用。例如,它们可以由python-m can.logger或can_logger.py调用(如果使用pip安装)。原创 2023-09-04 18:03:21 · 301 阅读 · 0 评论 -
Multicast IP Interface
该模块通过多播IPv4和IPv6在UDP上实现CAN和CAN FD消息的传输。此虚拟接口允许在多个进程甚至主机之间进行通信。这与虚拟接口不同,虚拟接口只能在单个进程中传递消息,但不需要网络堆栈。它在UDP上运行以具有尽可能低的延迟(与使用TCP相反),并且因为正常的IP多播本质上是不可靠的,因为接收方是未知的。这使得自组织网络不需要中央服务器,但也是所谓的不可靠网络。然而,在实践中,局域网(LAN)通常应该足够可靠,以便该接口正常工作。Note。原创 2023-08-29 18:16:18 · 1336 阅读 · 0 评论 -
Virtual
虚拟接口可以用作编写操作系统和驱动程序独立测试的一种方式。任何连接到同一通道(来自同一Python进程)的VirtualBus实例都将相互接收消息。如果消息应跨进程或主机边界发送,请考虑使用多播IP接口,并参考虚拟接口对不同虚拟接口进行比较和一般性讨论。原创 2023-08-29 18:00:05 · 1112 阅读 · 0 评论 -
National Instruments NI-XNET
该接口增加了对National Instruments的NI-XNET CAN控制器的支持。NoteNI-XNET仅支持windows平台。原创 2023-08-29 17:52:13 · 470 阅读 · 1 评论 -
Internal API
init将信息传输到CAN总线。覆盖此方法以启用传输路径。msg (Message) – 消息对象。timeout (float | None) – 如果>0,根据驱动程序的实现,等待消息得到确认或传输队列准备就绪的时间最多为几秒钟。如果超过超时,将引发异常。可能不是所有接口都支持。无无限期阻塞。CanOperationError – 如果发送时发生错误None。原创 2023-08-28 16:48:50 · 186 阅读 · 0 评论 -
Utilities
自动配置检测可能不是由每个平台上的每个接口来实现的。在这种情况下,此方法不会引发错误,而是返回该接口的空列表。可迭代的dict,每个dict都适合在can.BusABC的构造函数中使用。检测接口当前可以连接的所有配置/通道。原创 2023-08-23 12:41:39 · 106 阅读 · 0 评论 -
Bit Timing Configuration
注意此功能是实验性的。在未来的版本中,实现可能会发生变化。ISO 11898中规定的CAN协议允许针对给定应用优化比特率、采样点和采样数量。这些被称为比特定时的参数可以被调整以满足通信系统和物理通信信道的要求。这些参数包括:tseg1: 时间段1(TSEG1)是从同步段结束到采样点的时间量。它以时间量(TQ)表示.tseg2: 时间段2(TSEG2)是从采样点到比特结束的时间量。以TQ表示.sjw: 同步跳跃宽度(SJW)是控制器可以重新同步每个位的TQ的最大数量.原创 2023-08-23 12:38:17 · 175 阅读 · 0 评论 -
Error Handling
请记住,某些函数和方法可能会引发不同的异常。例如,验证典型的自变量和参数可能会导致ValueError。应始终为手头的功能记录这一点。原创 2023-08-22 12:32:42 · 117 阅读 · 0 评论 -
Broadcast Manager
取消此定期任务。CanError – 如果对已停止的任务调用了stop。None重新启动已停止的定期任务。None。原创 2023-08-22 11:40:41 · 135 阅读 · 0 评论 -
Asyncio support
Python 3.4及更高版本中内置的asyncio模块可用于在单个线程中编写异步代码。此库支持使用can.Notifier类在事件循环中异步接收消息。每个CAN总线仍将有一个线程,但用户应用程序将完全在事件循环中执行,从而实现更简单的并发性,而无需担心线程问题。但是,具有有效文件描述符的接口将在没有线程的情况下得到本机支持。如果您更喜欢编写基于协程的代码而不是使用回调,也可以使用can.AsyncBufferedReader侦听器。原创 2023-08-22 10:56:58 · 106 阅读 · 0 评论 -
Reading and Writing Messages
调用此方法是为了处理给定的消息。msg (Message) – 传递的消息None执行翻转。None确定是否满足滚转条件。bool。原创 2023-08-22 10:47:39 · 128 阅读 · 0 评论 -
Message
可能的问题包括dlc字段与数据长度不匹配,或者创建的消息is_remote_frame和is_error_frame都设置为True.CAN消息中的arbitration_id字段的长度可以是11位(标准寻址,CAN 2.0A)或29位(扩展寻址,CAN 2.0 B),python可以通过is_extended_id属性来暴露这种差异.它的用途因帧类型而异——对于数据帧,它表示消息中包含的数据量,在远程帧中,它表示请求的数据量。消息可以使用扩展标识符,是远程或错误帧,包含数据,并且可以与信道相关联。原创 2023-08-21 16:51:43 · 89 阅读 · 0 评论 -
Bus的翻译
将信息传输到CAN总线.覆盖此方法以启用传输路径.参数:timeout (float | None) – 如果>0,根据驱动程序的实现,等待消息得到确认或传输队列准备就绪的时间最多为几秒钟。如果超过超时,将引发异常。可能不是所有接口都支持。无无限期阻塞。CanOperationError – 如果发送时发生错误None。原创 2023-08-21 15:02:33 · 122 阅读 · 0 评论 -
Configuration
通常,该库与特定的CAN接口一起使用,这可以在代码中指定,从配置文件或环境变量中读取。有关实现,请参见can.util.load_config()。CAN_CONFIG环境变量允许使用JSON设置任何总线配置.can对象公开了一个rc字典,可以用来设置接口和通道.可以通过插件接口添加其他接口类型.原创 2023-08-21 14:38:04 · 79 阅读 · 0 评论 -
Installation
要安装正常运行时间库,请运行pip-install-python-can[pcan].如果使用python 3.3或更高版本调用,此版本的python can将直接使用socketcan,否则该接口将通过ctypes使用.2.测试IXXAT自己的工具(即MiniMon)是否正常工作,以确保驱动程序安装正确,硬件是否正常工作.2.安装XL驱动程序库或将vxlapi.dll和/或vxlapi64.dll复制到您的工作目录中.2.测试Kvaser自己的工具是否正常工作,以确保驱动程序安装正确,硬件是否正常工作.原创 2023-08-21 14:27:42 · 88 阅读 · 0 评论