Link
此模块包含控制链路层配置的函数。
摘要
枚举 |
|
---|---|
otMacFilterAddressMode{
|
枚举 定义 Mac 过滤器的地址模式。 |
类型定义符 |
|
---|---|
otActiveScanResult
|
typedefstruct otActiveScanResult
此结构表示收到的 IEEE 802.15.4 信标。 |
otEnergyScanResult
|
typedefstruct otEnergyScanResult
此结构表示能量扫描结果。 |
otHandleActiveScanResult)(otActiveScanResult *aResult, void *aContext)
|
typedefvoid(*
收到 IEEE 802.15.4 Beacon 或完成扫描时,系统会在 IEEE 802.15.4 Active Scan 期间调用此函数指针。 |
otHandleEnergyScanResult)(otEnergyScanResult *aResult, void *aContext)
|
typedefvoid(*
当通道的结果就绪或扫描完成时,在 IEEE 802.15.4 能源扫描期间调用此函数指针。 |
otLinkPcapCallback)(const otRadioFrame *aFrame, bool aIsTx, void *aContext)
|
typedefvoid(*
收到 IEEE 802.15.4 帧时,系统会调用此函数指针。 |
otMacCounters
|
typedefstruct otMacCounters
此结构表示 MAC 层计数器。 |
otMacFilterAddressMode
|
typedef 定义 Mac 过滤器的地址模式。 |
otMacFilterEntry
|
typedefstruct otMacFilterEntry
此结构表示 Mac Filter 条目。 |
otMacFilterIterator
|
typedefuint8_t
用于遍历 Mac 过滤器条目。 |
otThreadLinkInfo
|
typedefstruct otThreadLinkInfo
此结构表示从 Thread 无线装置接收的消息的链路特定信息。 |
函数 |
|
---|---|
otLinkActiveScan(otInstance *aInstance, uint32_t aScanChannels, uint16_t aScanDuration, otHandleActiveScanResult aCallback, void *aCallbackContext)
|
该函数会启动 IEEE 802.15.4 Active Scan。
|
otLinkConvertLinkQualityToRss(otInstance *aInstance, uint8_t aLinkQuality)
|
int8_t
此方法会将链路质量转换为一般接收信号强度。
|
otLinkConvertRssToLinkQuality(otInstance *aInstance, int8_t aRss)
|
uint8_t
此方法会将接收的信号强度转换为链路质量。
|
otLinkCslGetChannel(otInstance *aInstance)
|
uint8_t
此函数获取 CSL 通道。
|
otLinkCslGetPeriod(otInstance *aInstance)
|
uint16_t
此函数获取 CSL 周期。
|
otLinkCslGetTimeout(otInstance *aInstance)
|
uint32_t
此函数会获取 CSL 超时。
|
otLinkCslSetChannel(otInstance *aInstance, uint8_t aChannel)
|
此函数设置 CSL 通道。
|
otLinkCslSetPeriod(otInstance *aInstance, uint16_t aPeriod)
|
此函数设置 CSL 周期。
|
otLinkCslSetTimeout(otInstance *aInstance, uint32_t aTimeout)
|
此函数设置 CSL 超时。
|
otLinkEnergyScan(otInstance *aInstance, uint32_t aScanChannels, uint16_t aScanDuration, otHandleEnergyScanResult aCallback, void *aCallbackContext)
|
该函数会启动 IEEE 802.15.4 能源扫描。
|
otLinkFilterAddAddress(otInstance *aInstance, const otExtAddress *aExtAddress)
|
此方法会在 MAC 过滤器中添加扩展地址。
|
otLinkFilterAddRssIn(otInstance *aInstance, const otExtAddress *aExtAddress, int8_t aRss)
|
此方法会为来自 MAC 过滤器中给定扩展地址的邮件添加固定的接收信号强度(以 dBm 为单位)。
|
otLinkFilterClearAddresses(otInstance *aInstance)
|
void
此方法会从 MAC 过滤器中清除所有“扩展地址”。
|
otLinkFilterClearAllRssIn(otInstance *aInstance)
|
void
此方法会清除 MAC 过滤器上收到的所有信号强度条目(包括默认 RSS-in)。
|
otLinkFilterClearDefaultRssIn(otInstance *aInstance)
|
void
此方法会清除之前在 MAC 过滤器上设置的所有默认接收信号强度(以 dBm 为单位)。
|
otLinkFilterGetAddressMode(otInstance *aInstance)
|
此函数获取 MAC 过滤器的地址模式。
|
otLinkFilterGetNextAddress(otInstance *aInstance, otMacFilterIterator *aIterator, otMacFilterEntry *aEntry)
|
此方法会获取使用中的地址过滤器条目。
|
otLinkFilterGetNextRssIn(otInstance *aInstance, otMacFilterIterator *aIterator, otMacFilterEntry *aEntry)
|
此方法会获取使用中的 RssIn 过滤器条目。
|
otLinkFilterRemoveAddress(otInstance *aInstance, const otExtAddress *aExtAddress)
|
void
此方法会从 MAC 过滤器中移除扩展地址。
|
otLinkFilterRemoveRssIn(otInstance *aInstance, const otExtAddress *aExtAddress)
|
void
此方法会针对某个给定的扩展地址移除固定接收信号强度设置的 MAC 过滤器条目。
|
otLinkFilterSetAddressMode(otInstance *aInstance, otMacFilterAddressMode aMode)
|
void
此函数用于设置 MAC 过滤器的地址模式。
|
otLinkFilterSetDefaultRssIn(otInstance *aInstance, int8_t aRss)
|
void
此方法设置 MAC 过滤器上默认的接收信号强度(以 dBm 为单位)。
|
otLinkGetCcaFailureRate(otInstance *aInstance)
|
uint16_t
此函数返回当前 CCA(清除频道评估)失败率。
|
otLinkGetChannel(otInstance *aInstance)
|
uint8_t
获取 IEEE 802.15.4 版本。
|
otLinkGetCounters(otInstance *aInstance)
|
const otMacCounters *
获取 MAC 层计数器。
|
otLinkGetExtendedAddress(otInstance *aInstance)
|
const otExtAddress *
获取 IEEE 802.15.4 扩展地址。
|
otLinkGetFactoryAssignedIeeeEui64(otInstance *aInstance, otExtAddress *aEui64)
|
void
获取出厂分配的 IEEE EUI-64。
|
otLinkGetMaxFrameRetriesDirect(otInstance *aInstance)
|
uint8_t
此方法返回直接传输期间的最大帧重试次数。
|
otLinkGetMaxFrameRetriesIndirect(otInstance *aInstance)
|
uint8_t
此方法会返回间接传输期间的最大帧重试次数。
|
otLinkGetPanId(otInstance *aInstance)
|
获取 IEEE 802.15.4 PAN ID。
|
otLinkGetPollPeriod(otInstance *aInstance)
|
uint32_t
获取休眠终端的数据轮询期。
|
otLinkGetShortAddress(otInstance *aInstance)
|
获取 IEEE 802.15.4 短地址。
|
otLinkGetSupportedChannelMask(otInstance *aInstance)
|
uint32_t
获取支持的 MAC 层通道掩码。
|
otLinkGetTxDirectRetrySuccessHistogram(otInstance *aInstance, uint8_t *aNumberOfEntries)
|
const uint32_t *
此方法会获取单个直接数据包在成功后重试的直方图。
|
otLinkGetTxIndirectRetrySuccessHistogram(otInstance *aInstance, uint8_t *aNumberOfEntries)
|
const uint32_t *
此方法会获取单个间接数据包重试成功前的直方图。
|
otLinkIsActiveScanInProgress(otInstance *aInstance)
|
bool
此函数用于指示当前是否正在进行 IEEE 802.15.4 Active Scan。
|
otLinkIsEnabled(otInstance *aInstance)
|
bool
此函数用于指明是否启用了链路层。
|
otLinkIsEnergyScanInProgress(otInstance *aInstance)
|
bool
此函数用于指示当前是否正在进行 IEEE 802.15.4 Energy Scan。
|
otLinkIsInTransmitState(otInstance *aInstance)
|
bool
此函数指示 IEEE 802.15.4 MAC 是否处于传输状态。
|
otLinkIsPromiscuous(otInstance *aInstance)
|
bool
此函数用于指明链路层是否启用了混杂模式。
|
otLinkIsRadioFilterEnabled(otInstance *aInstance)
|
bool
此函数用于指示是否启用了 IEEE 802.15.4 无线过滤器。
|
otLinkResetCounters(otInstance *aInstance)
|
void
重置 MAC 层计数器。
|
otLinkResetTxRetrySuccessHistogram(otInstance *aInstance)
|
void
此方法会清除直接传输和间接传输的直方图统计信息。
|
otLinkSendDataRequest(otInstance *aInstance)
|
此函数将 IEEE 802.15.4 Data Request 消息加入队列以进行传输。
|
otLinkSendEmptyData(otInstance *aInstance)
|
此函数指示设备发送空的 IEEE 802.15.4 数据帧。
|
otLinkSetChannel(otInstance *aInstance, uint8_t aChannel)
|
设置 IEEE 802.15.4 通道。
|
otLinkSetEnabled(otInstance *aInstance, bool aEnable)
|
此函数可启用或停用链接层。
|
otLinkSetExtendedAddress(otInstance *aInstance, const otExtAddress *aExtAddress)
|
此函数设置 IEEE 802.15.4 扩展地址。
|
otLinkSetMaxFrameRetriesDirect(otInstance *aInstance, uint8_t aMaxFrameRetriesDirect)
|
void
此方法设置直接传输期间的最大帧重试次数。
|
otLinkSetMaxFrameRetriesIndirect(otInstance *aInstance, uint8_t aMaxFrameRetriesIndirect)
|
void
此方法设置间接传输期间的最大帧重试次数。
|
otLinkSetPanId(otInstance *aInstance, otPanId aPanId)
|
设置 IEEE 802.15.4 PAN ID。
|
otLinkSetPcapCallback(otInstance *aInstance, otLinkPcapCallback aPcapCallback, void *aCallbackContext)
|
void
此函数注册回调以提供收到的原始 IEEE 802.15.4 帧。
|
otLinkSetPollPeriod(otInstance *aInstance, uint32_t aPollPeriod)
|
为睡眠不足的设备设置设置/清除用户指定的/外部数据轮询周期。
|
otLinkSetPromiscuous(otInstance *aInstance, bool aPromiscuous)
|
此函数可启用或停用链路层混杂模式。
|
otLinkSetRadioFilterEnabled(otInstance *aInstance, bool aFilterEnabled)
|
void
此函数可启用/停用 IEEE 802.15.4 无线装置过滤模式。
|
otLinkSetSupportedChannelMask(otInstance *aInstance, uint32_t aChannelMask)
|
设置支持的 MAC 层通道掩码。
|
结构体 |
|
---|---|
otActiveScanResult |
此结构表示收到的 IEEE 802.15.4 信标。 |
otEnergyScanResult |
此结构表示能量扫描结果。 |
otMacCounters |
此结构表示 MAC 层计数器。 |
otMacFilterEntry |
此结构表示 Mac Filter 条目。 |
otThreadLinkInfo |
此结构表示从 Thread 无线装置接收的消息的链路特定信息。 |
枚举
otMacFilterAddressMode
otMacFilterAddressMode
定义 Mac 过滤器的地址模式。
属性 | |
---|---|
OT_MAC_FILTER_ADDRESS_MODE_ALLOWLIST
|
许可名单地址过滤模式已启用。 |
OT_MAC_FILTER_ADDRESS_MODE_DENYLIST
|
已启用拒绝名单地址过滤模式。 |
OT_MAC_FILTER_ADDRESS_MODE_DISABLED
|
地址过滤器已停用。 |
类型定义符
otHandleActiveScanResult
void(* otHandleActiveScanResult)(otActiveScanResult *aResult, void *aContext)
收到 IEEE 802.15.4 Beacon 或完成扫描时,系统会在 IEEE 802.15.4 Active Scan 期间调用此函数指针。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
otHandleEnergyScanResult
void(* otHandleEnergyScanResult)(otEnergyScanResult *aResult, void *aContext)
当通道的结果就绪或扫描完成时,在 IEEE 802.15.4 能源扫描期间调用此函数指针。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
otLinkPcapCallback
void(* otLinkPcapCallback)(const otRadioFrame *aFrame, bool aIsTx, void *aContext)
收到 IEEE 802.15.4 帧时,系统会调用此函数指针。
详情 | |||||||
---|---|---|---|---|---|---|---|
参数 |
|
otMacFilterIterator
uint8_t otMacFilterIterator
用于遍历 Mac 过滤器条目。
函数
otLinkActiveScan
otError otLinkActiveScan( otInstance *aInstance, uint32_t aScanChannels, uint16_t aScanDuration, otHandleActiveScanResult aCallback, void *aCallbackContext )
该函数会启动 IEEE 802.15.4 Active Scan。
详情 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
参数 |
|
||||||||||
返回值 |
|
otLinkConvertLinkQualityToRs
int8_t otLinkConvertLinkQualityToRss( otInstance *aInstance, uint8_t aLinkQuality )
此方法会将链路质量转换为一般接收信号强度。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
||||
返回值 |
典型平台信号强度映射到
aLinkQuality 。 |
otLinkConvertRssToLinkQuality
uint8_t otLinkConvertRssToLinkQuality( otInstance *aInstance, int8_t aRss )
此方法会将接收的信号强度转换为链路质量。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
||||
返回值 |
关联质量值映射到
aRss 。 |
otLinkCslGetChannel
uint8_t otLinkCslGetChannel( otInstance *aInstance )
此函数获取 CSL 通道。
详情 | |||
---|---|---|---|
参数 |
|
||
返回值 |
CSL 频道。
|
otLinkCslGetPeriod
uint16_t otLinkCslGetPeriod( otInstance *aInstance )
此函数获取 CSL 周期。
详情 | |||
---|---|---|---|
参数 |
|
||
返回值 |
CSL 周期(以 10 个符号为单位)。
|
otLinkCslGetTimeout
uint32_t otLinkCslGetTimeout( otInstance *aInstance )
此函数会获取 CSL 超时。
详情 | |||
---|---|---|---|
参数 |
|
||
返回值 |
CSL 超时(以秒为单位)。
|
otLinkCslSetChannel
otError otLinkCslSetChannel( otInstance *aInstance, uint8_t aChannel )
此函数设置 CSL 通道。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
||||
返回值 |
|
otLinkCslSetPeriod
otError otLinkCslSetPeriod( otInstance *aInstance, uint16_t aPeriod )
此函数设置 CSL 周期。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
||||
返回值 |
|
otLinkCslSetTimeout
otError otLinkCslSetTimeout( otInstance *aInstance, uint32_t aTimeout )
此函数设置 CSL 超时。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
||||
返回值 |
|
otLinkEnergyScan
otError otLinkEnergyScan( otInstance *aInstance, uint32_t aScanChannels, uint16_t aScanDuration, otHandleEnergyScanResult aCallback, void *aCallbackContext )
该函数会启动 IEEE 802.15.4 能源扫描。
详情 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
参数 |
|
||||||||||
返回值 |
|
otLinkFilterAddAddress
otError otLinkFilterAddAddress( otInstance *aInstance, const otExtAddress *aExtAddress )
此方法会在 MAC 过滤器中添加扩展地址。
启用 OPENThread_CONFIG_MAC_FILTER_ENABLE 配置时,可以使用此函数。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
||||
返回值 |
|
otLinkFilterAddRssIn
otError otLinkFilterAddRssIn( otInstance *aInstance, const otExtAddress *aExtAddress, int8_t aRss )
此方法会为来自 MAC 过滤器中给定扩展地址的邮件添加固定的接收信号强度(以 dBm 为单位)。
启用 OPENThread_CONFIG_MAC_FILTER_ENABLE 配置时,可以使用此函数。
详情 | |||||||
---|---|---|---|---|---|---|---|
参数 |
|
||||||
返回值 |
|
otLinkFilterClearAddresses
void otLinkFilterClearAddresses( otInstance *aInstance )
此方法会从 MAC 过滤器中清除所有“扩展地址”。
启用 OPENThread_CONFIG_MAC_FILTER_ENABLE 配置时,可以使用此函数。
详情 | |||
---|---|---|---|
参数 |
|
otLinkFilterClearAllRssIn
void otLinkFilterClearAllRssIn( otInstance *aInstance )
此方法会清除 MAC 过滤器上收到的所有信号强度条目(包括默认 RSS-in)。
启用 OPENThread_CONFIG_MAC_FILTER_ENABLE 配置时,可以使用此函数。
详情 | |||
---|---|---|---|
参数 |
|
otLinkFilterClearDefaultRssIn
void otLinkFilterClearDefaultRssIn( otInstance *aInstance )
此方法会清除之前在 MAC 过滤器上设置的所有默认接收信号强度(以 dBm 为单位)。
启用 OPENThread_CONFIG_MAC_FILTER_ENABLE 配置时,可以使用此函数。
详情 | |||
---|---|---|---|
参数 |
|
otLinkFilterGetAddressMode
otMacFilterAddressMode otLinkFilterGetAddressMode( otInstance *aInstance )
此函数获取 MAC 过滤器的地址模式。
启用 OPENThread_CONFIG_MAC_FILTER_ENABLE 配置时,可以使用此函数。
详情 | |||
---|---|---|---|
参数 |
|
||
返回值 |
地址模式。
|
otLinkFilterGetNextAddress
otError otLinkFilterGetNextAddress( otInstance *aInstance, otMacFilterIterator *aIterator, otMacFilterEntry *aEntry )
此方法会获取使用中的地址过滤器条目。
启用 OPENThread_CONFIG_MAC_FILTER_ENABLE 配置时,可以使用此函数。
详情 | |||||||
---|---|---|---|---|---|---|---|
参数 |
|
||||||
返回值 |
|
otLinkFilterGetNextRssIn
otError otLinkFilterGetNextRssIn( otInstance *aInstance, otMacFilterIterator *aIterator, otMacFilterEntry *aEntry )
此方法会获取使用中的 RssIn 过滤器条目。
启用 OPENThread_CONFIG_MAC_FILTER_ENABLE 配置时,可以使用此函数。
详情 | |||||||
---|---|---|---|---|---|---|---|
参数 |
|
||||||
返回值 |
|
otLinkFilterRemoveAddress
void otLinkFilterRemoveAddress( otInstance *aInstance, const otExtAddress *aExtAddress )
此方法会从 MAC 过滤器中移除扩展地址。
启用 OPENThread_CONFIG_MAC_FILTER_ENABLE 配置时,可以使用此函数。
如果过滤器中没有任何条目与指定的扩展地址匹配,则不会执行任何操作。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
otLinkFilterRemoveRssIn
void otLinkFilterRemoveRssIn( otInstance *aInstance, const otExtAddress *aExtAddress )
此方法会针对某个给定的扩展地址移除固定接收信号强度设置的 MAC 过滤器条目。
启用 OPENThread_CONFIG_MAC_FILTER_ENABLE 配置时,可以使用此函数。
如果过滤器中没有任何条目与指定的扩展地址匹配,则不会执行任何操作。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
otLinkFilterSetAddressMode
void otLinkFilterSetAddressMode( otInstance *aInstance, otMacFilterAddressMode aMode )
此函数用于设置 MAC 过滤器的地址模式。
启用 OPENThread_CONFIG_MAC_FILTER_ENABLE 配置时,可以使用此函数。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
otLinkFilterSetDefaultRssIn
void otLinkFilterSetDefaultRssIn( otInstance *aInstance, int8_t aRss )
此方法设置 MAC 过滤器上默认的接收信号强度(以 dBm 为单位)。
启用 OPENThread_CONFIG_MAC_FILTER_ENABLE 配置时,可以使用此函数。
默认 RSS 值用于从过滤器列表中(使用 otLinkFilterAddRssIn()
添加)没有显式 RSS-IN 条目的地址接收的所有帧。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
otLinkGetCcaFailureRate
uint16_t otLinkGetCcaFailureRate( otInstance *aInstance )
此函数返回当前 CCA(清除频道评估)失败率。
该速率通过(最近)OPENTHREAD_CONFIG_CCA_FAILURE_RATE_AVERAGING_WINDOW
个帧传输的时段维持。
详情 | |
---|---|
返回值 |
最大值为
0xffff 的 CCA 失败率与 100% 失败相对应。 |
otLinkGetChannel
uint8_t otLinkGetChannel( otInstance *aInstance )
获取 IEEE 802.15.4 版本。
详情 | |||
---|---|---|---|
参数 |
|
||
返回值 |
IEEE 802.15.4 通道。
|
otLinkSetChannel
otLinkGetCounter
const otMacCounters * otLinkGetCounters( otInstance *aInstance )
获取 MAC 层计数器。
详情 | |||
---|---|---|---|
参数 |
|
||
返回值 |
指向 MAC 层计数器的指针。
|
otLinkGetExtendedAddress
const otExtAddress * otLinkGetExtendedAddress( otInstance *aInstance )
获取 IEEE 802.15.4 扩展地址。
详情 | |||
---|---|---|---|
参数 |
|
||
返回值 |
指向 IEEE 802.15.4 Extended Address 的指针。
|
otLinkGetFactoryAssignedIeeeEui64
void otLinkGetFactoryAssignedIeeeEui64( otInstance *aInstance, otExtAddress *aEui64 )
获取出厂分配的 IEEE EUI-64。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
otLinkGetMaxFrameRetriesDirect
uint8_t otLinkGetMaxFrameRetriesDirect( otInstance *aInstance )
此方法返回直接传输期间的最大帧重试次数。
详情 | |||
---|---|---|---|
参数 |
|
||
返回值 |
直接传输过程中的最大重试次数。
|
otLinkGetMaxFrameRetriesIndirect
uint8_t otLinkGetMaxFrameRetriesIndirect( otInstance *aInstance )
此方法会返回间接传输期间的最大帧重试次数。
详情 | |||
---|---|---|---|
参数 |
|
||
返回值 |
间接传输过程中的重试次数上限。
|
otLinkGetPanId
otPanId otLinkGetPanId( otInstance *aInstance )
获取 IEEE 802.15.4 PAN ID。
详情 | |||
---|---|---|---|
参数 |
|
||
返回值 |
IEEE 802.15.4 PAN ID。
|
otLinkSetPanId
otLinkGetPollPeriod
uint32_t otLinkGetPollPeriod( otInstance *aInstance )
获取休眠终端的数据轮询期。
详情 | |||
---|---|---|---|
参数 |
|
||
返回值 |
处于休眠状态的设备的数据轮询周期(以毫秒为单位)。
|
otLinkSetPollPeriod
otLinkGetShortAddress
otShortAddress otLinkGetShortAddress( otInstance *aInstance )
获取 IEEE 802.15.4 短地址。
详情 | |||
---|---|---|---|
参数 |
|
||
返回值 |
指向 IEEE 802.15.4 Short Address 的指针。
|
otLinkGetSupportedChannelMask
uint32_t otLinkGetSupportedChannelMask( otInstance *aInstance )
获取支持的 MAC 层通道掩码。
详情 | |||
---|---|---|---|
参数 |
|
||
返回值 |
支持的通道掩码,为
uint32_t ,位 0 (lsb) 映射到通道 0,位 1 映射到通道 1,依此类推。 |
otLinkGetTxDirectRetrySuccessHistogram
const uint32_t * otLinkGetTxDirectRetrySuccessHistogram( otInstance *aInstance, uint8_t *aNumberOfEntries )
此方法会获取单个直接数据包在成功后重试的直方图。
启用 OPENThread_CONFIG_MAC_RETRY_SUCCESS_HISTOGRAM_ENABLE 配置后,此函数有效。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
||||
返回值 |
指向重试直方图的指针(以数组的形式)。第 n 个元素表示数据包已在第 n 次重试。
|
otLinkGetTxIndirectRetrySuccessHistogram
const uint32_t * otLinkGetTxIndirectRetrySuccessHistogram( otInstance *aInstance, uint8_t *aNumberOfEntries )
此方法会获取单个间接数据包重试成功前的直方图。
启用 OPENThread_CONFIG_MAC_RETRY_SUCCESS_HISTOGRAM_ENABLE 配置后,此函数有效。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
||||
返回值 |
指向重试直方图的指针(以数组的形式)。第 n 个元素表示数据包已在第 n 次重试。
|
otLinkIsActiveScanInProgress
bool otLinkIsActiveScanInProgress( otInstance *aInstance )
此函数用于指示当前是否正在进行 IEEE 802.15.4 Active Scan。
详情 | |||
---|---|---|---|
参数 |
|
||
返回值 |
如果正在进行 IEEE 802.15.4 Active Scan,则为 true,否则为 false。
|
otLinkIsEnabled
bool otLinkIsEnabled( otInstance *aInstance )
此函数用于指明是否启用了链路层。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
||||
返回值 |
|
otLinkIsEnergyScanInProgress
bool otLinkIsEnergyScanInProgress( otInstance *aInstance )
此函数用于指示当前是否正在进行 IEEE 802.15.4 Energy Scan。
详情 | |||
---|---|---|---|
参数 |
|
||
返回值 |
如果正在进行 IEEE 802.15.4 能源扫描,则为 true,否则为 false。
|
otLinkIsInTransmitState
bool otLinkIsInTransmitState( otInstance *aInstance )
此函数指示 IEEE 802.15.4 MAC 是否处于传输状态。
MAC 模块在 CSMA/CA 过程中处于传输状态,CCA、数据、信标或数据请求帧传输,以及接收已传输帧的 ACK。在传输 ACK 帧或信标请求帧时,MAC 模块未处于传输状态。
详情 | |||
---|---|---|---|
参数 |
|
||
返回值 |
如果 IEEE 802.15.4 MAC 处于传输状态,则返回 true,否则为 false。
|
otLinkIsPromiscuous
bool otLinkIsPromiscuous( otInstance *aInstance )
此函数用于指明链路层是否启用了混杂模式。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
||||
返回值 |
|
otLinkIsRadioFilterEnabled
bool otLinkIsRadioFilterEnabled( otInstance *aInstance )
此函数用于指示是否启用了 IEEE 802.15.4 无线过滤器。
启用 OPENThread_CONFIG_MAC_FILTER_ENABLE 配置时,可以使用此函数。
详情 | |||||
---|---|---|---|---|---|
返回值 |
|
otLinkResetCounters
void otLinkResetCounters( otInstance *aInstance )
重置 MAC 层计数器。
详情 | |||
---|---|---|---|
参数 |
|
otLinkResetTxRetrySuccessHistogram
void otLinkResetTxRetrySuccessHistogram( otInstance *aInstance )
此方法会清除直接传输和间接传输的直方图统计信息。
启用 OPENThread_CONFIG_MAC_RETRY_SUCCESS_HISTOGRAM_ENABLE 配置后,此函数有效。
详情 | |||
---|---|---|---|
参数 |
|
otLinkSendDataRequest
otError otLinkSendDataRequest( otInstance *aInstance )
此函数将 IEEE 802.15.4 Data Request 消息加入队列以进行传输。
详情 | |||||||||
---|---|---|---|---|---|---|---|---|---|
参数 |
|
||||||||
返回值 |
|
otLinkSendEmptyData
otError otLinkSendEmptyData( otInstance *aInstance )
此函数指示设备发送空的 IEEE 802.15.4 数据帧。
仅 Rx-Off-When-Idle 设备支持此功能,以便向父设备发送空数据帧。注意:仅在启用 OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
后可用。
详情 | |||||||
---|---|---|---|---|---|---|---|
参数 |
|
||||||
返回值 |
|
otLinkSetChannel
otError otLinkSetChannel( otInstance *aInstance, uint8_t aChannel )
设置 IEEE 802.15.4 通道。
只有在停用线程协议后,此函数才能成功。如果成功调用此函数,则非易失性内存中的活跃和待处理操作数据集无效。
详情 | |||||||
---|---|---|---|---|---|---|---|
参数 |
|
||||||
返回值 |
|
otLinkGetChannel
otLinkSetEnabled
otError otLinkSetEnabled( otInstance *aInstance, bool aEnable )
此函数可启用或停用链接层。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
||||
返回值 |
|
otLinkSetExtendedAddress
otError otLinkSetExtendedAddress( otInstance *aInstance, const otExtAddress *aExtAddress )
此函数设置 IEEE 802.15.4 扩展地址。
只有在停用线程协议后,此函数才能成功。
详情 | |||||||
---|---|---|---|---|---|---|---|
参数 |
|
||||||
返回值 |
|
otLinkSetMaxFrameRetriesDirect
void otLinkSetMaxFrameRetriesDirect( otInstance *aInstance, uint8_t aMaxFrameRetriesDirect )
此方法设置直接传输期间的最大帧重试次数。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
otLinkSetMaxFrameRetriesIndirect
void otLinkSetMaxFrameRetriesIndirect( otInstance *aInstance, uint8_t aMaxFrameRetriesIndirect )
此方法设置间接传输期间的最大帧重试次数。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
otLinkSetPanId
otError otLinkSetPanId( otInstance *aInstance, otPanId aPanId )
设置 IEEE 802.15.4 PAN ID。
只有在停用线程协议后,此函数才能成功。如果成功调用此函数,还会使非易失性内存中的活跃和待处理操作数据集失效。
详情 | |||||||
---|---|---|---|---|---|---|---|
参数 |
|
||||||
返回值 |
|
otLinkGetPanId
otLinkSetPcapCallback
void otLinkSetPcapCallback( otInstance *aInstance, otLinkPcapCallback aPcapCallback, void *aCallbackContext )
此函数注册回调以提供收到的原始 IEEE 802.15.4 帧。
详情 | |||||||
---|---|---|---|---|---|---|---|
参数 |
|
otLinkSetPollPeriod
otError otLinkSetPollPeriod( otInstance *aInstance, uint32_t aPollPeriod )
为睡眠不足的设备设置设置/清除用户指定的/外部数据轮询周期。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
||||
返回值 |
|
otLinkGetPollPeriod
otLinkSetPromiscuous
otError otLinkSetPromiscuous( otInstance *aInstance, bool aPromiscuous )
此函数可启用或停用链路层混杂模式。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
||||
返回值 |
|
otLinkSetRadioFilterEnabled
void otLinkSetRadioFilterEnabled( otInstance *aInstance, bool aFilterEnabled )
此函数可启用/停用 IEEE 802.15.4 无线装置过滤模式。
启用 OPENThread_CONFIG_MAC_FILTER_ENABLE 配置时,可以使用此函数。
无线装置过滤条件主要用于测试。它可用于暂时屏蔽 802.15.4 无线装置上的所有 tx/rx。启用无线装置过滤条件后,无线装置会进入休眠状态而不是接收状态(以确保设备不会接收任何帧和/或可能发送确认信息)。此外,帧传输请求会立即返回,而不会通过无线下载发送帧(如果请求确认消息,则返回“no ack”,否则返回成功)。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
otLinkSetSupportedChannelMask
otError otLinkSetSupportedChannelMask( otInstance *aInstance, uint32_t aChannelMask )
设置支持的 MAC 层通道掩码。
只有在停用线程协议后,此函数才能成功。
详情 | |||||
---|---|---|---|---|---|
参数 |
|
||||
返回值 |
|
宏
OT_MAC_FILTER_FIXED_RSS_DISABLED
OT_MAC_FILTER_FIXED_RSS_DISABLED 127
用于表明未设置固定的接收信号强度。
OT_MAC_FILTER_ITERATOR_INIT
OT_MAC_FILTER_ITERATOR_INIT 0
otMacFilterIterator 的初始化程序。
OT_US_PER_TEN_SYMBOLS
OT_US_PER_TEN_SYMBOLS 160
每 10 个符号的微秒数。
资源
OpenThread API 参考主题源自源代码,可在 GitHub 上找到。 如需了解详情或为我们的文档做贡献,请参阅资源。