diff --git a/code/application/source/sf_app/code/source/4gMng/sf_eg91_sim.c b/code/application/source/sf_app/code/source/4gMng/sf_eg91_sim.c index c0d677c84..2016d3a8e 100755 --- a/code/application/source/sf_app/code/source/4gMng/sf_eg91_sim.c +++ b/code/application/source/sf_app/code/source/4gMng/sf_eg91_sim.c @@ -2314,7 +2314,7 @@ SINT32 sf_module_complete_init(void) UINT8 strSave[21] = { 0 }; UINT8 strNow[21] = { 0 }; UINT8 strtmp[12][70] = { { 0 } }; - + SF_TTY_DATA_TYPE_S ttyData = { .waitMs = 1000, .len = 3, .lenMax = (GPRS_INFO_LINE_MAX-1), .cmp = "OK", .cmperr = "ERROR", .data = gsmPara}; char *pTemp = NULL; char *delim = NULL; @@ -2339,6 +2339,9 @@ SINT32 sf_module_complete_init(void) ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); callTime = 0; + //ttyData.cmp = "OK"; + ttyData.len = 21; + //sf_sleep_ms(50); } else if(strstr((const char *)gsmPara, "CME ERROR: SIM not inserted")) { @@ -2356,6 +2359,8 @@ SINT32 sf_module_complete_init(void) ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); //printf("ttyRet:%d\n", ttyRet); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + //ttyData.cmp = "ATE1"; + ttyData.len = strlen(gsmPara) + 2; } break; @@ -2400,6 +2405,8 @@ SINT32 sf_module_complete_init(void) ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); callTime = 0; + ttyData.cmp = "Revision"; + ttyData.len = 20; } else { @@ -2457,6 +2464,8 @@ SINT32 sf_module_complete_init(void) ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); callTime = 0; + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; } else { @@ -2504,6 +2513,8 @@ SINT32 sf_module_complete_init(void) } ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; } else { @@ -2527,6 +2538,7 @@ SINT32 sf_module_complete_init(void) strcpy((char *)gsmPara, "AT+QSIMSTAT?\r"); ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + ttyData.len = strlen(gsmPara) + 2; } else { @@ -2585,6 +2597,7 @@ SINT32 sf_module_complete_init(void) ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); callTime = 0; + ttyData.len = strlen(gsmPara) + 2; } else if((strstr((const char *)gsmPara, "+QSIMSTAT: 0,2"))) { @@ -2635,7 +2648,7 @@ SINT32 sf_module_complete_init(void) ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); callTime = 0; - + ttyData.len = strlen(gsmPara) + 2; break; case QUECTEL_NETREG_QCFG_NTP: @@ -2646,6 +2659,7 @@ SINT32 sf_module_complete_init(void) strcpy((char *)gsmPara, "AT+QURCCFG=\"urcport\",\"usbat\"\r"); ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + ttyData.len = strlen(gsmPara) + 2; } break; @@ -2658,6 +2672,7 @@ SINT32 sf_module_complete_init(void) strcpy((char *)gsmPara, "AT+QCFG=\"risignaltype\",\"physical\"\r"); ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + ttyData.len = strlen(gsmPara) + 2; } break; @@ -2670,6 +2685,7 @@ SINT32 sf_module_complete_init(void) strcpy((char *)gsmPara, "AT+QCFG=\"urc/ri/other\",\"off\"\r"); ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + ttyData.len = strlen(gsmPara) + 2; } break; @@ -2789,6 +2805,7 @@ SINT32 sf_module_complete_init(void) strcpy((char *)gsmPara, "AT+CPIN?\r"); ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + ttyData.len = strlen(gsmPara) + 2; } else{ if(strstr((const char *)gsmPara, "OK")) @@ -2797,6 +2814,7 @@ SINT32 sf_module_complete_init(void) strcpy((char *)gsmPara, "AT+CPIN?\r"); ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + ttyData.len = strlen(gsmPara) + 2; } } break; @@ -2813,6 +2831,8 @@ SINT32 sf_module_complete_init(void) strcpy((char *)gsmPara, "AT+QCCID\r"); ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + ttyData.cmp = "+QCCID:"; + ttyData.len = MODULE_ICCID_LEN; } else { @@ -2925,6 +2945,7 @@ SINT32 sf_module_complete_init(void) ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); callTime = 0; + ttyData.len = strlen(gsmPara) + 2; } break; @@ -2940,6 +2961,8 @@ SINT32 sf_module_complete_init(void) ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); callTime = 0; + ttyData.cmp = "+QCCID:"; + ttyData.len = MODULE_ICCID_LEN; } else { @@ -3017,7 +3040,8 @@ SINT32 sf_module_complete_init(void) break; } sf_gsm_para_buff_clear(); - sf_hal_ttyusb2_read(gsmPara, 200); + //sf_hal_ttyusb2_read(gsmPara, 200); + sf_hal_ttyusb2_read_buf(&ttyData); if(gsmPara[0] != '\0') { @@ -3068,8 +3092,8 @@ SINT32 sf_net_regist_manual(void) UINT8 strtmp[12][70] = { { 0 } }; char *pTemp = NULL; char *delim = NULL; - UIMenuStoreInfo *puiPara = sf_app_ui_para_get(); + SF_TTY_DATA_TYPE_S ttyData = { .waitMs = 500, .len = 3, .lenMax = (GPRS_INFO_LINE_MAX-1), .cmp = "OK", .cmperr = "ERROR", .data = gsmPara}; SF_LOG(" s\n"); @@ -3093,6 +3117,8 @@ SINT32 sf_net_regist_manual(void) strcpy((char *)gsmPara, "AT+CIMI\r"); ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; break; case QUECTEL_NETREG_CIMI_1: @@ -3176,7 +3202,8 @@ SINT32 sf_net_regist_manual(void) eNetRegLocation = QUECTEL_NETREG_CGDCONT; } - + //ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen((const char *)gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); @@ -3228,6 +3255,8 @@ SINT32 sf_net_regist_manual(void) ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen((const char *)gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + //ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; } else { @@ -3244,6 +3273,8 @@ SINT32 sf_net_regist_manual(void) sprintf((char *)gsmPara, "%s", "AT+QICSGP=1\r"); ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen((const char *)gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; } break; @@ -3285,6 +3316,8 @@ SINT32 sf_net_regist_manual(void) ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen((const char *)gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; } break; @@ -3336,6 +3369,8 @@ SINT32 sf_net_regist_manual(void) SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); callTime = SF_QUECTEL_NET_REG_CALLTIME_MAX; /*4 min*/ + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; } break; @@ -3370,6 +3405,8 @@ SINT32 sf_net_regist_manual(void) ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen((const char *)gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); } + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; } else { @@ -3461,7 +3498,8 @@ SINT32 sf_net_regist_manual(void) SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); AddCimiTimes++; time = 0; - + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; //sf_set_netsearch_step(GPRS_SEARCH_STEP_RETRYING); //sp5kHostMsgSend(APP_UI_MSG_TRANSFER_REFLUSH, 0, 0, 0); } @@ -3483,6 +3521,8 @@ SINT32 sf_net_regist_manual(void) strcpy((char *)gsmPara, "AT+QCFG=\"tcp/windowsize\",0,100\r"); ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen((const char *)gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; } break; @@ -3495,6 +3535,8 @@ SINT32 sf_net_regist_manual(void) strcpy((char *)gsmPara, "AT+QCFG=\"tcp/windowsize\",1,100\r"); ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen((const char *)gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; } break; @@ -3508,6 +3550,8 @@ SINT32 sf_net_regist_manual(void) ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen((const char *)gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); callTime = 0; + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; } break; @@ -3560,6 +3604,8 @@ SINT32 sf_net_regist_manual(void) SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); callTime = 0; } + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; } else { @@ -3606,6 +3652,8 @@ SINT32 sf_net_regist_manual(void) strcpy((char *)gsmPara, "AT+COPS?\r"); ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen((const char *)gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; } else { @@ -3672,6 +3720,8 @@ SINT32 sf_net_regist_manual(void) ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen((const char *)gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); sf_sleep_ms(300); + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; } } else if(cqSignal <= 1) @@ -3728,6 +3778,8 @@ SINT32 sf_net_regist_manual(void) strcpy((char *)gsmPara, "AT&W\r"); ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen((const char *)gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; } else { @@ -3748,7 +3800,8 @@ SINT32 sf_net_regist_manual(void) break; } sf_gsm_para_buff_clear(); - sf_hal_ttyusb2_read(gsmPara, 200); + //sf_hal_ttyusb2_read(gsmPara, 200); + sf_hal_ttyusb2_read_buf(&ttyData); if(gsmPara[0] != '\0') { @@ -3804,6 +3857,7 @@ SINT32 sf_auto_net_reg(void) char *delim = NULL; UIMenuStoreInfo *puiPara = sf_app_ui_para_get(); + SF_TTY_DATA_TYPE_S ttyData = { .waitMs = 500, .len = 3, .lenMax = (GPRS_INFO_LINE_MAX-1), .cmp = "OK", .cmperr = "ERROR", .data = gsmPara}; SF_LOG(" s\n"); @@ -3824,6 +3878,7 @@ SINT32 sf_auto_net_reg(void) ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); eNetRegLocation = QUECTEL_NETREG_QSIMSTAT; + ttyData.len = strlen(gsmPara) + 2; } else if(strstr((const char *)gsmPara, "ERROR")) { @@ -3838,6 +3893,7 @@ SINT32 sf_auto_net_reg(void) strcpy((char *)gsmPara, "ATE1\r"); ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen((const char *)gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + ttyData.len = strlen(gsmPara) + 2; } break; @@ -3886,6 +3942,7 @@ SINT32 sf_auto_net_reg(void) ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen((const char *)gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + ttyData.len = strlen(gsmPara) + 2; } else if((strstr((const char *)gsmPara, "+QSIMSTAT: 0,2"))) { @@ -3938,6 +3995,7 @@ SINT32 sf_auto_net_reg(void) ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen((const char *)gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); //DelayTime = 50; + ttyData.len = strlen(gsmPara) + 2; } break; @@ -3966,6 +4024,8 @@ SINT32 sf_auto_net_reg(void) ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen((const char *)gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; } break; @@ -3980,6 +4040,8 @@ SINT32 sf_auto_net_reg(void) SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); callTime = SF_QUECTEL_NET_REG_CALLTIME_MAX; /*4 min*/ + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; } break; @@ -4028,6 +4090,8 @@ SINT32 sf_auto_net_reg(void) sprintf((char *)gsmPara, "AT+CIMI\r"); ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen((const char *)gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; } } else @@ -4092,7 +4156,8 @@ SINT32 sf_auto_net_reg(void) SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); AddCimiTimes++; time = 0; - + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; //sf_set_netsearch_step(GPRS_SEARCH_STEP_RETRYING); //sp5kHostMsgSend(APP_UI_MSG_TRANSFER_REFLUSH, 0, 0, 0); } @@ -4154,6 +4219,8 @@ SINT32 sf_auto_net_reg(void) SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); callTime = 0; } + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; } else { @@ -4302,7 +4369,8 @@ SINT32 sf_auto_net_reg(void) } sf_gsm_para_buff_clear(); - sf_hal_ttyusb2_read(gsmPara, 200); + //sf_hal_ttyusb2_read(gsmPara, 200); + sf_hal_ttyusb2_read_buf(&ttyData); if(gsmPara[0] != '\0') { @@ -4457,6 +4525,7 @@ SINT32 sf_get_utc(VOID) printf("[%s:%d] s\n", __FUNCTION__, __LINE__); UIMenuStoreInfo *pPara = sf_app_ui_para_get(); + SF_TTY_DATA_TYPE_S ttyData = { .waitMs = 2000, .len = 3, .lenMax = (GPRS_INFO_LINE_MAX-1), .cmp = "OK", .cmperr = "ERROR", .data = gsmPara}; sf_gsm_para_buff_clear(); @@ -4521,6 +4590,8 @@ SINT32 sf_get_utc(VOID) strcpy((char *)gsmPara, "AT+QLTS=2\r"); ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; } } @@ -4530,8 +4601,8 @@ SINT32 sf_get_utc(VOID) break; } sf_gsm_para_buff_clear(); - - sf_hal_ttyusb2_read(gsmPara, 200); + //sf_hal_ttyusb2_read(gsmPara, 200); + sf_hal_ttyusb2_read_buf(&ttyData); if(gsmPara[0] != '\0') { @@ -4588,6 +4659,7 @@ SINT32 sf_get_ntp(SINT32 value, SF_PARA_TIME_S *current_time) printf("[%s:%d] s\n", __FUNCTION__, __LINE__); UIMenuStoreInfo *pPara = sf_app_ui_para_get(); + SF_TTY_DATA_TYPE_S ttyData = { .waitMs = 2000, .len = 3, .lenMax = (GPRS_INFO_LINE_MAX-1), .cmp = "OK", .cmperr = "ERROR", .data = gsmPara}; sf_gsm_para_buff_clear(); @@ -4615,6 +4687,8 @@ SINT32 sf_get_ntp(SINT32 value, SF_PARA_TIME_S *current_time) ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen(gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); eSmsLocation = SMS_SIM_INIT_CNTPTO; + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; break; case SMS_SIM_INIT_CNTPTO: @@ -4627,6 +4701,8 @@ SINT32 sf_get_ntp(SINT32 value, SF_PARA_TIME_S *current_time) SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); eSmsLocation = SMS_SIM_INIT_ATCNTP; calltime = 0; + ttyData.cmp = "OK"; + ttyData.len = strlen(gsmPara) + 2; } else if(strstr((const char *)gsmPara, "ERROR") != NULL) { @@ -4759,7 +4835,8 @@ SINT32 sf_get_ntp(SINT32 value, SF_PARA_TIME_S *current_time) break; } sf_gsm_para_buff_clear(); - sf_hal_ttyusb2_read(gsmPara, 200); + //sf_hal_ttyusb2_read(gsmPara, 200); + sf_hal_ttyusb2_read_buf(&ttyData); if(gsmPara[0] != '\0') {