xt-sdk 文档 v1.0.3
xt-sdk 嵌入式 SDK API 参考
载入中...
搜索中...
未找到
xt_mobile.h
浏览该文件的文档.
1
12
13#ifndef __XT_MOBILE_H__
14#define __XT_MOBILE_H__
15
16/* ==================== [Includes] ========================================== */
17
18#include "xt_error.h"
19
20#ifdef __cplusplus
21extern "C" {
22#endif
23
30
31/* ==================== [Defines] =========================================== */
32
33#define XT_MOBILE_IMEI_MAX_LEN 16
34#define XT_MOBILE_SIM_0 0
35#define XT_MOBILE_SIM_1 1
36#define XT_MOBILE_SIM_NUM_MAX XT_MOBILE_SIM_1
37
38/* SIM 卡状态 */
39#define XT_MOBILE_USIM_NOT_READY -4
40#define XT_MOBILE_USIM_TIMEOUT -3
41#define XT_MOBILE_USIM_NOT_INSERTED -2
42#define XT_MOBILE_USIM_UNKNOW -1
43#define XT_MOBILE_USIM_READY 0
44#define XT_MOBILE_USIM_SIMPIN 1
45#define XT_MOBILE_USIM_SIMPUK 2
46
47#define XT_MOBILE_CELLINFO_MAX_LEN 10
48
49/* ==================== [Typedefs] ========================================== */
50
60
67typedef void (*xt_mobile_on_event_cb_t)(uint32_t event_id, void *param);
68
72struct cesq_data {
73 int rxlev;
74 int ber;
75 int rscp;
76 int ecno;
77 int rsrq;
78 int rsrp;
79};
80
84struct scell_info {
85 int mnc;
86 int mcc;
87 int earfcn;
88 int pci;
89 int tac;
90 int cid;
91 int rsrq;
92 int rsrp;
93 int rssi;
94};
95
99struct cell_info {
100 int num;
101 struct {
102 int mnc;
103 int mcc;
104 int earfcn;
105 int pci;
106 int tac;
107 int cid;
108 int rsrq;
109 int rsrp;
111};
112
119typedef int (*xt_mobile_cellinfo_ind_cb_t)(struct cell_info *info);
120
121/* ==================== [Global Prototypes] ================================= */
122
130
137xt_err_t xt_mobile_get_imei(char str_imei[15+1]);
138
146xt_err_t xt_mobile_get_imsi(uint8_t simid, char str_imsi[15+1]);
147
155xt_err_t xt_mobile_get_iccid(uint8_t simid, char str_iccid[20+1]);
156
163
169uint8_t xt_mobile_get_csq(void);
170
178
188
198
205int xt_mobile_get_simstatus(uint8_t simid);
206
214
221
229xt_err_t xt_mobile_set_flymode(uint8_t simid, uint8_t onoff);
230
237int xt_mobile_get_flymode(uint8_t simid);
238
246
254
262
270
271/* ==================== [Macros] ============================================ */
272 /* xt_mobile */
274
275#ifdef __cplusplus
276} /* extern "C" */
277#endif
278
279#endif /* __XT_MOBILE_H__ */
int32_t xt_err_t
错误码类型
xt_err_t xt_mobile_get_csq_real(int8_t *rssi)
获取 CSQ 真实值(RSSI)
xt_err_t xt_mobile_get_cesq_real(struct cesq_data *ptr_data)
获取 CESQ 信号质量(真实值)
xt_err_t xt_mobile_get_cellinfo(struct cell_info *cell_info)
同步获取邻近小区信息
xt_err_t xt_mobile_set_simid(uint8_t simid)
设置当前使用的 SIM 卡
int xt_mobile_get_flymode(uint8_t simid)
获取飞行模式状态
uint8_t xt_mobile_get_csq(void)
获取 CSQ 相对值
xt_err_t xt_mobile_get_cesq(struct cesq_data *ptr_data)
获取 CESQ 信号质量(相对值)
void(* xt_mobile_on_event_cb_t)(uint32_t event_id, void *param)
蜂窝网络事件回调函数类型
xt_err_t xt_mobile_set_flymode(uint8_t simid, uint8_t onoff)
设置飞行模式
xt_err_t xt_mobile_set_rrcrel(uint8_t sec)
设置 RRC 释放时间
#define XT_MOBILE_CELLINFO_MAX_LEN
xt_mobile_event_id
蜂窝网络事件 ID 枚举
int(* xt_mobile_cellinfo_ind_cb_t)(struct cell_info *info)
邻近小区信息异步回调函数类型
int xt_mobile_get_simstatus(uint8_t simid)
获取 SIM 卡状态
int xt_mobile_get_status(void)
获取网络注册状态
xt_err_t xt_mobile_get_scell(struct scell_info *scell_info)
获取当前服务小区信息
xt_err_t xt_mobile_get_imsi(uint8_t simid, char str_imsi[15+1])
获取 SIM 卡 IMSI
xt_err_t xt_mobile_get_iccid(uint8_t simid, char str_iccid[20+1])
获取 SIM 卡 ICCID
uint8_t xt_mobile_get_simid(void)
获取当前使用的 SIM 卡编号
xt_err_t xt_mobile_set_event_cb(xt_mobile_on_event_cb_t on_event_cb)
注册网络事件回调
xt_err_t xt_mobile_get_cellinfo_async(xt_mobile_cellinfo_ind_cb_t cb)
异步获取邻近小区信息
xt_err_t xt_mobile_get_imei(char str_imei[15+1])
获取设备 IMEI
@ XT_MOBILE_SIM_IND
@ XT_MOBILE_NTP_UPDATE
@ XT_MOBILE_IP_READY
@ XT_MOBILE_IP_LOSE
邻近小区信息结构体
struct cell_info::@265131021054216162303064070343271254226150236030 items[10/*!< 小区信息最大数量 */]
CESQ 信号质量数据结构体
服务小区信息结构体
XTINY 错误码定义