デバイスエミュレートSPIスレーブエミュレーター (ADC)

テンプレート説明

TC-3000がSPIスレーブ(ADC)として動作し、テスト対象機器からのチャンネル選択コマンドに対してADC変換結果を応答します。

 

  • 1 チャンネル選択受信
    テスト対象機器からのMOSI(チャンネル番号)を受信します。
  • 2 テーブル参照・返却値決定
    ①で受信したチャンネル番号をADCテーブルで検索します(無効チャンネルはエラー応答を返却)。
  • 3 変換結果返却
    MISOにADC変換結果を出力します。テスト停止まで繰り返します。
初期ユニット配置
 ・スロット1:DIOユニット(TC-IFDIO) ※1

※1 ユニットを別スロットへ変更する場合、ユニット設定のスロット割り付け変更を行うことで、設定値などを引き継ぎ可能です。

接続図

TC-3000がSPIスレーブ(ADC)として動作し、テスト対象機器からのチャンネルMOSI選択を受信してADC変換結果をMISOで返却します。

TC-3000 DIOユニット(TC-IFDIO) SPI スレーブ SPI1 MOSI(チャンネル受信) adc_values 参照・返却 チャンネル番号 返却値 0x01 0x0A1B 0x02 0x05C3 ... ... SPI1 MISO(ADC値返却) テスト対象機器 (SPIマスター) SPI MOSI SPI SCK SPI CS SPI MISO ① Write(チャンネル選択) SCK(クロック供給) CS(チップセレクト) ② Read(ADC値返却) Luaスクリプト処理

 ※必ずGNDは接続してください。

※ WriteとReadの間は5ms以上開けてください。装着するユニット構成、設定によって変動します。

設定変数

全設定変数を記載しています。実機の仕様に合わせて変更してください。

変数名

内容

初期値

SLOT

使用するユニットのスロット番号。使用するユニットに応じて変更。

DIO1

CH

使用するSPIチャンネル

SPI1

CMD_SIZE

チャンネル選択コマンドの受信バイト数

3

SEND_TIMEOUT

SPI_SlaveSendのタイムアウト (ms)

1

RECEIVE_TIMEOUT

SPI_SlaveReceiveのタイムアウト (ms)。

100000

ERROR_RESPONSE

無効チャンネル番号を受信した場合に返却するバイト列

"\x00\x00\x00"

adc_values

チャンネル番号 → ADC変換結果のマッピングテーブル。

キー 内容
[ch_num] チャンネル番号(数値)をキーとし、返却するADC変換結果バイト列を値として定義します

サンプル有
使用例は接続図参照