Jam 检测
此模块包含信号干扰检测功能。
摘要
启用卡顿检测功能 (OPENTHREAD_CONFIG_JAM_DETECTION_ENABLE) 后,才能使用此模块中的函数。
| 类型定义符 | |
|---|---|
| otJamDetectionCallback)(bool aJamState, void *aContext) | typedef void(*启用信号干扰检测后,系统会调用指针。 | 
| 函数 | |
|---|---|
| otJamDetectionGetBusyPeriod(otInstance *aInstance) | uint8_t获取 Jam 检测繁忙时段(以秒为单位) | 
| otJamDetectionGetHistoryBitmap(otInstance *aInstance) | uint64_t获取当前的历史记录位图。 | 
| otJamDetectionGetRssiThreshold(otInstance *aInstance) | int8_t获取 Jam 检测 RSSI 阈值(以 dBm 为单位)。 | 
| otJamDetectionGetState(otInstance *aInstance) | bool获取 Jam 检测状态。 | 
| otJamDetectionGetWindow(otInstance *aInstance) | uint8_t获取 Jam 检测窗口(以秒为单位)。 | 
| otJamDetectionIsEnabled(otInstance *aInstance) | bool获取 Jam 检测状态(已启用/已停用) | 
| otJamDetectionSetBusyPeriod(otInstance *aInstance, uint8_t aBusyPeriod) | 设置 Jam 检测繁忙时段(以秒为单位)。 | 
| otJamDetectionSetRssiThreshold(otInstance *aInstance, int8_t aRssiThreshold) | 设置 Jam 检测 RSSI 阈值(以 dBm 为单位)。 | 
| otJamDetectionSetWindow(otInstance *aInstance, uint8_t aWindow) | 设置 Jam 检测窗口(以秒为单位)。 | 
| otJamDetectionStart(otInstance *aInstance, otJamDetectionCallback aCallback, void *aContext) | 启动干扰检测。 | 
| otJamDetectionStop(otInstance *aInstance) | 停止干扰检测。 | 
类型定义符
otJamDetectionCallback
void(* otJamDetectionCallback)(bool aJamState, void *aContext)
启用信号干扰检测后,系统会调用指针。
| 具体说明 | |||||
|---|---|---|---|---|---|
| 参数 | 
 | ||||
函数
otJamDetectionGetBusyPeriod
uint8_t otJamDetectionGetBusyPeriod( otInstance *aInstance )
获取 Jam 检测繁忙时段(以秒为单位)
| 具体说明 | |||
|---|---|---|---|
| 参数 | 
 | ||
| 返回值 | Jam 检测繁忙时段。 | ||
otJamDetectionGetHistoryBitmap
uint64_t otJamDetectionGetHistoryBitmap( otInstance *aInstance )
获取当前的历史记录位图。
此值提供了有关干扰检测模块的当前状态的信息,以便进行监控/调试。它返回一个 64 位的值,其中每个位对应一秒间隔,从位 0 开始表示最近的间隔,从位 63 开始(最早间隔为 63 秒)。如果干扰检测模块在对应的一秒间隔内观察到/检测到高信号电平,则将该位设为 1。
| 具体说明 | |||
|---|---|---|---|
| 参数 | 
 | ||
| 返回值 | 当前历史记录位图。 | ||
otJamDetectionGetRssiThreshold
int8_t otJamDetectionGetRssiThreshold( otInstance *aInstance )
获取 Jam 检测 RSSI 阈值(以 dBm 为单位)。
| 具体说明 | |||
|---|---|---|---|
| 参数 | 
 | ||
| 返回值 | Jam 检测 RSSI 阈值。 | ||
otJamDetectionGetState
bool otJamDetectionGetState( otInstance *aInstance )
获取 Jam 检测状态。
| 具体说明 | |||
|---|---|---|---|
| 参数 | 
 | ||
| 返回值 | Jam 检测状态(检测到  trueJam,否则为“false”)。 | ||
otJamDetectionGetWindow
uint8_t otJamDetectionGetWindow( otInstance *aInstance )
获取 Jam 检测窗口(以秒为单位)。
| 具体说明 | |||
|---|---|---|---|
| 参数 | 
 | ||
| 返回值 | Jam 检测窗口。 | ||
otJamDetectionIsEnabled
bool otJamDetectionIsEnabled( otInstance *aInstance )
获取 Jam 检测状态(已启用/已停用)
| 具体说明 | |||
|---|---|---|---|
| 参数 | 
 | ||
| 返回值 | Jam 检测状态(如果已启用,则为 true,否则为 false)。 | ||
otJamDetectionSetBusyPeriod
otError otJamDetectionSetBusyPeriod( otInstance *aInstance, uint8_t aBusyPeriod )
设置 Jam 检测繁忙时段(以秒为单位)。
检测时间范围内的总秒数,在此时间段内,RSSI 必须高于阈值才能触发检测。
| 具体说明 | |||||
|---|---|---|---|---|---|
| 参数 | 
 | ||||
| 返回值 | 
 | ||||
otJamDetectionSetRssiThreshold
otError otJamDetectionSetRssiThreshold( otInstance *aInstance, int8_t aRssiThreshold )
设置 Jam 检测 RSSI 阈值(以 dBm 为单位)。
| 具体说明 | |||||
|---|---|---|---|---|---|
| 参数 | 
 | ||||
| 返回值 | 
 | ||||
otJamDetectionSetWindow
otError otJamDetectionSetWindow( otInstance *aInstance, uint8_t aWindow )
设置 Jam 检测窗口(以秒为单位)。
| 具体说明 | |||||
|---|---|---|---|---|---|
| 参数 | 
 | ||||
| 返回值 | 
 | ||||
otJamDetectionStart
otError otJamDetectionStart( otInstance *aInstance, otJamDetectionCallback aCallback, void *aContext )
启动干扰检测。
| 具体说明 | |||||||
|---|---|---|---|---|---|---|---|
| 参数 | 
 | ||||||
| 返回值 | 
 | ||||||
otJamDetectionStop
otError otJamDetectionStop( otInstance *aInstance )
停止干扰检测。
| 具体说明 | |||||
|---|---|---|---|---|---|
| 参数 | 
 | ||||
| 返回值 | 
 | ||||
资源
OpenThread API 参考文档源自 GitHub 上提供的源代码。如需了解详情,或者为我们的文档做贡献,请参阅资源。