Main Content

本页的翻译已过时。点击此处可查看最新英文版本。

XCP 硬件连接

您可以使用 CAN 协议将 XCP 主站连接到从站模块。这允许您使用事件和访问从站模块上的测量。

Work flow diagram for connecting an XCP master and slave

使用 CAN 设备创建 XCP 通道

以下示例说明如何创建 XCP CAN 通道连接和访问通道属性。该示例还说明如何使用种子和密钥安全性解锁从站。

访问说明从站模块的 A2L 文件。

 a2lfile = xcpA2L('C:\work\XCPSIM.a2l')
a2lfile = 

  A2L with properties:

                 FileName: 'XCPSIM.a2l'
                 FilePath: 'C:\work\XCPSIM.a2l'
                SlaveName: 'CPP'
        ProtocolLayerInfo: [1×1 xcp.ProtocolLayerInfo]
                  DAQInfo: [1×1 xcp.DAQInfo]
    TransportLayerCANInfo: [1×1 xcp.TransportLayerCANInfo]
    TransportLayerUDPInfo: [1×1 xcp.TransportLayerUDPInfo]
    TransportLayerTCPInfo: []
                   Events: {'Key T'  '10 ms'  '100ms'  '1ms'  'FilterBypassDaq'  'FilterBypassSt'}
             Measurements: {1×45 cell}
          Characteristics: {1×16 cell}
                EventInfo: [1×6 xcp.Event]
          MeasurementInfo: [45×1 containers.Map]
       CharacteristicInfo: [16×1 containers.Map]
                 AxisInfo: [1×1 containers.Map]
            RecordLayouts: [41×1 containers.Map]
             CompuMethods: [16×1 containers.Map]
                CompuTabs: [0×1 containers.Map]
               CompuVTabs: [2×1 containers.Map]

使用 Vector 虚拟 CAN 通道 1 创建 XCP 通道。

xcpch = xcpChannel(a2lfile,'CAN','Vector','Virtual 1',1)
xcpch = 

  Channel with properties:

               SlaveName: 'CPP'
             A2LFileName: 'XCPSIM.a2l'
          TransportLayer: 'CAN'
    TransportLayerDevice: [1x1 struct]
              SeedKeyDLL: []

配置通道以解锁从站

以下示例说明在您的模块被锁定而无法进行激励操作时,如何配置通道以使用包含种子和密钥安全算法的 dll 来解锁从站。

创建 XCP 通道并设置通道 SeedKeyDLL 属性。

 xcpch.SeedKeyDLL = ('C:\work\SeedNKeyXcp.dll')
xcpch = 

  Channel with properties:

               SlaveName: 'CPP'
             A2LFileName: 'XCPSIM.a2l'
          TransportLayer: 'CAN'
    TransportLayerDevice: [1x1 struct]
              SeedKeyDLL: 'C:\work\SeedNKeyXcp.dll'