Diagnóstico de fábrica: Plataforma

En este módulo, se incluye la abstracción de la plataforma para las funciones de diagnóstico.

Resumen

Enumeraciones

otGpioMode{
  OT_GPIO_MODE_INPUT = 0,
  OT_GPIO_MODE_OUTPUT = 1
}
enum
Define los modos gpio.

remotas

otPlatDiagAlarmCallback(otInstance *aInstance)
void
Procesa el evento de alarma.
otPlatDiagChannelSet(uint8_t aChannel)
void
Configura el canal que se usará para el diagnóstico de fábrica.
otPlatDiagGpioGet(uint32_t aGpio, bool *aValue)
Obtiene el valor gpio.
otPlatDiagGpioGetMode(uint32_t aGpio, otGpioMode *aMode)
Obtiene el modo gpio.
otPlatDiagGpioSet(uint32_t aGpio, bool aValue)
Establece el valor gpio.
otPlatDiagGpioSetMode(uint32_t aGpio, otGpioMode aMode)
Establece el modo gpio.
otPlatDiagModeGet(void)
bool
Indica si el modo de diagnóstico de fábrica está habilitado o no.
otPlatDiagModeSet(bool aMode)
void
Habilita o inhabilita el modo de diagnóstico de fábrica.
otPlatDiagProcess(otInstance *aInstance, uint8_t aArgsLength, char *aArgs[], char *aOutput, size_t aOutputMaxLen)
Procesa una línea de comandos de diagnóstico de fábrica.
otPlatDiagRadioGetPowerSettings(otInstance *aInstance, uint8_t aChannel, int16_t *aTargetPower, int16_t *aActualPower, uint8_t *aRawPowerSetting, uint16_t *aRawPowerSettingLength)
Obtén la configuración de energía para el canal determinado.
otPlatDiagRadioGetRawPowerSetting(otInstance *aInstance, uint8_t *aRawPowerSetting, uint16_t *aRawPowerSettingLength)
Obtén la configuración de radio sin procesar para el módulo de diagnóstico.
otPlatDiagRadioRawPowerSettingEnable(otInstance *aInstance, bool aEnable)
Habilita o inhabilita la capa de la plataforma para usar la configuración de energía sin procesar establecida por otPlatDiagRadioSetRawPowerSetting().
otPlatDiagRadioReceived(otInstance *aInstance, otRadioFrame *aFrame, otError aError)
void
Procesa la trama de radio recibida.
otPlatDiagRadioSetRawPowerSetting(otInstance *aInstance, const uint8_t *aRawPowerSetting, uint16_t aRawPowerSettingLength)
Establece la configuración de potencia sin procesar de la radio para el módulo de diagnóstico.
otPlatDiagRadioTransmitCarrier(otInstance *aInstance, bool aEnable)
Inicia y detén la capa de la plataforma para transmitir ondas continuas del operador.
otPlatDiagRadioTransmitStream(otInstance *aInstance, bool aEnable)
Inicia/detiene la capa de la plataforma para transmitir la transmisión de caracteres.
otPlatDiagTxPowerSet(int8_t aTxPower)
void
Configura la potencia de transmisión para utilizar en los diagnósticos de fábrica.

Enumeraciones

otGpioMode

 otGpioMode

Define los modos gpio.

Propiedades
OT_GPIO_MODE_INPUT

Modo de entrada sin resistencia de extracción.

OT_GPIO_MODE_OUTPUT

Modo de salida.

remotas

otPlatDiagAlarmCallback

void otPlatDiagAlarmCallback(
  otInstance *aInstance
)

Procesa el evento de alarma.

Detalles
Parámetros
[in] aInstance
La instancia de OpenThread para la solicitud actual.

otPlatDiagChannelSet

void otPlatDiagChannelSet(
  uint8_t aChannel
)

Configura el canal que se usará para el diagnóstico de fábrica.

Detalles
Parámetros
[in] aChannel
Es el valor del canal.

otPlatDiagGpioGet

otError otPlatDiagGpioGet(
  uint32_t aGpio,
  bool *aValue
)

Obtiene el valor gpio.

Detalles
Parámetros
[in] aGpio
Es el número gpio.
[out] aValue
Un puntero donde se coloca el valor gpio.
Valores que se muestran
OT_ERROR_NONE
Se obtuvo correctamente el valor gpio.
OT_ERROR_FAILED
Se produjo un error de plataforma mientras se obtenía el valor gpio.
OT_ERROR_INVALID_ARGS
aGpio no es compatible o aValue es NULL.
OT_ERROR_INVALID_STATE
El modo de diagnóstico no estaba habilitado o aGpio no está configurado como entrada.
OT_ERROR_NOT_IMPLEMENTED
Esta función no está implementada ni configurada en la plataforma.

otPlatDiagGpioGetMode

otError otPlatDiagGpioGetMode(
  uint32_t aGpio,
  otGpioMode *aMode
)

Obtiene el modo gpio.

Detalles
Parámetros
[in] aGpio
Es el número gpio.
[out] aMode
Un puntero donde se coloca el modo gpio.
Valores que se muestran
OT_ERROR_NONE
Se accedió correctamente al modo gpio.
OT_ERROR_FAILED
El modo que muestra la plataforma no se implementa en OpenThread o se produjo un error de plataforma durante la obtención del modo gpio.
OT_ERROR_INVALID_ARGS
aGpio no es compatible o aMode es NULL.
OT_ERROR_INVALID_STATE
No se habilitó el modo de diagnóstico.
OT_ERROR_NOT_IMPLEMENTED
Esta función no está implementada ni configurada en la plataforma.

otPlatDiagGpioSet

otError otPlatDiagGpioSet(
  uint32_t aGpio,
  bool aValue
)

Establece el valor gpio.

Detalles
Parámetros
[in] aGpio
Es el número gpio.
[in] aValue
true para establecer el valor de gpio en alto nivel o false de lo contrario.
Valores que se muestran
OT_ERROR_NONE
Se configuró correctamente el gpio.
OT_ERROR_FAILED
Se produjo un error de plataforma al configurar gpio.
OT_ERROR_INVALID_ARGS
aGpio no es compatible.
OT_ERROR_INVALID_STATE
El modo de diagnóstico no estaba habilitado o aGpio no se configuró como resultado.
OT_ERROR_NOT_IMPLEMENTED
Esta función no está implementada ni configurada en la plataforma.

otPlatDiagGpioSetMode

otError otPlatDiagGpioSetMode(
  uint32_t aGpio,
  otGpioMode aMode
)

Establece el modo gpio.

Detalles
Parámetros
[in] aGpio
Es el número gpio.
[out] aMode
El modo gpio.
Valores que se muestran
OT_ERROR_NONE
Se configuró correctamente el modo gpio.
OT_ERROR_FAILED
Se produjo un error de plataforma al configurar el modo gpio.
OT_ERROR_INVALID_ARGS
No se admiten aGpio ni aMode.
OT_ERROR_INVALID_STATE
No se habilitó el modo de diagnóstico.
OT_ERROR_NOT_IMPLEMENTED
Esta función no está implementada ni configurada en la plataforma.

otPlatDiagModeGet

bool otPlatDiagModeGet(
  void
)

Indica si el modo de diagnóstico de fábrica está habilitado o no.

Detalles
Qué muestra
TRUE si el modo de diagnóstico de fábrica está habilitado, de lo contrario, FALSE

otPlatDiagModeSet

void otPlatDiagModeSet(
  bool aMode
)

Habilita o inhabilita el modo de diagnóstico de fábrica.

Detalles
Parámetros
[in] aMode
TRUE para habilitar el modo de diagnóstico, FALSE de lo contrario.

otPlatDiagProcess

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

Procesa una línea de comandos de diagnóstico de fábrica.

El resultado de esta función (el contenido escrito en aOutput) DEBE terminar con \0, y \0 está dentro del búfer de salida.

Detalles
Parámetros
[in] aInstance
La instancia de OpenThread para la solicitud actual.
[in] aArgsLength
La cantidad de argumentos en aArgs.
[in] aArgs
Los argumentos de la línea de comandos de diagnóstico.
[out] aOutput
El resultado de la ejecución del diagnóstico.
[in] aOutputMaxLen
Tamaño del búfer de salida.
Valores que se muestran
OT_ERROR_INVALID_ARGS
Se admite el comando, pero se proporcionaron argumentos no válidos.
OT_ERROR_NONE
El comando se procesó correctamente.
OT_ERROR_INVALID_COMMAND
El comando no es válido o no se admite.

otPlatDiagRadioGetPowerSettings

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

Obtén la configuración de energía para el canal determinado.

Detalles
Parámetros
[in] aInstance
Estructura de instancias de OpenThread
[in] aChannel
El canal de radio
[out] aTargetPower
La potencia objetivo en 0.01 dBm.
[out] aActualPower
La potencia real en 0.01 dBm.
[out] aRawPowerSetting
Un puntero del array de bytes para la configuración de la potencia sin procesar.
[in,out] aRawPowerSettingLength
En la entrada, un puntero del tamaño de aRawPowerSetting. En la salida, un puntero hacia la longitud de los datos de configuración de energía sin procesar.
Valores que se muestran
OT_ERROR_NONE
Conseguiste correctamente la potencia objetivo.
OT_ERROR_INVALID_ARGS
El valor de aChannel no es válido, aActualPower, aRawPowerSetting o aRawPowerSettingLength es nulo o es demasiado corto.
OT_ERROR_NOT_FOUND
No se encontró la configuración de energía de aChannel.
OT_ERROR_NOT_IMPLEMENTED
Este método no se implementó.

otPlatDiagRadioGetRawPowerSetting

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

Obtén la configuración de radio sin procesar para el módulo de diagnóstico.

Detalles
Parámetros
[in] aInstance
Estructura de instancias de OpenThread
[out] aRawPowerSetting
Un puntero del array de bytes para la configuración de la potencia sin procesar.
[in,out] aRawPowerSettingLength
En la entrada, un puntero del tamaño de aRawPowerSetting. En la salida, un puntero hacia la longitud de los datos de configuración de energía sin procesar.
Valores que se muestran
OT_ERROR_NONE
Se estableció correctamente la configuración de energía bruta.
OT_ERROR_INVALID_ARGS
El valor de aRawPowerSetting o aRawPowerSettingLength es NULL o demasiado corto.
OT_ERROR_NOT_FOUND
No se estableció la configuración de energía bruta.
OT_ERROR_NOT_IMPLEMENTED
Este método no se implementó.

otPlatDiagRadioRawPowerSettingEnable

otError otPlatDiagRadioRawPowerSettingEnable(
  otInstance *aInstance,
  bool aEnable
)

Habilita o inhabilita la capa de la plataforma para usar la configuración de energía sin procesar establecida por otPlatDiagRadioSetRawPowerSetting().

Detalles
Parámetros
[in] aInstance
Estructura de instancias de OpenThread
[in] aEnable
TRUE para habilitar o FALSE para inhabilitar la configuración de energía bruta.
Valores que se muestran
OT_ERROR_NONE
Se habilitó o inhabilitó correctamente la configuración de energía sin procesar.
OT_ERROR_NOT_IMPLEMENTED
Este método no se implementó.

otPlatDiagRadioReceived

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

Procesa la trama de radio recibida.

Detalles
Parámetros
[in] aInstance
La instancia de OpenThread para la solicitud actual.
[in] aFrame
Es la trama de radio recibida.
[in] aError
El estado de la trama de radio recibido.

otPlatDiagRadioSetRawPowerSetting

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

Establece la configuración de potencia sin procesar de la radio para el módulo de diagnóstico.

Detalles
Parámetros
[in] aInstance
Estructura de instancias de OpenThread
[in] aRawPowerSetting
Un puntero del array de bytes para la configuración de la potencia sin procesar.
[in] aRawPowerSettingLength
La longitud de aRawPowerSetting.
Valores que se muestran
OT_ERROR_NONE
Se estableció correctamente la configuración de energía bruta.
OT_ERROR_INVALID_ARGS
El valor de aRawPowerSetting es NULL o de aRawPowerSettingLength es demasiado largo.
OT_ERROR_NOT_IMPLEMENTED
Este método no se implementó.

otPlatDiagRadioTransmitCarrier

otError otPlatDiagRadioTransmitCarrier(
  otInstance *aInstance,
  bool aEnable
)

Inicia y detén la capa de la plataforma para transmitir ondas continuas del operador.

Detalles
Parámetros
[in] aInstance
Estructura de instancias de OpenThread
[in] aEnable
TRUE para habilitar o FALSE para inhabilitar la capa de la plataforma para transmitir ondas continuas del operador.
Valores que se muestran
OT_ERROR_NONE
Se habilitó o inhabilitó correctamente .
OT_ERROR_INVALID_STATE
La radio no estaba en estado de recepción.
OT_ERROR_NOT_IMPLEMENTED
Este método no se implementó.

otPlatDiagRadioTransmitStream

otError otPlatDiagRadioTransmitStream(
  otInstance *aInstance,
  bool aEnable
)

Inicia/detiene la capa de la plataforma para transmitir la transmisión de caracteres.

Detalles
Parámetros
[in] aInstance
Estructura de instancias de OpenThread
[in] aEnable
TRUE para habilitar o FALSE para inhabilitar la capa de la plataforma para transmitir transmisión.
Valores que se muestran
OT_ERROR_NONE
Se habilitó o inhabilitó correctamente.
OT_ERROR_INVALID_STATE
La radio no estaba en estado de recepción.
OT_ERROR_NOT_IMPLEMENTED
No se implementó esta función.

otPlatDiagTxPowerSet

void otPlatDiagTxPowerSet(
  int8_t aTxPower
)

Configura la potencia de transmisión para utilizar en los diagnósticos de fábrica.

Detalles
Parámetros
[in] aTxPower
El valor de la potencia de transmisión.

Recursos

Los temas de referencia de la API de OpenThread se originan a partir del código fuente, disponible en GitHub. Para obtener más información o contribuir a nuestra documentación, consulta Recursos.