1.优化关机读取sd卡信息;2.优化短信读取流程

This commit is contained in:
payton 2023-12-07 15:55:48 +08:00
parent 7874a6336e
commit 409b49d5dd

View File

@ -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 */