From 409b49d5dd1254c67e21212bf4899f941cf14d44 Mon Sep 17 00:00:00 2001 From: payton Date: Thu, 7 Dec 2023 15:55:48 +0800 Subject: [PATCH] =?UTF-8?q?1.=E4=BC=98=E5=8C=96=E5=85=B3=E6=9C=BA=E8=AF=BB?= =?UTF-8?q?=E5=8F=96sd=E5=8D=A1=E4=BF=A1=E6=81=AF=EF=BC=9B2.=E4=BC=98?= =?UTF-8?q?=E5=8C=96=E7=9F=AD=E4=BF=A1=E8=AF=BB=E5=8F=96=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../source/sf_app/code/source/4gMng/sf_sms.c | 74 +++++++++++-------- 1 file changed, 43 insertions(+), 31 deletions(-) diff --git a/code/application/source/sf_app/code/source/4gMng/sf_sms.c b/code/application/source/sf_app/code/source/4gMng/sf_sms.c index fa0a0f05a..b918f74e4 100755 --- a/code/application/source/sf_app/code/source/4gMng/sf_sms.c +++ b/code/application/source/sf_app/code/source/4gMng/sf_sms.c @@ -637,6 +637,7 @@ UINT8 sf_message_data_processing(UINT8 strValue[30][32], UINT16 mm, UINT8 *sms_s printf("Error Parameter line:%d i=%d\n", __LINE__, i); Readmmsok = SMS_STATUS_PARA_ERR; } + SLOGI("GprsMode:%d SendType:%d Delay:%d %d:%d:%d\n", pPara_sms_saved->GprsMode, pPara_sms_saved->SendType, pPara_sms_saved->PirDelaySwitch, pPara_sms_saved->PirDelayTime.Hour, pPara_sms_saved->PirDelayTime.Min, pPara_sms_saved->PirDelayTime.Sec); } else { @@ -1329,21 +1330,30 @@ SINT32 sf_sms_read_message(void) sprintf((char *)gsmPara, "AT+CMGF=1\r"); printf("%s:%d %s\n", __FUNCTION__, __LINE__, gsmPara); ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen((const char *)gsmPara)); - printf("%s:%d s\n", __FUNCTION__, __LINE__); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); ttyData.cmp = "OK"; - ttyData.len = strlen(gsmPara) + 2; + ttyData.len = 255; break; case SMS_SIM_IRA: - eSmsLocation = SMS_SIM_CMGR; - strcpy((char *)gsmPara, "AT+CSCS=\"IRA\"\r"); //text mode + if(strstr((const char *)gsmPara, "OK")) + { + eSmsLocation = SMS_SIM_CMGR; + strcpy((char *)gsmPara, "AT+CSCS=\"IRA\"\r"); //text mode + + printf("%s:%d s\n", __FUNCTION__, __LINE__); + ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen((const char *)gsmPara)); + SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + ttyData.cmp = "OK"; + ttyData.len = 255; + } + else if(time%2){ + sprintf((char *)gsmPara, "AT+CMGF=1\r"); + printf("%s:%d %s\n", __FUNCTION__, __LINE__, gsmPara); + ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen((const char *)gsmPara)); + SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); + } - printf("%s:%d s\n", __FUNCTION__, __LINE__); - 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; case SMS_SIM_CMGR: @@ -1427,8 +1437,8 @@ SINT32 sf_sms_read_message(void) sprintf((char *)gsmPara, "AT+CMGR=%d\r", number); //read message ttyRet = sf_hal_ttyusb2_write(gsmPara, strlen((const char *)gsmPara)); SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); - ttyData.cmp = "+CMGR:"; - ttyData.len = strlen(gsmPara) + 2; + ttyData.cmp = "OK"; + ttyData.len = 255; //number++; if((pSifarPara->SmsFlag == 1) && (msmll)) { @@ -1439,6 +1449,7 @@ SINT32 sf_sms_read_message(void) { number++; } + printf("\n[%s:%d] gsmPara:%s\n", __FUNCTION__, __LINE__, gsmPara); break; @@ -1563,7 +1574,7 @@ SINT32 sf_sms_read_message(void) SF_CHECK_RETURN(ttyRet, SF_GPRS_MODULE_ERROR_WRITE); eSmsLocation = SMS_SIM_EXIT; ttyData.cmp = "OK"; - ttyData.len = strlen(gsmPara) + 2; + ttyData.len = 255; break; case SMS_SIM_EXIT: @@ -1584,11 +1595,14 @@ SINT32 sf_sms_read_message(void) //sf_hal_ttyusb2_read(gsmPara, 200); sf_hal_ttyusb2_read_buf(&ttyData); printf("-----eSmsLocation:%d-----time:%d-----\n", eSmsLocation, time); - - if((gsmPara[0] != '\0') && (eSmsLocation != SMS_SIM_PARA)) - { - printf("gsmPara===>%s<================end\n", gsmPara); - } + if(pPara->DebugMode) + { + printf("[%s:%d]gsmPara===>%s<================end\n", __FUNCTION__, __LINE__, gsmPara); + } + else if((gsmPara[0] != '\0') && (eSmsLocation != SMS_SIM_PARA)) + { + printf("[%s:%d]gsmPara===>%s<================end\n", __FUNCTION__, __LINE__, gsmPara); + } time++; @@ -2424,28 +2438,26 @@ SINT32 sf_power_off_check_sd(void) { //sf_ErrorLogCopyToCard(); //sf_FlowLogCopyToCard(); - - if((puiPara->SdLoopSwitch) && (!sf_get_mode_flag())) - { - sf_sd_info_get(&storeattrs); - if((storeattrs.SDStatus == 0) & (storeattrs.SDFree < SDLOOP_REMAIN_SPACE)) - { - // sf_sd_loopremove(SF_DCIM_DIR); - sf_app_sd_loop(); - } - - } - if(sf_in_card_exist()) { if(sf_get_mode_flag() || ((0 == puiPara->SendType))) sf_delete_send_flie_list(); } - + /*check disk free size*/ - SF_STORE_ATTR_S storeattrs = {0}; sf_sd_info_get(&storeattrs); + if((puiPara->SdLoopSwitch) && (!sf_get_mode_flag())) + { + if((storeattrs.SDStatus == 0) & (storeattrs.SDFree < SDLOOP_REMAIN_SPACE)) + { + // sf_sd_loopremove(SF_DCIM_DIR); + sf_app_sd_loop(); + /*check disk free size*/ + sf_sd_info_get(&storeattrs); + } + } + printf("SD free=%dM/%dM\n", storeattrs.SDFree, storeattrs.SDTotalSize); if(storeattrs.SDFree < 30) /* 30MB */