使用示例

## 使用示例 ``` #include <cfw_prv.h> //查询、设置 SIM 卡状态需包含此头文件 if (CFW_GetSimStatus(0) == 0x01) { //查询 SIM 卡状态,且 SIM 卡状态正常 } CFW_SetSimStatus(0, CFW_SIM_NORMAL); //设置 SIM 卡状态为正常状态 if (CFW_GetSimType(nSim) == 1) //USIM card { //查询 SIM 卡类型,且 SIM 卡为 USIM card } UINT8 *pICCID = CFW_GetICCID(nSim); //查询 SIM 卡的 CCID COS_LOGI(0x10004396, "pICCID =%x\n", pICCID); UINT8 nImeiLen = 0; UINT8 ret = 0; UINT8 nImeiD[16] = { 0x00, }; CFW_EmodGetIMEI(nImei, &nImeiLen, 0); //查询设备 IMEI ret = CFW_EmodSaveIMEI(nImeiD, AT_StrLen(nImeiD), 0); //设置设备的 IMEI if (1 != ret )//判断返回值,并对异常情况做处理 { COS_LOGI(0x0810099d, "ERROR set issue IMEI\n"); return ERR_SUCCESS; } UINT8 nPreIMSI[12]= { 0x00, }; UINT32 nRet = 0; nRet = CFW_CfgGetIMSI(nPreIMSI, 0); //查询 SIM 卡的 IMSI if (0 != nRet)//判断返回值,并对异常情况做处理 { COS_LOGI(0x0810099d, "ERROR get issue IMSI\n"); return ERR_SUCCESS; } nRet = CFW_CfgSetIMSI(nPreIMSI, 0); //设置 SIM 卡的 IMSI if (0 != nRet) //判断返回值,并对异常情况做处理 { COS_LOGI(0x0810099d, "ERROR set issue IMSI\n"); return ERR_SUCCESS; } UINT8 nSignalLevel = 0; UINT8 nBitError = 0; nbiot_atGetUeRssiAndBer(&nSignalLevel, &nBitError); //获取信号强度和误码 UINT32 Ret = 0; UINT8 uData = 1; CFW_CfgSetNwStatus(uData, 0);//设置网络注册使能状态 if (0 != Ret) //判断返回值,并对异常情况做处理 { COS_LOGI(0x0810099d, "ERROR set nwstatus\n"); return ERR_SUCCESS; } UINT8 nStatusURC = 0x0; CFW_CfgGetNwStatus(&nStatusURC, 0);//查询网络注册使能状态 if (0 != Ret) //判断返回值,并对异常情况做处理 { COS_LOGI(0x0810099d, "ERROR get nwstatus\n"); return ERR_SUCCESS; } CFW_NW_STATUS_INFO nStatusInfo; int ret; ret = CFW_NwGetStatus(&nStatusInfo, nSim); if (0 == ret)//返回值成功的情况下 { COS_LOGI(0x100048f5, "+CREG: nStatus %d\n\r", nStatusInfo.nStatus);//网络注册情况 COS_LOGI(0x100048f5, "%02x%02x", nStatusInfo.nAreaCode[3], nStatusInfo.nAreaCode[4]);/* 位置区编号*/ COS_LOGI(0x100048f5, "%02x%02x", nStatusInfo.nCellId[0], nStatusInfo.nCellId[1]);/*小区编号 */ } CFW_EMOD_LOCT_PRODUCT_INFO sProInfo = {0,}; CFW_EmodGetProductInfo(&sProInfo); //获取序列号 int i; for(i=0; i<64; i++) /*利用 for 循环对序列号数组中的数字进行逐个输出,序列号数组 长度为 64,循环 64 次即可*/ COS_LOGI(0x10004396, "%d", sProInfo.nBoardSN[i]); UINT32 basebandVersion; basebandVersion = CFW_EmodGetBaseBandVersion();//获取基带版本信息 ```