工場診断 - プラットフォーム

このモジュールには、診断機能のプラットフォーム抽象化が含まれています。

概要

列挙型

otGpioMode{
  OT_GPIO_MODE_INPUT = 0,
  OT_GPIO_MODE_OUTPUT = 1
}
enum
gpio モードを定義します。

関数

otPlatDiagAlarmCallback(otInstance *aInstance)
void
アラーム イベントを処理します。
otPlatDiagChannelSet(uint8_t aChannel)
void
工場出荷時診断に使用するチャネルを設定します。
otPlatDiagGpioGet(uint32_t aGpio, bool *aValue)
gpio 値を取得します。
otPlatDiagGpioGetMode(uint32_t aGpio, otGpioMode *aMode)
gpio モードを取得します。
otPlatDiagGpioSet(uint32_t aGpio, bool aValue)
gpio 値を設定します。
otPlatDiagGpioSetMode(uint32_t aGpio, otGpioMode aMode)
gpio モードを設定します。
otPlatDiagModeGet(void)
bool
出荷時診断モードが有効かどうかを示します。
otPlatDiagModeSet(bool aMode)
void
出荷時診断モードを有効または無効にします。
otPlatDiagProcess(otInstance *aInstance, uint8_t aArgsLength, char *aArgs[], char *aOutput, size_t aOutputMaxLen)
工場出荷時診断のコマンドラインを処理します。
otPlatDiagRadioGetPowerSettings(otInstance *aInstance, uint8_t aChannel, int16_t *aTargetPower, int16_t *aActualPower, uint8_t *aRawPowerSetting, uint16_t *aRawPowerSettingLength)
指定されたチャネルの電源設定を取得します。
otPlatDiagRadioGetRawPowerSetting(otInstance *aInstance, uint8_t *aRawPowerSetting, uint16_t *aRawPowerSettingLength)
診断モジュールの無線通信の未加工電力の設定を取得します。
otPlatDiagRadioRawPowerSettingEnable(otInstance *aInstance, bool aEnable)
otPlatDiagRadioSetRawPowerSetting() によって設定された未加工電力設定を使用するために、プラットフォーム レイヤを有効または無効にします。
otPlatDiagRadioReceived(otInstance *aInstance, otRadioFrame *aFrame, otError aError)
void
受信した無線フレームを処理します。
otPlatDiagRadioSetRawPowerSetting(otInstance *aInstance, const uint8_t *aRawPowerSetting, uint16_t aRawPowerSettingLength)
診断モジュールの無線通信の未加工電力の設定を設定します。
otPlatDiagRadioTransmitCarrier(otInstance *aInstance, bool aEnable)
連続的なキャリア波を送信するためのプラットフォーム レイヤの開始/停止。
otPlatDiagRadioTransmitStream(otInstance *aInstance, bool aEnable)
キャラクターのストリームを送信するプラットフォーム レイヤを開始/停止する。
otPlatDiagTxPowerSet(int8_t aTxPower)
void
工場出荷時診断に使用する送信電力を設定します。

列挙型

otGpioMode

 otGpioMode

gpio モードを定義します。

プロパティ
OT_GPIO_MODE_INPUT

プル抵抗のない入力モード。

OT_GPIO_MODE_OUTPUT

出力モード。

関数

otPlatDiagAlarmCallback

void otPlatDiagAlarmCallback(
  otInstance *aInstance
)

アラーム イベントを処理します。

詳細
パラメータ
[in] aInstance
現在のリクエストの OpenThread インスタンス。

otPlatDiagChannelSet

void otPlatDiagChannelSet(
  uint8_t aChannel
)

工場出荷時診断に使用するチャネルを設定します。

詳細
パラメータ
[in] aChannel
チャネルの値。

otPlatDiagGpioGet

otError otPlatDiagGpioGet(
  uint32_t aGpio,
  bool *aValue
)

gpio 値を取得します。

詳細
パラメータ
[in] aGpio
gpio 番号。
[out] aValue
gpio 値を配置するポインタ。
戻り値
OT_ERROR_NONE
gpio 値を取得しました。
OT_ERROR_FAILED
gpio 値の取得中にプラットフォーム エラーが発生しました。
OT_ERROR_INVALID_ARGS
aGpio がサポートされていないか、aValue が NULL です。
OT_ERROR_INVALID_STATE
診断モードが有効になっていないか、aGpio が入力として設定されていません。
OT_ERROR_NOT_IMPLEMENTED
この関数はプラットフォームに実装または構成されていません。

otPlatDiagGpioGetMode

otError otPlatDiagGpioGetMode(
  uint32_t aGpio,
  otGpioMode *aMode
)

gpio モードを取得します。

詳細
パラメータ
[in] aGpio
gpio 番号。
[out] aMode
gpio モードを配置するポインタ。
戻り値
OT_ERROR_NONE
gpio モードを取得しました。
OT_ERROR_FAILED
プラットフォームから返されたモードが OpenThread に実装されていないか、gpio モードの取得中にプラットフォーム エラーが発生しました。
OT_ERROR_INVALID_ARGS
aGpio がサポートされていないか、aMode が NULL です。
OT_ERROR_INVALID_STATE
診断モードを有効にできませんでした。
OT_ERROR_NOT_IMPLEMENTED
この関数はプラットフォームに実装または構成されていません。

otPlatDiagGpioSet

otError otPlatDiagGpioSet(
  uint32_t aGpio,
  bool aValue
)

gpio 値を設定します。

詳細
パラメータ
[in] aGpio
gpio 番号。
[in] aValue
gpio を高レベルに設定する場合は true を、そうでない場合は false を指定します。
戻り値
OT_ERROR_NONE
gpio が正常に設定されました。
OT_ERROR_FAILED
gpio の設定中にプラットフォーム エラーが発生しました。
OT_ERROR_INVALID_ARGS
aGpio はサポートされていません。
OT_ERROR_INVALID_STATE
診断モードが有効になっていないか、aGpio が出力として設定されていません。
OT_ERROR_NOT_IMPLEMENTED
この関数はプラットフォームに実装または構成されていません。

otPlatDiagGpioSetMode

otError otPlatDiagGpioSetMode(
  uint32_t aGpio,
  otGpioMode aMode
)

gpio モードを設定します。

詳細
パラメータ
[in] aGpio
gpio 番号。
[out] aMode
gpio モード。
戻り値
OT_ERROR_NONE
gpio モードを設定しました。
OT_ERROR_FAILED
gpio モードの設定中にプラットフォーム エラーが発生しました。
OT_ERROR_INVALID_ARGS
aGpio または aMode はサポートされていません。
OT_ERROR_INVALID_STATE
診断モードを有効にできませんでした。
OT_ERROR_NOT_IMPLEMENTED
この関数はプラットフォームに実装または構成されていません。

otPlatDiagModeGet

bool otPlatDiagModeGet(
  void
)

出荷時診断モードが有効かどうかを示します。

詳細
戻り値
出荷時診断モードが有効になっている場合は TRUE、それ以外の場合は FALSE です。

otPlatDiagModeSet

void otPlatDiagModeSet(
  bool aMode
)

出荷時診断モードを有効または無効にします。

詳細
パラメータ
[in] aMode
診断モードを有効にする場合は TRUE、それ以外の場合は FALSE です。

otPlatDiagProcess

otError otPlatDiagProcess(
  otInstance *aInstance,
  uint8_t aArgsLength,
  char *aArgs[],
  char *aOutput,
  size_t aOutputMaxLen
)

工場出荷時診断のコマンドラインを処理します。

この関数の出力(aOutput に書き込まれるコンテンツ)は \0 で終了しなければならず、\0 は出力バッファ内にあります。

詳細
パラメータ
[in] aInstance
現在のリクエストの OpenThread インスタンス。
[in] aArgsLength
aArgs の引数の数。
[in] aArgs
診断コマンドラインの引数。
[out] aOutput
診断の実行結果。
[in] aOutputMaxLen
出力バッファサイズ。
戻り値
OT_ERROR_INVALID_ARGS
このコマンドはサポートされていますが、無効な引数が指定されています。
OT_ERROR_NONE
コマンドが正常に完了しました。
OT_ERROR_INVALID_COMMAND
コマンドが無効であるかサポートされていません。

otPlatDiagRadioGetPowerSettings

otError otPlatDiagRadioGetPowerSettings(
  otInstance *aInstance,
  uint8_t aChannel,
  int16_t *aTargetPower,
  int16_t *aActualPower,
  uint8_t *aRawPowerSetting,
  uint16_t *aRawPowerSettingLength
)

指定されたチャネルの電源設定を取得します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスの構造。
[in] aChannel
ラジオ チャンネル。
[out] aTargetPower
ターゲット パワー(0.01 dBm)
[out] aActualPower
実際の電力は 0.01 dBm です。
[out] aRawPowerSetting
生電力設定のバイト配列へのポインタ。
[in,out] aRawPowerSettingLength
入力時、aRawPowerSetting のサイズへのポインタ。出力では、電力設定データ自体の長さへのポインタ。
戻り値
OT_ERROR_NONE
目標のパワーを手に入れました。
OT_ERROR_INVALID_ARGS
aChannel が無効です。aActualPoweraRawPowerSettingaRawPowerSettingLength が NULL か、短すぎます。
OT_ERROR_NOT_FOUND
aChannel の電源設定が見つかりませんでした。
OT_ERROR_NOT_IMPLEMENTED
このメソッドは実装されていません。

otPlatDiagRadioGetRawPowerSetting

otError otPlatDiagRadioGetRawPowerSetting(
  otInstance *aInstance,
  uint8_t *aRawPowerSetting,
  uint16_t *aRawPowerSettingLength
)

診断モジュールの無線通信の未加工電力の設定を取得します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスの構造。
[out] aRawPowerSetting
生電力設定のバイト配列へのポインタ。
[in,out] aRawPowerSettingLength
入力時、aRawPowerSetting のサイズへのポインタ。出力では、電力設定データ自体の長さへのポインタ。
戻り値
OT_ERROR_NONE
電力の設定が正常に設定されました。
OT_ERROR_INVALID_ARGS
aRawPowerSetting または aRawPowerSettingLength が NULL か、短すぎます。
OT_ERROR_NOT_FOUND
省電力モードが設定されていません。
OT_ERROR_NOT_IMPLEMENTED
このメソッドは実装されていません。

otPlatDiagRadioRawPowerSettingEnable

otError otPlatDiagRadioRawPowerSettingEnable(
  otInstance *aInstance,
  bool aEnable
)

otPlatDiagRadioSetRawPowerSetting() によって設定された未加工電力設定を使用するために、プラットフォーム レイヤを有効または無効にします。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスの構造。
[in] aEnable
電力の電力設定を有効にする場合は TRUE を、無効にする場合は FALSE を指定します。
戻り値
OT_ERROR_NONE
電力の電力設定を有効または無効にしました。
OT_ERROR_NOT_IMPLEMENTED
このメソッドは実装されていません。

otPlatDiagRadioReceived

void otPlatDiagRadioReceived(
  otInstance *aInstance,
  otRadioFrame *aFrame,
  otError aError
)

受信した無線フレームを処理します。

詳細
パラメータ
[in] aInstance
現在のリクエストの OpenThread インスタンス。
[in] aFrame
受信した無線フレーム。
[in] aError
受信した無線フレームのステータス。

otPlatDiagRadioSetRawPowerSetting

otError otPlatDiagRadioSetRawPowerSetting(
  otInstance *aInstance,
  const uint8_t *aRawPowerSetting,
  uint16_t aRawPowerSettingLength
)

診断モジュールの無線通信の未加工電力の設定を設定します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスの構造。
[in] aRawPowerSetting
生電力設定のバイト配列へのポインタ。
[in] aRawPowerSettingLength
aRawPowerSetting の長さ。
戻り値
OT_ERROR_NONE
電力の設定が正常に設定されました。
OT_ERROR_INVALID_ARGS
aRawPowerSetting が NULL か、aRawPowerSettingLength が長すぎる。
OT_ERROR_NOT_IMPLEMENTED
このメソッドは実装されていません。

otPlatDiagRadioTransmitCarrier

otError otPlatDiagRadioTransmitCarrier(
  otInstance *aInstance,
  bool aEnable
)

連続的なキャリア波を送信するためのプラットフォーム レイヤの開始/停止。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスの構造。
[in] aEnable
連続したキャリア波を送信するためにプラットフォーム レイヤを有効にする場合は TRUE を、無効にする場合は FALSE を指定します。
戻り値
OT_ERROR_NONE
有効/無効になりました。
OT_ERROR_INVALID_STATE
無線通信が受信状態ではありませんでした。
OT_ERROR_NOT_IMPLEMENTED
このメソッドは実装されていません。

otPlatDiagRadioTransmitStream

otError otPlatDiagRadioTransmitStream(
  otInstance *aInstance,
  bool aEnable
)

キャラクターのストリームを送信するプラットフォーム レイヤを開始/停止する。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスの構造。
[in] aEnable
ストリームを送信するプラットフォーム レイヤを無効にするには TRUE を、無効にするには FALSE を指定します。
戻り値
OT_ERROR_NONE
有効/無効にしました。
OT_ERROR_INVALID_STATE
無線通信が受信状態ではありませんでした。
OT_ERROR_NOT_IMPLEMENTED
この関数は実装されていません。

otPlatDiagTxPowerSet

void otPlatDiagTxPowerSet(
  int8_t aTxPower
)

工場出荷時診断に使用する送信電力を設定します。

詳細
パラメータ
[in] aTxPower
送信電力値。

関連情報

OpenThread API リファレンスのトピックは、GitHub で入手できるソースコードに由来しています。 詳細について、またはドキュメントへの投稿については、リソースをご覧ください。