O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.
Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

Operação de rádio

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 esse método para notificar o módulo de diagnóstico do OpenThread de um frame recebido.
otPlatDiagRadioTransmitDone(otInstance *aInstance, otRadioFrame *aFrame, otError aError)
void
O driver de rádio chama esse método para notificar o módulo de diagnóstico OpenThread de que a transmissão foi concluída.
otPlatRadioAddSrcMatchExtEntry(otInstance *aInstance, const otExtAddress *aExtAddress)
Adicione um endereço estendido à tabela de correspondências do endereço de origem.
otPlatRadioAddSrcMatchShortEntry(otInstance *aInstance, otShortAddress aShortAddress)
Adicione um endereço curto à tabela de correspondências do endereço de origem.
otPlatRadioClearSrcMatchExtEntries(otInstance *aInstance)
void
Limpar 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
Limpar todos os endereços curtos da tabela de correspondências do endereço de origem.
otPlatRadioClearSrcMatchShortEntry(otInstance *aInstance, otShortAddress aShortAddress)
Remova um endereço curto da tabela de correspondências do endereço de origem.
otPlatRadioConfigureEnhAckProbing(otInstance *aInstance, otLinkMetrics aLinkMetrics, otShortAddress aShortAddress, const otExtAddress *aExtAddress)
Ative/desative ou atualize a sondagem aprimorada com base em ACK para um rádio específico.
otPlatRadioDisable(otInstance *aInstance)
Desative o rádio.
otPlatRadioEnable(otInstance *aInstance)
Ative o rádio.
otPlatRadioEnableCsl(otInstance *aInstance, uint32_t aCslPeriod, otShortAddress aShortAddr, const otExtAddress *aExtAddr)
Ativar ou desativar o receptor de CSL.
otPlatRadioEnableSrcMatch(otInstance *aInstance, bool aEnable)
void
Ativar/desativar o recurso de correspondência de endereço de origem.
otPlatRadioEnergyScan(otInstance *aInstance, uint8_t aScanChannel, uint16_t aScanDuration)
Inicie a sequência de verificação de energia no rádio.
otPlatRadioEnergyScanDone(otInstance *aInstance, int8_t aEnergyScanMaxRssi)
void
O driver de rádio chama esse método para notificar o OpenThread que a verificação de energia foi concluída.
otPlatRadioGetCoexMetrics(otInstance *aInstance, otRadioCoexMetrics *aCoexMetrics)
Receba as métricas de coexistência de rádio.
otPlatRadioGetCslAccuracy(otInstance *aInstance)
uint8_t
Receba a precisão atual, em unidades de ± ppm, do relógio usado para programar operações de CSL.
otPlatRadioGetCslUncertainty(otInstance *aInstance)
uint8_t
A incerteza fixa do dispositivo para programar transmissões da CSL em unidades de 10 microssegundos.
otPlatRadioGetPreferredChannelMask(otInstance *aInstance)
uint32_t
Recebe a máscara de canal de preferência para o rádio em que o dispositivo prefere formar.
otPlatRadioGetRegion(otInstance *aInstance, uint16_t *aRegionCode)
Acesse o código da região.
otPlatRadioGetRssi(otInstance *aInstance)
int8_t
Veja a medição RSSI mais recente.
otPlatRadioGetState(otInstance *aInstance)
Acessar o estado atual do rádio.
otPlatRadioGetSupportedChannelMask(otInstance *aInstance)
uint32_t
Acesse a máscara de canal compatível com rádio em que o dispositivo pode estar.
otPlatRadioGetTransmitBuffer(otInstance *aInstance)
Recebe o buffer do frame de transmissão de rádio.
otPlatRadioIsCoexEnabled(otInstance *aInstance)
bool
Verifique se o coex rádio está ativado ou não.
otPlatRadioIsEnabled(otInstance *aInstance)
bool
Verifique se o rádio está ativado ou não.
otPlatRadioReceive(otInstance *aInstance, uint8_t aChannel)
Faça a transição do rádio de "Sono" para "Receber" (ative o rádio).
otPlatRadioReceiveAt(otInstance *aInstance, uint8_t aChannel, uint32_t aStart, uint32_t aDuration)
Programar uma janela de recepção de rádio para 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 sobre um frame recebido.
otPlatRadioSetChannelMaxTransmitPower(otInstance *aInstance, uint8_t aChannel, int8_t aMaxPower)
Define a potência máxima de transmissão para um canal específico.
otPlatRadioSetCoexEnabled(otInstance *aInstance, bool aEnabled)
Ativar o coex do rádio.
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 Sono" (desative o rádio).
otPlatRadioTransmit(otInstance *aInstance, otRadioFrame *aFrame)
Inicie 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 essa função para notificar o OpenThread que a operação de transmissão foi concluída, fornecendo o frame transmitido e, se aplicável, o frame de confirmação recebido.
otPlatRadioTxStarted(otInstance *aInstance, otRadioFrame *aFrame)
void
O driver de rádio chama esse método para notificar o OpenThread que a transmissão foi iniciada.
otPlatRadioUpdateCslSampleTime(otInstance *aInstance, uint32_t aCslSampleTime)
void
Atualizar o tempo de exemplo de CSL no driver de rádio.

Funções

OtPlatDiagRadioReceiveReceber

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

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

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

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread.
[in] aFrame
Um ponteiro para o frame recebido ou NULL se a operação de recebimento falhar.
[in] aError
OT_ERROR_NONE quando um frame é recebido com sucesso, OT_ERROR_ABORT quando a recepção é cancelada e um frame não é recebido, OT_ERROR_NO_BUFS quando não é possível receber um frame devido à falta de espaço do buffer de rx.

OtPlatDiagRadioBroadcastDone

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

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

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

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread.
[in] aFrame
Um ponteiro para o frame que foi transmitido.
[in] aError
OT_ERROR_NONE quando o frame 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 cancelada por outros motivos.

OtPlatRadioAddSrcMatchExtEntry

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

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

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread.
[in] aExtAddress
O endereço estendido a ser adicionado armazenado em ordem de byte bit-endian.
Valores de retorno
OT_ERROR_NONE
O endereço estendido foi adicionado à tabela de correspondência de origem.
OT_ERROR_NO_BUFS
Não há 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ências do endereço de origem.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread.
[in] aShortAddress
O endereço curto a ser adicionado.
Valores de retorno
OT_ERROR_NONE
O endereço curto foi adicionado à tabela de correspondência de origem.
OT_ERROR_NO_BUFS
Não há entrada disponível na tabela de correspondência de origem.

Entradas de otPlatRadioClearSrcMatchExt

void otPlatRadioClearSrcMatchExtEntries(
  otInstance *aInstance
)

Limpar 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 do 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 do OpenThread.
[in] aExtAddress
O endereço estendido a ser removido, armazenado em ordem de bytes end-endian.
Valores de retorno
OT_ERROR_NONE
O endereço estendido foi removido da tabela de correspondência 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
)

Limpar todos os endereços curtos da tabela de correspondências do endereço de origem.

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

OtPlatRadioClearSrcMatchShortEntry

otError otPlatRadioClearSrcMatchShortEntry(
  otInstance *aInstance,
  otShortAddress aShortAddress
)

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

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread.
[in] aShortAddress
O endereço curto a ser removido.
Valores de retorno
OT_ERROR_NONE
O endereço curto foi removido da tabela de correspondência 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
)

Ative/desative ou atualize a sondagem aprimorada com base em ACK para um rádio específico.

Depois que a Sondagem baseada em ACK for configurada por um iniciador de sondagem específico, o ACK aprimorado enviado para esse nó precisará incluir o IE específico do fornecedor que contém os dados das Métricas de link. Esse método informa o rádio para iniciar/parar a coleta de dados de métricas de links e incluir o IE específico do fornecedor que contém os dados no Enhanced-ACK enviado para esse iniciador de sondagem.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread.
[in] aLinkMetrics
Este parâmetro especifica quais métricas serão consultadas. Conforme a especificação 4.11.3.4.4.6, no máximo duas métricas podem ser especificadas. A sondagem será desativada se a aLinkMetrics for um bit 0.
[in] aShortAddress
É o endereço curto do iniciador de sondagem.
[in] aExtAddress
O endereço de origem estendido do iniciador de sondagem. aExtAddr NÃO PODE SER NULL.
Valores de retorno
OT_ERROR_NONE
A sondagem baseada em ACK-ACK foi configurada.
OT_ERROR_INVALID_ARGS
aExtAddress é NULL.
OT_ERROR_NOT_FOUND
O iniciador indicado por aShortAddress não foi encontrado ao tentar limpar.
OT_ERROR_NO_BUFS
Não há mais suporte para o iniciador.

OtPlatRadio do YouTube

otError otPlatRadioDisable(
  otInstance *aInstance
)

Desative o rádio.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread.
Valores de retorno
OT_ERROR_NONE
Transição concluída para desativada.
OT_ERROR_INVALID_STATE
O rádio não estava em estado de sono.

OtPlatRadioEnable

otError otPlatRadioEnable(
  otInstance *aInstance
)

Ative o rádio.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread.
Valores de retorno
OT_ERROR_NONE
Ativado com sucesso.
OT_ERROR_FAILED
Não foi possível ativar o rádio.

OtPlatRadioEnableCsl

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

Ativar ou desativar o receptor de CSL.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread.
[in] aCslPeriod
Período de CSL, 0 para desativar a CSL.
[in] aShortAddr
O endereço de origem curto do peering de receptor de CSL.
[in] aExtAddr
O endereço de origem estendido do peering de receptor de CSL.
Valores de retorno
kErrorNotImplemented
O driver de rádio não é compatível com a CSL.
kErrorFailed
Outros erros específicos da plataforma.
kErrorNone
A CSL foi ativada ou desativada.

OtPlatRadioEnableSrcMatch

void otPlatRadioEnableSrcMatch(
  otInstance *aInstance,
  bool aEnable
)

Ativar/desativar 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 "frame pendente" para respostas enviadas em resposta a comandos de solicitação de dados de filhos.

Se for desativada, a camada de rádio precisará definir o "frame pendente" em todos os acks para os comandos de solicitação de dados.

Se ativada, a camada de rádio usará a tabela de correspondência de endereço de origem para determinar se o conjunto de bits de "pendente" será definido em um comando de dados.

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

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do 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
)

Inicie a sequência de verificação de energia no rádio.

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

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread.
[in] aScanChannel
O canal em que a verificação de energia será ativada.
[in] aScanDuration
A duração, em milésimos de segundo, do canal a ser verificado.
Valores de retorno
OT_ERROR_NONE
A verificação do canal foi iniciada.
OT_ERROR_BUSY
O rádio está realizando a verificação de enrias.
OT_ERROR_NOT_IMPLEMENTED
O rádio não oferece suporte à leitura de energia.

OtPlatRadioEnergyScanDone

void otPlatRadioEnergyScanDone(
  otInstance *aInstance,
  int8_t aEnergyScanMaxRssi
)

O driver de rádio chama esse método para notificar o OpenThread que a verificação de energia foi concluída.

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

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

OtPlatRadioGetCoexMetrics

otError otPlatRadioGetCoexMetrics(
  otInstance *aInstance,
  otRadioCoexMetrics *aCoexMetrics
)

Receba 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 do OpenThread.
[out] aCoexMetrics
Um ponteiro para a estrutura de métricas de coexistência.
Valores de retorno
OT_ERROR_NONE
As métricas coex foram recuperadas.
OT_ERROR_INVALID_ARGS
aCoexMetrics era NULL.

OtPlatRadioGetCslPrecisão

uint8_t otPlatRadioGetCslAccuracy(
  otInstance *aInstance
)

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

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

OtPlatRadioGetCslIndefinição

uint8_t otPlatRadioGetCslUncertainty(
  otInstance *aInstance
)

A incerteza fixa do dispositivo para programar transmissões da CSL em unidades de 10 microssegundos.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
Retorna
A incerteza da CSL em unidades de 10 nós.

OtPlatRadioGetPreferChannelMask

uint32_t otPlatRadioGetPreferredChannelMask(
  otInstance *aInstance
)

Recebe a máscara de canal de preferência para o rádio em que o dispositivo prefere formar.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread.
Retorna
A máscara do canal de preferência para o rádio.

OtPlatRadioGetRegion

otError otPlatRadioGetRegion(
  otInstance *aInstance,
  uint16_t *aRegionCode
)

Acesse 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 do OpenThread.
[out] aRegionCode
É a região de rádio.
Valores de retorno
OT_ERROR_INVALID_ARGS
aRegionCode é nulo.
OT_ERROR_FAILED
Outros erros específicos da plataforma.
OT_ERROR_NONE
O código da região foi recebido com sucesso.

OtPlatRadioGetRssi

int8_t otPlatRadioGetRssi(
  otInstance *aInstance
)

Veja a medição RSSI mais recente.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread.
Retorna
O RSSI em dBm quando é válido. 127 quando a RSSI é inválida.

OtPlatRadioGetState

otRadioState otPlatRadioGetState(
  otInstance *aInstance
)

Acessar o estado atual do rádio.

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

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

OtPlatRadioGetSupportedChannelMask

uint32_t otPlatRadioGetSupportedChannelMask(
  otInstance *aInstance
)

Acesse a máscara de canal compatível com rádio em que o dispositivo pode estar.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread.
Retorna
A máscara de canal compatível com rádio.

OtPlatRadioGetBroadcastBuffer

otRadioFrame * otPlatRadioGetTransmitBuffer(
  otInstance *aInstance
)

Recebe o buffer do frame de transmissão de rádio.

O OpenThread forma o frame IEEE 802.15.4 nesse buffer, depois chama otPlatRadioTransmit() para solicitar a transmissão.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread.
Retorna
Um ponteiro para o buffer de frame de transmissão.

OtPlatRadioIsCoexEnabled

bool otPlatRadioIsCoexEnabled(
  otInstance *aInstance
)

Verifique se o coex rádio está ativado 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 do OpenThread.
Retorna
TRUE se a coexação do rádio estiver ativada. Caso contrário, FALSE.

OtPlatRadioIsEnabled

bool otPlatRadioIsEnabled(
  otInstance *aInstance
)

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

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread.
Retorna
TRUE se o rádio estiver ativado. Caso contrário, FALSE.

OtPlatRadioReceive

otError otPlatRadioReceive(
  otInstance *aInstance,
  uint8_t aChannel
)

Faça a transição do rádio de "Sono" para "Receber" (ative o rádio).

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread.
[in] aChannel
O canal a ser usado para receber.
Valores de retorno
OT_ERROR_NONE
Mudou para "Receber".
OT_ERROR_INVALID_STATE
O rádio foi desativado ou transmitido.

OtPlatRadioReceiveAt

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

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

Detalhes
Parâmetros
[in] aChannel
O canal de rádio em que receber.
[in] aStart
Horário de início da janela de recebimento, em microssegundos.
[in] aDuration
A duração da janela de recebimento, em microssegundos
Valores de retorno
OT_ERROR_NONE
A janela de recebimento foi programada.
OT_ERROR_FAILED
Não foi possível programar a janela de recebimento.

OtPlatRadioReceber

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

O driver de rádio chama esse método para notificar o OpenThread sobre um frame recebido.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread.
[in] aFrame
Um ponteiro para o frame recebido ou NULL se a operação de recebimento falhar.
[in] aError
OT_ERROR_NONE quando um frame é recebido com sucesso, OT_ERROR_ABORT quando a recepção é cancelada e um frame não é recebido, OT_ERROR_NO_BUFS quando não é possível receber um frame devido à falta de espaço do buffer de rx.

OtPlatRadioSetChannelMaxBroadcastPower

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

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

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread.
[in] aChannel
O canal de rádio.
[in] aMaxPower
A potência máxima em dBm e transmitir OT_RADIO_RSSI_INVALID desativará este canal.
Valores de retorno
OT_ERROR_NOT_IMPLEMENTED
O recurso não está implementado
OT_ERROR_INVALID_ARGS
O canal especificado não é válido.
OT_ERROR_FAILED
Outros erros específicos da plataforma.
OT_ERROR_NONE
A potência máxima de transmissão foi definida.

OtPlatRadioSetCoexEnabled

otError otPlatRadioSetCoexEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Ativar o coex do 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 do OpenThread.
[in] aEnabled
Verdadeiro para ativar o coex do rádio, caso contrário, FALSO.
Valores de retorno
OT_ERROR_NONE
Ativado com sucesso.
OT_ERROR_FAILED
Não foi possível ativar a coexação de rádio.

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 do OpenThread.
[in] aRegionCode
É a região de rádio.
Valores de retorno
OT_ERROR_FAILED
Outros erros específicos da plataforma.
OT_ERROR_NONE
O código da região foi definido.

OtPlatRadioSleep

otError otPlatRadioSleep(
  otInstance *aInstance
)

Faça a transição do rádio de "Receber para Sono" (desative o rádio).

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread.
Valores de retorno
OT_ERROR_NONE
Transição para o modo de suspensão.
OT_ERROR_BUSY
O rádio estava transmitindo.
OT_ERROR_INVALID_STATE
O rádio foi desativado.

OtPlatRadioBroadcast

otError otPlatRadioTransmit(
  otInstance *aInstance,
  otRadioFrame *aFrame
)

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

O autor da chamada precisa formar o frame IEEE 802.15.4 no buffer fornecido pelo otPlatRadioGetTransmitBuffer() antes de solicitar a transmissão. O canal e a potência de transmissão também são incluídos na estrutura do otRadioFrame.

A sequência de transmissão consiste em:

  1. Transição do rádio para transmissão de um dos seguintes estados:
    • Receber se o RX estiver ativado quando o dispositivo estiver ocioso ou OT_RADIO_CAPS_SLEEP_TO_TX não for suportado
    • Suspensão se o RX estiver desativado quando o dispositivo estiver inativo e compatível com OT_RADIO_CAPS_SLEEP_TO_TX.
  2. Transmite o psdu no canal e na potência de transmissão fornecidos.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread.
[in] aFrame
Um ponteiro para o frame a ser transmitido.
Valores de retorno
OT_ERROR_NONE
Mudou para "Transmitir".
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 essa função para notificar o OpenThread que a operação de transmissão foi concluída, fornecendo o frame transmitido e, se aplicável, o frame de confirmação recebido.

Quando o rádio fornece o recurso OT_RADIO_CAPS_TRANSMIT_SEC, a camada da plataforma de rádio atualiza aFrame com o contador de frames de segurança e os valores principais de índice mantidos pelo rádio.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread.
[in] aFrame
Um ponteiro para o frame que foi transmitido.
[in] aAckFrame
Um ponteiro para o frame ACK, NULL se nenhum ACK tiver sido recebido.
[in] aError
OT_ERROR_NONE quando o frame foi transmitido, OT_ERROR_NO_ACK quando o frame 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 cancelada por outros motivos.

OtPlatRadioTxStarted

void otPlatRadioTxStarted(
  otInstance *aInstance,
  otRadioFrame *aFrame
)

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

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

OtPlatRadioUpdateCslSampleTime

void otPlatRadioUpdateCslSampleTime(
  otInstance *aInstance,
  uint32_t aCslSampleTime
)

Atualizar o tempo de exemplo de 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 o CSL IE.

Detalhes
Parâmetros
[in] aInstance
A estrutura da instância do OpenThread.
[in] aCslSampleTime
A amostra mais recente.

Recursos

Os tópicos de referência da API OpenThread são provenientes do código-fonte, disponível no GitHub. Para saber mais ou contribuir com nossa documentação, consulte Recursos.