链接
此模块包含用于控制链路层配置的函数。
摘要
| 枚举 | |
|---|---|
| otMacFilterAddressMode{ | 枚举 定义 Mac 过滤器的地址模式。 | 
| 类型定义符 | |
|---|---|
| otActiveScanResult | typedef struct otActiveScanResult表示收到的 IEEE 802.15.4 信标。 | 
| otEnergyScanResult | typedef struct otEnergyScanResult表示能量扫描结果。 | 
| otHandleActiveScanResult)(otActiveScanResult *aResult, void *aContext) | typedef void(*当收到 IEEE 802.15.4 信标或扫描完成时,在 IEEE 802.15.4 主动扫描期间会调用指针。 | 
| otHandleEnergyScanResult)(otEnergyScanResult *aResult, void *aContext) | typedef void(*当通道的结果准备就绪或扫描完成时,会在 IEEE 802.15.4 能量扫描期间调用指针。 | 
| otLinkPcapCallback)(const otRadioFrame *aFrame, bool aIsTx, void *aContext) | typedef void(*系统会在收到 IEEE 802.15.4 帧时调用指针。 | 
| otMacCounters | typedef struct otMacCounters表示 MAC 层计数器。 | 
| otMacFilterAddressMode | typedef 定义 Mac 过滤器的地址模式。 | 
| otMacFilterEntry | typedef struct otMacFilterEntry表示 Mac 过滤器条目。 | 
| otMacFilterIterator | typedef uint8_t用于遍历 Mac 过滤器条目。 | 
| otThreadLinkInfo | typedef struct otThreadLinkInfo表示从 Thread 电台收到的消息的链接特定信息。 | 
| 函数 | |
|---|---|
| otLinkActiveScan(otInstance *aInstance, uint32_t aScanChannels, uint16_t aScanDuration, otHandleActiveScanResult aCallback, void *aCallbackContext) | 启动 IEEE 802.15.4 主动扫描。 | 
| otLinkConvertLinkQualityToRss(otInstance *aInstance, uint8_t aLinkQuality) | int8_t将链接质量转换为典型的接收信号强度。 | 
| otLinkConvertRssToLinkQuality(otInstance *aInstance, int8_t aRss) | uint8_t将接收到的信号强度转换为链接质量。 | 
| 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) | 将指定的扩展地址添加到  RssIn列表(或修改RssIn列表中的现有地址),并设置来自该地址的邮件的接收信号强度(以 dBm 为单位)条目。 | 
| otLinkFilterClearAddresses(otInstance *aInstance) | void清除 MAC 过滤器中的所有扩展地址。 | 
| otLinkFilterClearAllRssIn(otInstance *aInstance) | void清除  RssIn列表中接收的所有信号强度 (rss) 和链接质量指示器 (lqi) 条目(包括默认值)。 | 
| 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从  RssIn列表中移除指定的扩展地址。 | 
| 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 层计数器。 | 
| otLinkGetCslChannel(otInstance *aInstance) | uint8_t获取 CSL 渠道。 | 
| otLinkGetCslPeriod(otInstance *aInstance) | uint32_t获取 CSL 周期(以微秒为单位)。 | 
| otLinkGetCslTimeout(otInstance *aInstance) | uint32_t获取 CSL 超时。 | 
| 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获取休眠结束设备的数据轮询时间段。 | 
| otLinkGetRegion(otInstance *aInstance, uint16_t *aRegionCode) | 获取地区代码。 | 
| 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 主动扫描当前是否正在进行。 | 
| otLinkIsCslEnabled(otInstance *aInstance) | bool指示是否已启用 CSL。 | 
| otLinkIsCslSupported(otInstance *aInstance) | bool指示设备是否连接到支持 CSL 的父节点。 | 
| otLinkIsEnabled(otInstance *aInstance) | bool指示是否已启用链接层。 | 
| otLinkIsEnergyScanInProgress(otInstance *aInstance) | bool指明目前是否正在进行 IEEE 802.15.4 能量扫描。 | 
| 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 数据请求消息加入队列以便传输。 | 
| otLinkSendEmptyData(otInstance *aInstance) | 指示设备发送一个空的 IEEE 802.15.4 数据帧。 | 
| otLinkSetChannel(otInstance *aInstance, uint8_t aChannel) | 设置 IEEE 802.15.4 信道。 | 
| otLinkSetCslChannel(otInstance *aInstance, uint8_t aChannel) | 设置 CSL 渠道。 | 
| otLinkSetCslPeriod(otInstance *aInstance, uint32_t aPeriod) | 设置 CSL 周期(以微秒为单位)。 | 
| otLinkSetCslTimeout(otInstance *aInstance, uint32_t aTimeout) | 设置 CSL 超时(以秒为单位)。 | 
| 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 无线装置过滤器模式。 | 
| otLinkSetRegion(otInstance *aInstance, uint16_t aRegionCode) | 设置地区代码。 | 
| otLinkSetSupportedChannelMask(otInstance *aInstance, uint32_t aChannelMask) | 设置 MAC 层支持的信道掩码。 | 
| 结构体 | |
|---|---|
| otActiveScanResult | 表示收到的 IEEE 802.15.4 信标。 | 
| otEnergyScanResult | 表示能量扫描结果。 | 
| otMacCounters | 表示 MAC 层计数器。 | 
| otMacFilterEntry | 表示 Mac 过滤器条目。 | 
| 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 信标或扫描完成时,在 IEEE 802.15.4 主动扫描期间会调用指针。
| 具体说明 | |||||
|---|---|---|---|---|---|
| 参数 | 
 | ||||
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 主动扫描。
| 具体说明 | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| 参数 | 
 | ||||||||||
| 返回值 | 
 | ||||||||||
otLinkConvertLinkQualityToRss
int8_t otLinkConvertLinkQualityToRss( otInstance *aInstance, uint8_t aLinkQuality )
将链接质量转换为典型的接收信号强度。
| 具体说明 | |||||
|---|---|---|---|---|---|
| 参数 | 
 | ||||
| 返回值 | 典型平台收到映射到  aLinkQuality的信号强度。 | ||||
otLinkConvertRssToLinkQuality
uint8_t otLinkConvertRssToLinkQuality( otInstance *aInstance, int8_t aRss )
将接收到的信号强度转换为链接质量。
| 具体说明 | |||||
|---|---|---|---|---|---|
| 参数 | 
 | ||||
| 返回值 | 映射到  aRss的链接质量值。 | ||||
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 )
将指定的扩展地址添加到 RssIn 列表(或修改 RssIn 列表中的现有地址),并设置来自该地址的邮件的接收信号强度(以 dBm 为单位)条目。
扩展地址无需位于 address allowlist/denylist 过滤器中也可设置 rss。
OPENTHREAD_CONFIG_MAC_FILTER_ENABLE 配置后可用。
      
| 具体说明 | |||||||
|---|---|---|---|---|---|---|---|
| 参数 | 
 | ||||||
| 返回值 | 
 | ||||||
otLinkFilterClearAddresses
void otLinkFilterClearAddresses( otInstance *aInstance )
清除 MAC 过滤器中的所有扩展地址。
在启用 OPENTHREAD_CONFIG_MAC_FILTER_ENABLE 配置后可用。
| 具体说明 | |||
|---|---|---|---|
| 参数 | 
 | ||
otLinkFilterClearAllRssIn
void otLinkFilterClearAllRssIn( otInstance *aInstance )
清除 RssIn 列表中接收的所有信号强度 (rss) 和链接质量指示器 (lqi) 条目(包括默认值)。
执行此操作后,所有扩展地址都将使用直播信号。
在启用 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 )
从 RssIn 列表中移除指定的扩展地址。
从 RssIn 列表中移除此 MAC 地址后,此 MAC 地址将改用默认的 rss 和 lqi 设置(假设已设定默认值)。(如果未设置默认值,系统会使用无线信号信号)。
在启用 OPENTHREAD_CONFIG_MAC_FILTER_ENABLE 配置后可用。
如果 RssIn 列表中没有与指定的扩展地址匹配的现有条目,则不执行任何操作。
| 具体说明 | |||||
|---|---|---|---|---|---|
| 参数 | 
 | ||||
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-IN 条目(使用 otLinkFilterAddRssIn() 添加),则默认 RSS 值会用于接收的所有帧。
| 具体说明 | |||||
|---|---|---|---|---|---|
| 参数 | 
 | ||||
otLinkGetCcaFailureRate
uint16_t otLinkGetCcaFailureRate( otInstance *aInstance )
返回当前的 CCA(清晰渠道评估)失败率。
该速率在(大致)最后 OPENTHREAD_CONFIG_CCA_FAILURE_RATE_AVERAGING_WINDOW 帧传输的时段中保持不变。
| 具体说明 | |
|---|---|
| 返回值 | CCA 失败率(最大值为  0xffff)对应于 100% 失败率。 | 
otLinkGetChannel
uint8_t otLinkGetChannel( otInstance *aInstance )
获取 IEEE 802.15.4 信道。
| 具体说明 | |||
|---|---|---|---|
| 参数 | 
 | ||
| 返回值 | IEEE 802.15.4 信道。 | ||
otLinkSetChannel
otLinkGetCounters
const otMacCounters * otLinkGetCounters( otInstance *aInstance )
获取 MAC 层计数器。
| 具体说明 | |||
|---|---|---|---|
| 参数 | 
 | ||
| 返回值 | 指向 MAC 层计数器的指针。 | ||
otLinkGetCslChannel
uint8_t otLinkGetCslChannel( otInstance *aInstance )
获取 CSL 渠道。
| 具体说明 | |||
|---|---|---|---|
| 参数 | 
 | ||
| 返回值 | CSL 渠道。 | ||
otLinkGetCslPeriod
uint32_t otLinkGetCslPeriod( otInstance *aInstance )
获取 CSL 周期(以微秒为单位)。
| 具体说明 | |||
|---|---|---|---|
| 参数 | 
 | ||
| 返回值 | CSL 周期(以微秒为单位)。 | ||
otLinkGetCslTimeout
uint32_t otLinkGetCslTimeout( otInstance *aInstance )
获取 CSL 超时。
| 具体说明 | |||
|---|---|---|---|
| 参数 | 
 | ||
| 返回值 | CSL 超时(以秒为单位)。 | ||
otLinkGetExtendedAddress
const otExtAddress * otLinkGetExtendedAddress( otInstance *aInstance )
获取 IEEE 802.15.4 扩展地址。
| 具体说明 | |||
|---|---|---|---|
| 参数 | 
 | ||
| 返回值 | 指向 IEEE 802.15.4 扩展地址的指针。 | ||
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
otLinkGetRegion
otError otLinkGetRegion( otInstance *aInstance, uint16_t *aRegionCode )
获取地区代码。
无线电区域格式为 ISO 3166 alpha-2 代码的 2 个字节 ASCII 表示。
| 具体说明 | |||||||||
|---|---|---|---|---|---|---|---|---|---|
| 参数 | 
 | ||||||||
| 返回值 | 
 | ||||||||
otLinkGetShortAddress
otShortAddress otLinkGetShortAddress( otInstance *aInstance )
获取 IEEE 802.15.4 短地址。
| 具体说明 | |||
|---|---|---|---|
| 参数 | 
 | ||
| 返回值 | 指向 IEEE 802.15.4 短地址的指针。 | ||
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 主动扫描当前是否正在进行。
| 具体说明 | |||
|---|---|---|---|
| 参数 | 
 | ||
| 返回值 | 如果正在进行 IEEE 802.15.4 主动扫描,则为 true,否则为 false。 | ||
otLinkIsCslEnabled
bool otLinkIsCslEnabled( otInstance *aInstance )
指示是否已启用 CSL。
| 具体说明 | |||||
|---|---|---|---|---|---|
| 参数 | 
 | ||||
| 返回值 | 
 | ||||
otLinkIsCslSupported
bool otLinkIsCslSupported( otInstance *aInstance )
指示设备是否连接到支持 CSL 的父节点。
| 具体说明 | |||||
|---|---|---|---|---|---|
| 返回值 | 
 | ||||
otLinkIsEnabled
bool otLinkIsEnabled( otInstance *aInstance )
指示是否已启用链接层。
| 具体说明 | |||||
|---|---|---|---|---|---|
| 参数 | 
 | ||||
| 返回值 | 
 | ||||
otLinkIsEnergyScanInProgress
bool otLinkIsEnergyScanInProgress( otInstance *aInstance )
指明目前是否正在进行 IEEE 802.15.4 能量扫描。
| 具体说明 | |||
|---|---|---|---|
| 参数 | 
 | ||
| 返回值 | 如果正在进行 IEEE 802.15.4 能量扫描,则为 true,否则为 false。 | ||
otLinkIsInTransmitState
bool otLinkIsInTransmitState( otInstance *aInstance )
指示 IEEE 802.15.4 MAC 是否处于传输状态。
在 CSMA/CA 程序、CCA、数据、信标或数据请求帧传输过程中,MAC 模块处于传输状态,并接收已传输帧的 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 数据请求消息加入队列以便传输。
| 具体说明 | |||||||
|---|---|---|---|---|---|---|---|
| 参数 | 
 | ||||||
| 返回值 | 
 | ||||||
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 信道。
只有在停用 Thread 协议时才会成功。成功调用此函数会使非易失性内存中的活跃和待处理操作数据集失效。
| 具体说明 | |||||||
|---|---|---|---|---|---|---|---|
| 参数 | 
 | ||||||
| 返回值 | 
 | ||||||
otLinkGetChannel
otLinkSetCslChannel
otError otLinkSetCslChannel( otInstance *aInstance, uint8_t aChannel )
设置 CSL 渠道。
| 具体说明 | |||||
|---|---|---|---|---|---|
| 参数 | 
 | ||||
| 返回值 | 
 | ||||
otLinkSetCslPeriod
otError otLinkSetCslPeriod( otInstance *aInstance, uint32_t aPeriod )
设置 CSL 周期(以微秒为单位)。
将此参数设置为 0 即可停用 CSL。
CSL 周期必须是 OT_LINK_CSL_PERIOD_TEN_SYMBOLS_UNIT_IN_USEC 的倍数,否则返回 OT_ERROR_INVALID_ARGS。
| 具体说明 | |||||
|---|---|---|---|---|---|
| 参数 | 
 | ||||
| 返回值 | 
 | ||||
otLinkSetCslTimeout
otError otLinkSetCslTimeout( otInstance *aInstance, uint32_t aTimeout )
设置 CSL 超时(以秒为单位)。
| 具体说明 | |||||
|---|---|---|---|---|---|
| 参数 | 
 | ||||
| 返回值 | 
 | ||||
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。
只有在停用 Thread 协议时才会成功。成功调用此函数也会使非易失性内存中的活跃和待处理操作数据集失效。
| 具体说明 | |||||||
|---|---|---|---|---|---|---|---|
| 参数 | 
 | ||||||
| 返回值 | 
 | ||||||
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”,否则返回成功)。
| 具体说明 | |||||
|---|---|---|---|---|---|
| 参数 | 
 | ||||
otLinkSetRegion
otError otLinkSetRegion( otInstance *aInstance, uint16_t aRegionCode )
设置地区代码。
无线电区域格式为 ISO 3166 alpha-2 代码的 2 个字节 ASCII 表示。
| 具体说明 | |||||||
|---|---|---|---|---|---|---|---|
| 参数 | 
 | ||||||
| 返回值 | 
 | ||||||
otLinkSetSupportedChannelMask
otError otLinkSetSupportedChannelMask( otInstance *aInstance, uint32_t aChannelMask )
设置 MAC 层支持的信道掩码。
只有在停用 Thread 协议时才会成功。
| 具体说明 | |||||
|---|---|---|---|---|---|
| 参数 | 
 | ||||
| 返回值 | 
 | ||||
宏
OT_LINK_CSL_PERIOD_TEN_SYMBOLS_UNIT_IN_USEC
OT_LINK_CSL_PERIOD_TEN_SYMBOLS_UNIT_IN_USEC (160)
表示 CSL 周期 10 符号单位(以微秒为单位)。
CSL 周期(以微秒为单位)必须是此值的倍数。
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 OT_RADIO_TEN_SYMBOLS_TIME
10 个符号的时间(以微秒为单位)。
资源
OpenThread API 参考文档源自 GitHub 上提供的源代码。如需了解详情,或者为我们的文档做贡献,请参阅资源。