メインコンテンツまでスキップ

構造体定義(struct)

本製品の構造体定義を説明します。

定義一覧

構造体型名意味合い
StMPXAPIVersionAPIのバージョン情報
StMPXCoreVersionMicroPeckerXのバージョン情報
StMPXDeviceInfoMicroPeckerXのデバイス情報
StMPXCANParamパラメータ設定情報
StMPXCANLogCBコールバック用ログ情報
StMPXCANLogログ取得API用ログ情報
StMPXCANFrameOptionCAN/CAN FDフレームオプション情報
StMPXCANFrameTypeCAN/CAN FDフレーム属性情報
StMPXCANIDCAN ID情報
StMPXCANFrameCAN/CAN FDフレーム情報
StMPXCANSlotスロット情報
StMPXCANDirectダイレクト送信情報
StMPXCANReplayLogログ再生送信情報

定義詳細

StMPXAPIVersion

StMPXAPIVersion構造体(APIのバージョン情報)のメンバは、以下の通りです。

変数名型名意味合い
APIVersionint8_t [32]APIのバージョン番号

StMPXCoreVersion

StMPXCoreVersion構造体(MicroPeckerXのバージョン情報)のメンバは、以下の通りです。

変数名型名意味合い
BootVersionint8_t [16]Bootのバージョン番号
APPVersionint8_t [32]APPのバージョン番号
FPGAVersionint8_t [32]FPGA-IPのバージョン番号

StMPXDeviceInfo

StMPXDeviceInfo構造体(MicroPeckerXのデバイス情報)のメンバは、以下の通りです。

変数名型名意味合い備考
Serialuint32_tシリアル番号MicroPeckerXに貼付されているシリアルNoシールの記載と同じです。
Modelint8_t [64]製品型名(例:S810-MX-FD2)

StMPXCANParam

StMPXCANParam構造体(パラメータ設定情報)のメンバは、以下の通りです。

変数名型名意味合い備考
EnableTerminateuint8_t終端抵抗有無設定値については「終端抵抗有無」を参照してください。
Modeuint8_t動作モード設定値については「動作モード」を参照してください。
ArbitrationBaudrateuint8_tアービトレーションボーレート設定値については「アービトレーションボーレート」を参照してください。
ArbitrationSamplepointuint8_tアービトレーションサンプルポイント設定値については「サンプルポイント」を参照してください。
DataBaudrateuint8_tデータボーレート設定値については「データボーレート」を参照してください。
DataSamplepointuint8_tデータサンプルポイント設定値については「サンプルポイント」を参照してください。
Reserveduint8_t [2]予約領域

StMPXCANLogCB

StMPXCANLogCB構造体(コールバック用ログ情報)のメンバは、以下の通りです。

変数名型名意味合い備考
mSecuint32_tタイムスタンプ(ミリ秒)タイムスタンプは、mSecとuSecの値を組み合わせて表現します。
例えば12.345ms(12msと345us)の場合、mSecが12、uSecが345となります。
uSecuint16_tタイムスタンプ(マイクロ秒)
LogTypeuint8_tログ種別ビットフィールドによる構造体です(詳細は「LogType」を参照)。
DLuint8_tデータ長ビットフィールドによる構造体です(詳細は「DL」を参照)。
CANuint32_tCAN情報ID(ID情報)とErrorInfo(エラー情報)の共用体です。
ErrorInfoとして扱う場合はuint32_t型となります(値の意味合いは「エラー情報」を参照)。
IDとして扱う場合はビットフィールドによる構造体となります(詳細は「ID」を参照)。
Datauint8_t [64]データ(D1~D64)配列の要素番号0~63が、データのD1~D64にそれぞれ対応します。

StMPXCANLog

StMPXCANLog構造体(ログ取得API用ログ情報)のメンバは、以下の通りです。

変数名型名意味合い備考
mSecuint32_tタイムスタンプ(ミリ秒)タイムスタンプは、mSecとuSecの値を組み合わせて表現します。
例えば12.345ms(12msと345us)の場合、mSecが12、uSecが345となります。
uSecuint16_tタイムスタンプ(マイクロ秒)
Protocoluint8_tプロトコル値の意味合いについては「ログ種別」を参照してください。
Diruint8_t方向値の意味合いについては「ログ方向」を参照してください。
IDuint32_tCAN ID(標準IDまたは拡張ID)標準IDの場合は、下位11ビット(ビット10~ビット0)にセットされます。
RTRuint8_tリモート送信要求(RTR)値の意味合いについては「リモート送信要求」を参照してください。
IDEuint8_tIDフォーマット(IDE)値の意味合いについては「IDフォーマット」を参照してください。
DLuint8_tデータ長(DL)
Erroruint8_tエラーフラグ値の意味合いについては「エラーフラグ」を参照してください。
ErrorInfouint32_tエラー情報値の意味合いについては「エラー情報」を参照してください。
Datauint8_t [64]データ(D1~D64)配列の要素番号0~63が、データのD1~D64にそれぞれ対応します。

StMPXCANFrameOption

StMPXCANFrameOption構造体(CAN/CAN FDフレームオプション情報)のメンバは、以下の通りです。

変数名型名意味合い備考
Protocoluint8_tプロトコル設定値については「プロトコル」を参照してください。
BRSuint8_tビットレートスイッチ(BRS)設定値については「ビットレートスイッチ」を参照してください。
ErrorActionuint8_tエラーの振る舞い設定値については「エラーの振る舞い」を参照してください。
Reserveduint8_t予約領域

StMPXCANFrameType

StMPXCANFrameType構造体(CAN/CAN FDフレーム属性情報)のメンバは、以下の通りです。

変数名型名意味合い備考
isOneShotuint8_tワンショット送信有効/無効設定値については「ワンショット送信有効/無効」を参照してください。
FrameTypeuint8_tフレーム種別設定値については「フレーム種別」を参照してください。
Enableduint8_tスロット有効/無効設定値については「スロット有効/無効」を参照してください。
isLastDatauint8_t最終フレーム判定動作モードがログ再生モード、またはバースト転送モード(ログ再生)の場合のみ有効です。
設定値については「最終フレーム判定」を参照してください。
OptionStMPXCANFrameOptionCAN/CAN FDフレームオプション情報

StMPXCANID

StMPXCANID構造体(CAN ID情報)のメンバは、以下の通りです。

変数名型名意味合い備考
IDuint32_tCAN ID(標準IDまたは拡張ID)標準IDの場合は、下位11ビット(ビット10~ビット0)にセットしてください。
RTRuint8_tリモート送信要求(RTR)設定値については「リモート送信要求」を参照してください。
IDEuint8_tIDフォーマット(IDE)設定値については「IDフォーマット」を参照してください。
Reserveduint8_t [2]予約領域

StMPXCANFrame

StMPXCANFrame構造体(CAN/CAN FDフレーム情報)のメンバは、以下の通りです。

変数名型名意味合い備考
IDStMPXCANIDCAN ID情報
DLuint8_tデータ長(DL)
Reserveduint8_t [3]予約領域
Datauint8_t [64]データ(D1~D64)配列の要素番号0~63が、データのD1~D64にそれぞれ対応します。

StMPXCANSlot

StMPXCANSlot構造体(スロット情報)のメンバは、以下の通りです。

変数名型名意味合い備考
SlotNouint8_tスロット番号(1~28)
TriggerTypeuint8_t送信トリガ種別設定値については「トリガ種別」を参照してください。
Reserved1uint8_t [2]予約領域
FrameTypeStMPXCANFrameTypeフレーム属性情報
TriggerIDStMPXCANID受信トリガID
msSendDelayuint32_tイベント送信での遅延時間(ミリ秒)イベント送信での遅延時間、送信オフセット、送信周期、送信最低保証間隔は、それぞれ以下の値を組み合わせて表現します。
【イベント送信での遅延時間】 msSendDelay、usSendDelay
【送信オフセット】 msSendOffset、usSendOffset
【送信周期】 msSendCycle、usSendCycle
【送信最低保証間隔】 usMinTransInterval、usMinTransInterval
例えば、送信オフセットに12.345ms(12msと345us)を設定する場合、msSendOffsetが12、usSendOffsetが345となります。
msSendOffsetuint32_t送信オフセット(ミリ秒)
msSendCycleuint32_t送信周期(ミリ秒)
msMinTransIntervaluint32_t送信最低保証間隔(ミリ秒)
usSendDelayuint16_tイベント送信での遅延時間(マイクロ秒)
usSendOffsetuint16_t送信オフセット(マイクロ秒)
usSendCycleuint16_t送信周期(マイクロ秒)
usMinTransIntervaluint16_t送信最低保証間隔(マイクロ秒)
SendCounteruint16_t送信回数0を設定した場合、送信回数は無制限になります。
Reserved2uint8_t [2]予約領域
FrameStMPXCANFrame送信フレーム情報
Incrementuint8_t [64]インクリメント有無配列の要素番号0~63が、データのD1~D64にそれぞれ対応します。
設定値については「インクリメント有無」を参照してください。

StMPXCANDirect

StMPXCANDirect構造体(ダイレクト送信情報)のメンバは、以下の通りです。

変数名型名意味合い
FrameTypeStMPXCANFrameTypeフレーム属性情報
FrameStMPXCANFrame送信フレーム情報

StMPXCANReplayLog

StMPXCANReplayLog構造体(ログ再生送信情報)のメンバは、以下の通りです。

変数名型名意味合い備考
mSecuint32_tタイムスタンプ(ミリ秒)タイムスタンプは、mSecとuSecの値を組み合わせて表現します。
例えば12.345ms(12msと345us)の場合、mSecが12、uSecが345となります。
uSecuint16_tタイムスタンプ(マイクロ秒)
IDuint32_tID情報ビットフィールドによる構造体です(詳細は「ID」を参照)。
DLuint8_tデータ長(DL)ビットフィールドによる構造体です(詳細は「DL」を参照)。
FrameTypeuint8_tフレーム属性情報ビットフィールドによる構造体です(詳細は「FrameType」を参照)。
Datauint8_t [64]データ(D1~D64)配列の要素番号0~63が、データのD1~D64にそれぞれ対応します。

補足情報

ビットフィールド構造体

LogType

LogTypeは、uint8_t型のビットフィールドによる構造体となっています。
メンバは以下の通りです。

変数名ビット数意味合い備考
Type6ログ種別値の意味合いについては「ログ種別」を参照してください。
Dir1方向値の意味合いについては「ログ方向」を参照してください。
Error1エラーフラグ値の意味合いについては「エラーフラグ」を参照してください。

DL

DLは、uint8_t型のビットフィールドによる構造体となっています。
メンバは以下の通りです。

変数名ビット数意味合い備考
NotUsed4未使用
DLC4データレングスコード(DLC)データレングスコードとデータ長の関係については「データレングスコードとデータ長」を参照してください。

ID

IDは、uint32_t型のビットフィールドによる構造体となっています。
メンバは以下の通りです。

変数名ビット数意味合い備考
ID29CAN ID(標準IDまたは拡張ID)標準IDの場合は、下位11ビット(ビット10~ビット0)にセットされます。
Reserved1予約領域
RTR1リモート送信要求(RTR)値の意味合いについては「リモート送信要求」を参照してください。
IDE1IDフォーマット(IDE)値の意味合いについては「IDフォーマット」を参照してください。

FrameType

FrameTypeは、uint8_t型のビットフィールドによる構造体となっています。
メンバは以下の通りです。

変数名ビット数意味合い備考
ErrorPassive1エラーの振る舞い設定値については「エラーの振る舞い」を参照してください。
BRS1ビットレートスイッチ(BRS)設定値については「ビットレートスイッチ」を参照してください。
FDF1FDフォーマット(FDF)設定値については「FDフォーマット」を参照してください。
Terminator1最終フレーム判定設定値については「最終フレーム判定」を参照してください。
Reserved4未使用(予約領域)

データレングスコードとデータ長

データレングスコード(DLC)とデータ長(DL)の関係は以下の通りです。

データレングスコードデータ長
0 (0x0)0
1 (0x1)1
2 (0x2)2
3 (0x3)3
4 (0x4)4
5 (0x5)5
6 (0x6)6
7 (0x7)7
8 (0x8)8
9 (0x9)12
10 (0xA)16
11 (0xB)20
12 (0xC)24
13 (0xD)32
14 (0xE)48
15 (0xF)64