メインコンテンツ

このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。

XCP ハードウェア接続

R2025a

CAN プロトコルを使用して、XCP クライアントをサーバー モジュールに接続できます。これにより、イベントを使用したり、サーバー モジュール上の測定値にアクセスしたりできるようになります。

Work flow diagram for connecting an XCP client and server

CANデバイスを使用してXCPチャネルを作成する

この例では、XCP CAN チャネル接続を作成し、チャネルのプロパティにアクセスする方法を示します。この例では、シード キー セキュリティを使用してサーバーのロックを解除する方法も示します。

サーバー モジュールを記述する A2L ファイルにアクセスします。

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

  A2L with properties:

   File Details
                 FileName: 'XCPServerSineWaveGenerator.a2l'
                 FilePath: 'C:\work\XCPServerSineWaveGenerator.a2l'
               ServerName: 'ModuleName'
                 Warnings: [0×0 string]

   Parameter Details
                   Events: {'100 ms'}
                EventInfo: [1×1 xcp.a2l.Event]
             Measurements: {1×6 cell}
          MeasurementInfo: [6×1 containers.Map]
          Characteristics: {'Gain'  'ydata'}
       CharacteristicInfo: [2×1 containers.Map]
                 AxisInfo: [1×1 containers.Map]
            RecordLayouts: [4×1 containers.Map]
             CompuMethods: [3×1 containers.Map]
                CompuTabs: [0×1 containers.Map]
               CompuVTabs: [0×1 containers.Map]

   XCP Protocol Details
        ProtocolLayerInfo: [1×1 xcp.a2l.ProtocolLayer]
                  DAQInfo: [1×1 xcp.a2l.DAQ]
    TransportLayerCANInfo: [0×0 xcp.a2l.XCPonCAN]
    TransportLayerUDPInfo: [0×0 xcp.a2l.XCPonIP]
    TransportLayerTCPInfo: [1×1 xcp.a2l.XCPonIP]

MathWorks virtual CAN channel 1 を使用して XCP チャネルを作成します。

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

  Channel with properties:

              ServerName: 'ModuleName'
             A2LFileName: 'XCPServerSineWaveGenerator.a2l'
          TransportLayer: 'CAN'
    TransportLayerDevice: [1×1 struct]
              SeedKeyDLL: []

サーバーのロックを解除するためのチャネルを設定する

この例では、モジュールが Stimulation 操作のためにロックされているときに、シードキー セキュリティ アルゴリズムを含む dll を使用してサーバーのロックを解除するようにチャネルを構成する方法を示します。

XCP チャネルを作成し、チャネルの SeedKeyDLL プロパティを設定します。

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

  Channel with properties:

              ServerName: 'ModuleName'
             A2LFileName: 'XCPServerSineWaveGenerator.a2l'
          TransportLayer: 'CAN'
    TransportLayerDevice: [1×1 struct]
              SeedKeyDLL: 'C:\work\SeedNKeyXcp.dll'