1.优化读取到启动模式不相同时的处理
This commit is contained in:
parent
b1ec28e979
commit
f60c8701ab
|
@ -63,6 +63,7 @@ SINT32 sf_app_load_ko_start(void);
|
||||||
SINT32 sf_app_mcu_para_start(void);
|
SINT32 sf_app_mcu_para_start(void);
|
||||||
SINT32 app_auto_poweroff_start(void);
|
SINT32 app_auto_poweroff_start(void);
|
||||||
UINT8 sf_check_power_on_mode(void);
|
UINT8 sf_check_power_on_mode(void);
|
||||||
|
void sf_power_off_msg_to_cardv(void);
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
#if __cplusplus
|
#if __cplusplus
|
||||||
}
|
}
|
||||||
|
|
|
@ -894,7 +894,6 @@ UINT8 *sf_versionGet(UINT8 ver[],UINT8 fea[])
|
||||||
*************************************************/
|
*************************************************/
|
||||||
void sf_power_off(void)
|
void sf_power_off(void)
|
||||||
{
|
{
|
||||||
SF_MESSAGE_BUF_S stMessageBuf = {0};
|
|
||||||
UINT8 PowerOnMode = sf_poweron_type_get();
|
UINT8 PowerOnMode = sf_poweron_type_get();
|
||||||
printf("[%s:%d] s\n", __FUNCTION__, __LINE__);
|
printf("[%s:%d] s\n", __FUNCTION__, __LINE__);
|
||||||
if(SF_FAILURE == sf_check_sd())
|
if(SF_FAILURE == sf_check_sd())
|
||||||
|
@ -935,11 +934,7 @@ void sf_power_off(void)
|
||||||
sf_power_off_check_ui_para_sava();
|
sf_power_off_check_ui_para_sava();
|
||||||
sf_statistics_param_save(psfPara);
|
sf_statistics_param_save(psfPara);
|
||||||
|
|
||||||
MLOGI(" SF_KEY_PIN_AOTU_MODE_POWOFF CMD_KEY\n");
|
sf_power_off_msg_to_cardv();
|
||||||
stMessageBuf.cmdId = CMD_KEY;
|
|
||||||
stMessageBuf.arg1 = SF_EVENT_KEY_SHORT_CLICK;
|
|
||||||
stMessageBuf.arg2 = SF_KEY_PIN_AOTU_MODE_POWOFF;//auto mode powoff
|
|
||||||
sf_com_message_send_to_cardv(&stMessageBuf);
|
|
||||||
printf("[%s:%d] e\n", __FUNCTION__, __LINE__);
|
printf("[%s:%d] e\n", __FUNCTION__, __LINE__);
|
||||||
}
|
}
|
||||||
pthread_cond_t condition;
|
pthread_cond_t condition;
|
||||||
|
@ -1481,4 +1476,22 @@ SINT32 sf_app_mcu_para_stop(void)
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
return SF_SUCCESS;
|
return SF_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*************************************************
|
||||||
|
Function: sf_power_off_msg_to_cardv
|
||||||
|
Description: power off
|
||||||
|
Input: N/A
|
||||||
|
Output: N/A
|
||||||
|
Return: N/A
|
||||||
|
Others: N/A
|
||||||
|
*************************************************/
|
||||||
|
void sf_power_off_msg_to_cardv(void)
|
||||||
|
{
|
||||||
|
SF_MESSAGE_BUF_S stMessageBuf = {0};
|
||||||
|
SLOGI(" SF_KEY_PIN_AOTU_MODE_POWOFF CMD_KEY\n");
|
||||||
|
stMessageBuf.cmdId = CMD_KEY;
|
||||||
|
stMessageBuf.arg1 = SF_EVENT_KEY_SHORT_CLICK;
|
||||||
|
stMessageBuf.arg2 = SF_KEY_PIN_AOTU_MODE_POWOFF;//auto mode powoff
|
||||||
|
sf_com_message_send_to_cardv(&stMessageBuf);
|
||||||
}
|
}
|
|
@ -30,7 +30,9 @@
|
||||||
#include <sf_device.h>
|
#include <sf_device.h>
|
||||||
#include <sf_dev_usb.h>
|
#include <sf_dev_usb.h>
|
||||||
#include "sf_common.h"
|
#include "sf_common.h"
|
||||||
|
#include "sf_param_common.h"
|
||||||
#include "sf_sms.h"
|
#include "sf_sms.h"
|
||||||
|
#include "sf_system.h"
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
#if __cplusplus
|
#if __cplusplus
|
||||||
extern "C" {
|
extern "C" {
|
||||||
|
@ -128,12 +130,15 @@ unsigned char sf_mcu_power_on_para_get (MCUParam_t attrId)
|
||||||
{
|
{
|
||||||
unsigned char dataTemp1 = 0, dataTemp2 = 0;
|
unsigned char dataTemp1 = 0, dataTemp2 = 0;
|
||||||
unsigned char startMode = 0;
|
unsigned char startMode = 0;
|
||||||
|
unsigned char startModetmp = sf_poweron_type_get();
|
||||||
|
int startflag = 1;
|
||||||
//unsigned char mcuVer = 0;
|
//unsigned char mcuVer = 0;
|
||||||
unsigned char mcuReg[REG_SIZE] = { 0 };
|
unsigned char mcuReg[REG_SIZE] = { 0 };
|
||||||
unsigned char mcuData[REG_SIZE] = { 0 };
|
unsigned char mcuData[REG_SIZE] = { 0 };
|
||||||
unsigned char i = 0;
|
unsigned char i = 0;
|
||||||
SF_TIME_S time;
|
SF_TIME_S time;
|
||||||
|
|
||||||
|
SF_CHK_STARTMODE:
|
||||||
if(attrId == SF_MCU_STARTMODE)
|
if(attrId == SF_MCU_STARTMODE)
|
||||||
{
|
{
|
||||||
sf_mcu_read(START_MODE, &dataTemp1);
|
sf_mcu_read(START_MODE, &dataTemp1);
|
||||||
|
@ -163,15 +168,29 @@ unsigned char sf_mcu_power_on_para_get (MCUParam_t attrId)
|
||||||
IRSHTTER = (dataTemp2 << 8) | dataTemp1;
|
IRSHTTER = (dataTemp2 << 8) | dataTemp1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if((startMode != startModetmp) && (startflag))
|
||||||
|
{
|
||||||
|
startflag = 0;
|
||||||
|
sf_sleep_ms(200);
|
||||||
|
goto SF_CHK_STARTMODE;
|
||||||
|
}
|
||||||
printf(" start mode = %d IRSHTTER = %d McuVersion:%d.%d.%d\n", startMode, IRSHTTER, (McuVersion>>8)&0xFF, McuVersion & 0xFF, McuSubVersion);
|
printf(" start mode = %d IRSHTTER = %d McuVersion:%d.%d.%d\n", startMode, IRSHTTER, (McuVersion>>8)&0xFF, McuVersion & 0xFF, McuSubVersion);
|
||||||
sf_mcu_rtc_get(&time);
|
sf_mcu_rtc_get(&time);
|
||||||
if(SF_TRUE == sf_sys_rtc_time_check((SF_PARA_TIME_S*)&time)){
|
if(startMode == startModetmp)
|
||||||
sf_sys_rtc_time_set((SF_PARA_TIME_S*)&time);
|
{
|
||||||
}else{
|
if(SF_TRUE == sf_sys_rtc_time_check((SF_PARA_TIME_S*)&time)){
|
||||||
sf_sys_rtc_time_reset();
|
sf_sys_rtc_time_set((SF_PARA_TIME_S*)&time);
|
||||||
|
}else{
|
||||||
|
sf_sys_rtc_time_reset();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
sf_poweron_type_set(startMode);
|
else
|
||||||
if(SF_MCU_STARTUP_ONKEY == startMode)
|
{
|
||||||
|
sf_power_off_msg_to_cardv();
|
||||||
|
}
|
||||||
|
//sf_poweron_type_set(startMode);
|
||||||
|
|
||||||
|
if(SF_MCU_STARTUP_ONKEY == startModetmp)
|
||||||
ConfigureModeFlag = 1;
|
ConfigureModeFlag = 1;
|
||||||
//McuPowerOnMode = startMode;
|
//McuPowerOnMode = startMode;
|
||||||
return startMode;
|
return startMode;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user