识别流程:

1. 功能模块插入能源控制器卡槽

2. 在/sys/bus/device/4-1总线下生成接口4-1:1.0、4-1:1.1、4-1:1.2、4-1:1.3

模组管理器功能模块热插拔流程

 

首先要说明下Linux系统下USB设备名称的两种格式:

AA-BB:CC.DD

AA-BB.xx:CC.DD

注解:

AA:USB总线

BB:设备路径

BB.xx:其中.xx表示级联HUB,对应相应的物理端口

CC:配置,例如一个HUB下面可以有多个USB口,每个口对应一个配置

DD:接口,例如一个RS485功能模块有多个/dev/ttyACMx设备,这里的每个设备就是对应一个接口

3. 模组管理APP检测到有功能模块接入到卡槽,依据USB设备名称的命名格式,生成对应的逻辑设备usb_exmX_Y,其中x为卡槽、对应USB设备名称格式中的CC段,Y为端口序号、对应USB设备名称格式中的DD段,如果再插入一个相同的模块该如何管理?

4. 模组管理APP通过逻辑设备的管理通道usb_exmX_0(序号为0都是管理通道)完成链路协商请求,然后确定虚拟通道的工作模式

模组管理器功能模块热插拔流程

 

这里应该有些规定,比如RS485功能模块具备两路485接口,两路485接口对应的逻辑设备应该是固定的,否则会导致抄表无法确定使用哪一路设备

5. RS485APP获取模组管理接口规范中的IID=0004、IOP=0016中的所有槽位信息,确定哪些是485通道,每个通道对应相应的逻辑设备usb_exmX_Y,数据通道中的Y是从1开始,对应F201020Y

相关文章:

  • 2022-12-23
  • 2021-06-07
  • 2022-03-02
  • 2021-10-26
  • 2021-11-22
  • 2021-06-11
  • 2021-07-11
  • 2021-05-24
猜你喜欢
  • 2021-04-13
  • 2022-12-23
  • 2022-12-23
  • 2021-09-19
  • 2021-08-21
  • 2021-12-29
  • 2021-10-18
相关资源
相似解决方案