連結
這個模組包含了控制連結層設定的函式。
摘要
列舉 |
|
---|---|
otMacFilterAddressMode{
|
列舉 定義 mac 篩選器的位址模式。 |
Typedefs |
|
---|---|
otActiveScanResult
|
typedefstruct otActiveScanResult
代表收到的 IEEE 802.15.4 信標。 |
otEnergyScanResult
|
typedefstruct otEnergyScanResult
代表能源掃描結果。 |
otHandleActiveScanResult)(otActiveScanResult *aResult, void *aContext)
|
typedefvoid(*
在接收 IEEE 802.15.4 信標或完成掃描時,會在 IEEE 802.15.4 主動掃描期間呼叫指標。 |
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 篩選器項目。 |
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 主動掃描。
|
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
|
地址篩選器已停用。 |
Typedefs
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 中) 項目。
「Extended Address」不一定要位於 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 位址會改用預設的 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 週期 (以微秒為單位)。
如要停用 CSL,請將這個參數設為 0
。
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。啟用無線電篩選器後,無線電會進入休眠狀態而不再接收 (確保裝置不會收到任何畫面及/或可能傳送確認)。此外,影格傳輸要求會立即傳回,而不會透過無線傳送影格 (如果要求確認,則傳回「無確認」錯誤,否則傳回成功)。
詳細說明 | |||||
---|---|---|---|---|---|
參數 |
|
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 句號的十個符號單位,以微秒為單位。
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 取得。如要瞭解詳情或對說明文件做出貢獻,請參閱資源。