メインコンテンツ

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

XCP ハードウェア接続

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'