O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.

Operação

Este módulo inclui a abstração da plataforma para operações de rádio.

Resumo

Funções

otPlatDiagRadioReceiveDone ( otInstance *aInstance, otRadioFrame *aFrame, otError aError)
void
O driver de rádio chama este método para notificar o módulo de diagnóstico OpenThread de um quadro recebido.
otPlatDiagRadioTransmitDone ( otInstance *aInstance, otRadioFrame *aFrame, otError aError)
void
O driver de rádio chama este método para notificar o módulo de diagnóstico OpenThread que a transmissão foi concluída.
otPlatRadioAddSrcMatchExtEntry ( otInstance *aInstance, const otExtAddress *aExtAddress)
Adicione um endereço estendido à tabela de correspondência de endereço de origem.
otPlatRadioAddSrcMatchShortEntry ( otInstance *aInstance, otShortAddress aShortAddress)
Adicione um endereço curto à tabela de correspondência de endereços de origem.
otPlatRadioClearSrcMatchExtEntries ( otInstance *aInstance)
void
Limpe todos os endereços estendidos / longos da tabela de correspondência de endereço de origem.
otPlatRadioClearSrcMatchExtEntry ( otInstance *aInstance, const otExtAddress *aExtAddress)
Remova um endereço estendido da tabela de correspondência de endereço de origem.
otPlatRadioClearSrcMatchShortEntries ( otInstance *aInstance)
void
Limpe todos os endereços curtos da tabela de correspondência de endereços de origem.
otPlatRadioClearSrcMatchShortEntry ( otInstance *aInstance, otShortAddress aShortAddress)
Remova um endereço curto da tabela de correspondência de endereço de origem.
otPlatRadioConfigureEnhAckProbing ( otInstance *aInstance, otLinkMetrics aLinkMetrics, otShortAddress aShortAddress, const otExtAddress *aExtAddress)
Habilite / desabilite ou atualize o Enhanced-ACK Based Probing no rádio para um iniciador específico.
otPlatRadioDisable ( otInstance *aInstance)
Desative o rádio.
otPlatRadioEnable ( otInstance *aInstance)
Habilite o rádio.
otPlatRadioEnableCsl ( otInstance *aInstance, uint32_t aCslPeriod, otShortAddress aShortAddr, const otExtAddress *aExtAddr)
Ative ou desative o receptor CSL.
otPlatRadioEnableSrcMatch ( otInstance *aInstance, bool aEnable)
void
Habilita / desabilita o recurso de correspondência de endereço de origem.
otPlatRadioEnergyScan ( otInstance *aInstance, uint8_t aScanChannel, uint16_t aScanDuration)
Comece a seqüência de varredura de energia no rádio.
otPlatRadioEnergyScanDone ( otInstance *aInstance, int8_t aEnergyScanMaxRssi)
void
O driver de rádio chama este método para notificar o OpenThread de que a varredura de energia foi concluída.
otPlatRadioGetCoexMetrics ( otInstance *aInstance, otRadioCoexMetrics *aCoexMetrics)
Obtenha as métricas de coexistência de rádio.
otPlatRadioGetCslAccuracy ( otInstance *aInstance)
uint8_t
Obtenha a precisão atual, em unidades de ± ppm, do relógio usado para agendar operações CSL.
otPlatRadioGetCslClockUncertainty ( otInstance *aInstance)
uint8_t
Obtenha a incerteza atual, em unidades de 10 us, do relógio usado para programar operações CSL.
otPlatRadioGetPreferredChannelMask ( otInstance *aInstance)
uint32_t
Obtenha a máscara de canal preferencial de rádio que o dispositivo prefere formar.
otPlatRadioGetRegion ( otInstance *aInstance, uint16_t *aRegionCode)
Obtenha o código da região.
otPlatRadioGetRssi ( otInstance *aInstance)
int8_t
Obtenha a medição RSSI mais recente.
otPlatRadioGetState ( otInstance *aInstance)
Obtenha o estado atual do rádio.
otPlatRadioGetSupportedChannelMask ( otInstance *aInstance)
uint32_t
Obtenha a máscara de canal com suporte de rádio em que o dispositivo pode estar ligado.
otPlatRadioGetTransmitBuffer ( otInstance *aInstance)
Obtenha o buffer de quadro de transmissão de rádio.
otPlatRadioIsCoexEnabled ( otInstance *aInstance)
bool
Verifique se o rádio coex está habilitado ou não.
otPlatRadioIsEnabled ( otInstance *aInstance)
bool
Verifique se o rádio está habilitado ou não.
otPlatRadioReceive ( otInstance *aInstance, uint8_t aChannel)
Faça a transição do rádio de Dormir para Receber (ligue o rádio).
otPlatRadioReceiveAt ( otInstance *aInstance, uint8_t aChannel, uint32_t aStart, uint32_t aDuration)
Agende uma janela de recepção de rádio em um horário e duração específicos.
otPlatRadioReceiveDone ( otInstance *aInstance, otRadioFrame *aFrame, otError aError)
void
O driver de rádio chama esse método para notificar o OpenThread de um quadro recebido.
otPlatRadioSetChannelMaxTransmitPower ( otInstance *aInstance, uint8_t aChannel, int8_t aMaxPower)
Defina a potência máxima de transmissão para um canal específico.
otPlatRadioSetCoexEnabled ( otInstance *aInstance, bool aEnabled)
Habilite o rádio coex.
otPlatRadioSetRegion ( otInstance *aInstance, uint16_t aRegionCode)
Defina o código da região.
otPlatRadioSleep ( otInstance *aInstance)
Faça a transição do rádio de Receber para Dormir (desligue o rádio).
otPlatRadioTransmit ( otInstance *aInstance, otRadioFrame *aFrame)
Comece a sequência de transmissão no rádio.
otPlatRadioTxDone ( otInstance *aInstance, otRadioFrame *aFrame, otRadioFrame *aAckFrame, otError aError)
void
O driver de rádio chama esta função para notificar o OpenThread que a operação de transmissão foi concluída, fornecendo o quadro transmitido e, se aplicável, o quadro de confirmação recebido.
otPlatRadioTxStarted ( otInstance *aInstance, otRadioFrame *aFrame)
void
O driver de rádio chama este método para notificar o OpenThread de que a transmissão foi iniciada.
otPlatRadioUpdateCslSampleTime ( otInstance *aInstance, uint32_t aCslSampleTime)
void
Atualize o tempo de amostra CSL no driver de rádio.

Funções

otPlatDiagRadioReceiveDone

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

O driver de rádio chama este método para notificar o módulo de diagnóstico OpenThread de um quadro recebido.

Esta função é usada quando o diagnóstico está habilitado.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
[in] aFrame
Um ponteiro para o quadro recebido ou NULL se a operação de recebimento falhar.
[in] aError
OT_ERROR_NONE quando recebeu com sucesso um quadro, OT_ERROR_ABORT quando a recepção foi abortada e um quadro não foi recebido, OT_ERROR_NO_BUFS quando um quadro não pôde ser recebido devido à falta de espaço no buffer rx.

otPlatDiagRadioTransmitDone

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

O driver de rádio chama este método para notificar o módulo de diagnóstico OpenThread que a transmissão foi concluída.

Esta função é usada quando o diagnóstico está habilitado.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
[in] aFrame
Um ponteiro para o quadro que foi transmitido.
[in] aError
OT_ERROR_NONE quando o quadro foi transmitido, OT_ERROR_CHANNEL_ACCESS_FAILURE tx não pôde ocorrer devido à atividade no canal, OT_ERROR_ABORT quando a transmissão foi abortada por outros motivos.

otPlatRadioAddSrcMatchExtEntry

otError otPlatRadioAddSrcMatchExtEntry(
  otInstance *aInstance,
  const otExtAddress *aExtAddress
)

Adicione um endereço estendido à tabela de correspondência de endereço de origem.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
[in] aExtAddress
O endereço estendido a ser adicionado armazenado na ordem de bytes little-endian.
Valores Retornados
OT_ERROR_NONE
Endereço estendido adicionado com sucesso à tabela de correspondências de origem.
OT_ERROR_NO_BUFS
Nenhuma entrada disponível na tabela de correspondência de origem.

otPlatRadioAddSrcMatchShortEntry

otError otPlatRadioAddSrcMatchShortEntry(
  otInstance *aInstance,
  otShortAddress aShortAddress
)

Adicione um endereço curto à tabela de correspondência de endereços de origem.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
[in] aShortAddress
O endereço curto a ser adicionado.
Valores Retornados
OT_ERROR_NONE
Endereço curto adicionado com sucesso à tabela de correspondências de origem.
OT_ERROR_NO_BUFS
Nenhuma entrada disponível na tabela de correspondência de origem.

otPlatRadioClearSrcMatchExtEntries

void otPlatRadioClearSrcMatchExtEntries(
  otInstance *aInstance
)

Limpe todos os endereços estendidos / longos da tabela de correspondência de endereço de origem.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.

otPlatRadioClearSrcMatchExtEntry

otError otPlatRadioClearSrcMatchExtEntry(
  otInstance *aInstance,
  const otExtAddress *aExtAddress
)

Remova um endereço estendido da tabela de correspondência de endereço de origem.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
[in] aExtAddress
O endereço estendido a ser removido é armazenado na ordem de bytes little-endian.
Valores Retornados
OT_ERROR_NONE
O endereço estendido foi removido com sucesso da tabela de correspondências de origem.
OT_ERROR_NO_ADDRESS
O endereço estendido não está na tabela de correspondência de endereço de origem.

otPlatRadioClearSrcMatchShortEntries

void otPlatRadioClearSrcMatchShortEntries(
  otInstance *aInstance
)

Limpe todos os endereços curtos da tabela de correspondência de endereços de origem.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.

otPlatRadioClearSrcMatchShortEntry

otError otPlatRadioClearSrcMatchShortEntry(
  otInstance *aInstance,
  otShortAddress aShortAddress
)

Remova um endereço curto da tabela de correspondência de endereço de origem.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
[in] aShortAddress
O endereço curto a ser removido.
Valores Retornados
OT_ERROR_NONE
Endereço curto removido com sucesso da tabela de correspondências de origem.
OT_ERROR_NO_ADDRESS
O endereço curto não está na tabela de correspondência de endereço de origem.

otPlatRadioConfigureEnhAckProbing

otError otPlatRadioConfigureEnhAckProbing(
  otInstance *aInstance,
  otLinkMetrics aLinkMetrics,
  otShortAddress aShortAddress,
  const otExtAddress *aExtAddress
)

Habilite / desabilite ou atualize o Enhanced-ACK Based Probing no rádio para um iniciador específico.

Após o Enhanced-ACK Based Probing ser configurado por um determinado Probing Initiator, o Enhanced-ACK enviado para esse nó deve incluir o IE específico do fornecedor contendo dados de métricas de link. Este método informa o rádio para iniciar / parar a coleta de dados de métricas de link e incluir IE específico do fornecedor que contém os dados em Enhanced-ACK enviados para esse iniciador de sondagem.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
[in] aLinkMetrics
Este parâmetro especifica quais métricas consultar. Por especificação 4.11.3.4.4.6, no máximo 2 métricas podem ser especificadas. A sondagem será desativado se aLinkMetrics é bit a bit 0.
[in] aShortAddr
O endereço curto do iniciador de sondagem.
[in] aExtAddr
O endereço de origem estendido do iniciador de sondagem. aExtAddr não deve ser NULL .
Valores Retornados
OT_ERROR_NONE
Configuração bem-sucedida da Probabilidade Baseada em ACK Avançado.
OT_ERROR_INVALID_ARGS
aExtAddress é NULL .
OT_ERROR_NOT_FOUND
O Iniciador indicado por aShortAddress não é encontrado ao tentar limpar.
OT_ERROR_NO_BUFS
Nenhum mais iniciador pode ser suportado.

otPlatRadioDisable

otError otPlatRadioDisable(
  otInstance *aInstance
)

Desative o rádio.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
Valores Retornados
OT_ERROR_NONE
Transição para desativada com sucesso.
OT_ERROR_INVALID_STATE
O rádio não estava no estado de hibernação.

otPlatRadioEnable

otError otPlatRadioEnable(
  otInstance *aInstance
)

Habilite o rádio.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
Valores Retornados
OT_ERROR_NONE
Ativado com sucesso.
OT_ERROR_FAILED
O rádio não pôde ser habilitado.

otPlatRadioEnableCsl

otError otPlatRadioEnableCsl(
  otInstance *aInstance,
  uint32_t aCslPeriod,
  otShortAddress aShortAddr,
  const otExtAddress *aExtAddr
)

Ative ou desative o receptor CSL.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
[in] aCslPeriod
Período CSL, 0 para desabilitar CSL.
[in] aShortAddr
O endereço de origem curto do par do receptor CSL.
[in] aExtAddr
O endereço de origem estendido do par do receptor CSL.
Valores Retornados
kErrorNotImplemented
O driver de rádio não suporta CSL.
kErrorFailed
Outros erros específicos da plataforma.
kErrorNone
CSL habilitado ou desabilitado com sucesso.

otPlatRadioEnableSrcMatch

void otPlatRadioEnableSrcMatch(
  otInstance *aInstance,
  bool aEnable
)

Habilita / desabilita o recurso de correspondência de endereço de origem.

O recurso de correspondência de endereço de origem controla como a camada de rádio decide o bit de "quadro pendente" para acks enviados em resposta a comandos de solicitação de dados de filhos.

Se desativado, a camada de rádio deve definir o "quadro pendente" em todos os acks para comandos de solicitação de dados.

Se ativada, a camada de rádio usa a tabela de correspondência de endereço de origem para determinar se deve definir ou limpar o bit de "quadro pendente" em uma confirmação para um comando de solicitação de dados.

A tabela de correspondência de endereço de origem fornece a lista de filhos para os quais há um quadro pendente. Um endereço curto ou um endereço estendido / longo pode ser adicionado à tabela de correspondência de endereço de origem.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
[in] aEnable
Ativar / desativar o recurso de correspondência de endereço de origem.

otPlatRadioEnergyScan

otError otPlatRadioEnergyScan(
  otInstance *aInstance,
  uint8_t aScanChannel,
  uint16_t aScanDuration
)

Comece a sequência de varredura de energia no rádio.

Esta função é usada quando o rádio fornece capacidade OT_RADIO_CAPS_ENERGY_SCAN.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
[in] aScanChannel
O canal para realizar a varredura de energia.
[in] aScanDuration
A duração, em milissegundos, do canal a ser varrido.
Valores Retornados
OT_ERROR_NONE
Varredura do canal iniciada com sucesso.
OT_ERROR_NOT_IMPLEMENTED
O rádio não suporta varredura de energia.

otPlatRadioEnergyScanDone

void otPlatRadioEnergyScanDone(
  otInstance *aInstance,
  int8_t aEnergyScanMaxRssi
)

O driver de rádio chama este método para notificar o OpenThread de que a varredura de energia foi concluída.

Esta função é usada quando o rádio fornece capacidade OT_RADIO_CAPS_ENERGY_SCAN.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
[in] aEnergyScanMaxRssi
O RSSI máximo encontrado no canal verificado.

otPlatRadioGetCoexMetrics

otError otPlatRadioGetCoexMetrics(
  otInstance *aInstance,
  otRadioCoexMetrics *aCoexMetrics
)

Obtenha as métricas de coexistência de rádio.

Esta função é usada quando o recurso OPENTHREAD_CONFIG_PLATFORM_RADIO_COEX_ENABLE está ativado.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
[out] aCoexMetrics
Um ponteiro para a estrutura das métricas de coexistência.
Valores Retornados
OT_ERROR_NONE
As métricas coex foram recuperadas com sucesso.
OT_ERROR_INVALID_ARGS
aCoexMetrics foi NULL.

otPlatRadioGetCslAccuracy

uint8_t otPlatRadioGetCslAccuracy(
  otInstance *aInstance
)

Obtenha a precisão atual, em unidades de ± ppm, do relógio usado para agendar operações CSL.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância OpenThread.
Devoluções
O atual desvio de programação CSL rx / tx, em unidades de ± ppm.

otPlatRadioGetCslClockUncertainty

uint8_t otPlatRadioGetCslClockUncertainty(
  otInstance *aInstance
)

Obtenha a incerteza atual, em unidades de 10 us, do relógio usado para programar operações CSL.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância OpenThread.
Devoluções
A incerteza atual do CSL Clock em unidades de 10 us.

otPlatRadioGetPreferredChannelMask

uint32_t otPlatRadioGetPreferredChannelMask(
  otInstance *aInstance
)

Obtenha a máscara de canal preferencial de rádio que o dispositivo prefere formar.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
Devoluções
A máscara de canal preferencial de rádio.

otPlatRadioGetRegion

otError otPlatRadioGetRegion(
  otInstance *aInstance,
  uint16_t *aRegionCode
)

Obtenha o código da região.

O formato da região de rádio é a representação ascii de 2 bytes do código ISO 3166 alfa-2.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
[out] aRegionCode
A região do rádio.
Valores Retornados
OT_ERROR_INVALID_ARGS
aRegionCode é nullptr.
OT_ERROR_FAILED
Outros erros específicos da plataforma.
OT_ERROR_NONE
Código de região obtido com sucesso.

otPlatRadioGetRssi

int8_t otPlatRadioGetRssi(
  otInstance *aInstance
)

Obtenha a medição RSSI mais recente.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
Devoluções
O RSSI em dBm quando for válido. 127 quando RSSI é inválido.

otPlatRadioGetState

otRadioState otPlatRadioGetState(
  otInstance *aInstance
)

Obtenha o estado atual do rádio.

Esta função não é exigida pelo OpenThread. Ele pode ser usado para depuração e / ou propósitos específicos do aplicativo.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
Devoluções
Estado atual do rádio.

otPlatRadioGetSupportedChannelMask

uint32_t otPlatRadioGetSupportedChannelMask(
  otInstance *aInstance
)

Obtenha a máscara de canal com suporte de rádio em que o dispositivo pode estar ligado.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
Devoluções
A máscara de canal suportada pelo rádio.

otPlatRadioGetTransmitBuffer

otRadioFrame * otPlatRadioGetTransmitBuffer(
  otInstance *aInstance
)

Obtenha o buffer de quadro de transmissão de rádio.

OpenThread forma o quadro 802.15.4 IEEE neste tampão em seguida, chama otPlatRadioTransmit() para transmissão do pedido.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
Devoluções
Um ponteiro para o buffer de quadro de transmissão.

otPlatRadioIsCoexEnabled

bool otPlatRadioIsCoexEnabled(
  otInstance *aInstance
)

Verifique se o rádio coex está habilitado ou não.

Esta função é usada quando o recurso OPENTHREAD_CONFIG_PLATFORM_RADIO_COEX_ENABLE está ativado.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
Devoluções
TRUE se o rádio coex estiver habilitado, FALSE caso contrário.

otPlatRadioIsEnabled

bool otPlatRadioIsEnabled(
  otInstance *aInstance
)

Verifique se o rádio está habilitado ou não.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
Devoluções
TRUE se o rádio estiver habilitado, FALSE caso contrário.

otPlatRadioReceive

otError otPlatRadioReceive(
  otInstance *aInstance,
  uint8_t aChannel
)

Faça a transição do rádio de Dormir para Receber (ligue o rádio).

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
[in] aChannel
O canal a ser usado para receber.
Valores Retornados
OT_ERROR_NONE
Transição para receber com sucesso.
OT_ERROR_INVALID_STATE
O rádio foi desativado ou transmitindo.

otPlatRadioReceiveAt

otError otPlatRadioReceiveAt(
  otInstance *aInstance,
  uint8_t aChannel,
  uint32_t aStart,
  uint32_t aDuration
)

Agende uma janela de recepção de rádio em um horário e duração específicos.

Detalhes
Parâmetros
[in] aChannel
O canal de rádio no qual deseja receber.
[in] aStart
A hora de início da janela de recepção, em microssegundos.
[in] aDuration
A duração da janela de recebimento, em microssegundos
Valores Retornados
OT_ERROR_NONE
Janela de recebimento agendada com sucesso.
OT_ERROR_FAILED
A janela de recebimento não pôde ser agendada.

otPlatRadioReceiveDone

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

O driver de rádio chama este método para notificar o OpenThread de um quadro recebido.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
[in] aFrame
Um ponteiro para o quadro recebido ou NULL se a operação de recebimento falhar.
[in] aError
OT_ERROR_NONE quando recebeu com sucesso um quadro, OT_ERROR_ABORT quando a recepção foi abortada e um quadro não foi recebido, OT_ERROR_NO_BUFS quando um quadro não pôde ser recebido devido à falta de espaço no buffer rx.

otPlatRadioSetChannelMaxTransmitPower

otError otPlatRadioSetChannelMaxTransmitPower(
  otInstance *aInstance,
  uint8_t aChannel,
  int8_t aMaxPower
)

Defina a potência máxima de transmissão para um canal específico.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
[in] aChannel
O canal de rádio.
[in] aMaxPower
A potência máxima em dBm, passando OT_RADIO_RSSI_INVALID desabilitará este canal.
Valores Retornados
OT_ERROR_NOT_IMPLEMENTED
O recurso não foi implementado
OT_ERROR_INVALID_ARGS
O canal especificado não é válido.
OT_ERROR_FAILED
Outros erros específicos da plataforma.
OT_ERROR_NONE
Definido com sucesso o poewr máximo de transmissão.

otPlatRadioSetCoexEnabled

otError otPlatRadioSetCoexEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Habilite o rádio coex.

Esta função é usada quando o recurso OPENTHREAD_CONFIG_PLATFORM_RADIO_COEX_ENABLE está ativado.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
[in] aEnabled
TRUE para habilitar o rádio coex, FALSE caso contrário.
Valores Retornados
OT_ERROR_NONE
Ativado com sucesso.
OT_ERROR_FAILED
O rádio coex não pôde ser ativado.

otPlatRadioSetRegion

otError otPlatRadioSetRegion(
  otInstance *aInstance,
  uint16_t aRegionCode
)

Defina o código da região.

O formato da região de rádio é a representação ascii de 2 bytes do código ISO 3166 alfa-2.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
[in] aRegionCode
A região do rádio.
Valores Retornados
OT_ERROR_FAILED
Outros erros específicos da plataforma.
OT_ERROR_NONE
Código de região definido com sucesso.

otPlatRadioSleep

otError otPlatRadioSleep(
  otInstance *aInstance
)

Faça a transição do rádio de Recepção para Suspensão (desligue o rádio).

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
Valores Retornados
OT_ERROR_NONE
Transição para Sleep com sucesso.
OT_ERROR_BUSY
O rádio estava transmitindo.
OT_ERROR_INVALID_STATE
O rádio foi desativado.

otPlatRadioTransmit

otError otPlatRadioTransmit(
  otInstance *aInstance,
  otRadioFrame *aFrame
)

Comece a sequência de transmissão no rádio.

O chamador deve formar a armação IEEE 802.15.4 no tampão fornecido pelo otPlatRadioGetTransmitBuffer() antes de solicitar transmissão. O canal e potência de transmissão também são incluídos no otRadioFrame estrutura.

A sequência de transmissão consiste em:

  1. Fazendo a transição do rádio para transmitir de um dos seguintes estados:
    • Receba se RX estiver ligado quando o dispositivo estiver ocioso ou OT_RADIO_CAPS_SLEEP_TO_TX não for compatível
    • Sleep se RX estiver desligado quando o dispositivo estiver ocioso e OT_RADIO_CAPS_SLEEP_TO_TX for suportado.
  2. Transmite o psdu no canal fornecido e na potência de transmissão fornecida.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
[in] aFrame
Um ponteiro para o quadro a ser transmitido.
Valores Retornados
OT_ERROR_NONE
Transição para Transmitir com sucesso.
OT_ERROR_INVALID_STATE
O rádio não estava no estado Receber.

otPlatRadioTxDone

void otPlatRadioTxDone(
  otInstance *aInstance,
  otRadioFrame *aFrame,
  otRadioFrame *aAckFrame,
  otError aError
)

O driver de rádio chama esta função para notificar o OpenThread que a operação de transmissão foi concluída, fornecendo o quadro transmitido e, se aplicável, o quadro de confirmação recebido.

Quando rádio fornece OT_RADIO_CAPS_TRANSMIT_SEC capacidade, camada plataforma rádio actualiza aFrame com o contador de quadros de segurança e valores de índice de chave mantida pelo rádio.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
[in] aFrame
Um ponteiro para o quadro que foi transmitido.
[in] aAckFrame
Um ponteiro para o quadro ACK, NULL se nenhum ACK foi recebido.
[in] aError
OT_ERROR_NONE quando o quadro foi transmitido, OT_ERROR_NO_ACK quando o quadro foi transmitido mas nenhum ACK foi recebido, OT_ERROR_CHANNEL_ACCESS_FAILURE tx não pôde ocorrer devido à atividade no canal, OT_ERROR_ABORT quando a transmissão foi abortada por outros motivos.

otPlatRadioTxStarted

void otPlatRadioTxStarted(
  otInstance *aInstance,
  otRadioFrame *aFrame
)

O driver de rádio chama este método para notificar o OpenThread de que a transmissão foi iniciada.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para a estrutura da instância OpenThread.
[in] aFrame
Um ponteiro para o quadro que está sendo transmitido.

otPlatRadioUpdateCslSampleTime

void otPlatRadioUpdateCslSampleTime(
  otInstance *aInstance,
  uint32_t aCslSampleTime
)

Atualize o tempo de amostra CSL no driver de rádio.

O tempo de amostra é armazenado no driver de rádio como uma cópia para calcular a fase ao enviar ACK com CSL IE.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância OpenThread.
[in] aCslSampleTime
O último tempo de amostra.