diff --git a/code/application/source/sf_app/code/source/systemMng/sf_commu_mcu_reg.c b/code/application/source/sf_app/code/source/systemMng/sf_commu_mcu_reg.c index 60210d0fd..bb01e71d9 100755 --- a/code/application/source/sf_app/code/source/systemMng/sf_commu_mcu_reg.c +++ b/code/application/source/sf_app/code/source/systemMng/sf_commu_mcu_reg.c @@ -167,7 +167,16 @@ unsigned char sf_mcu_power_on_para_get (MCUParam_t attrId) mcuReg[i++] = START_MODE; mcuReg[i++] = LUMINANCE_L; mcuReg[i++] = LUMINANCE_H; - sf_mcu_read_multi(mcuReg, mcuData, i); + if(FAIL == sf_mcu_read_multi(mcuReg, mcuData, i)) + { + if(startflag) + { + startflag = 0; + i = 0; + sf_sleep_ms(200); + goto SF_CHK_STARTMODE; + } + } i = 0; McuSubVersion = mcuData[i++]; @@ -182,12 +191,6 @@ unsigned char sf_mcu_power_on_para_get (MCUParam_t attrId) 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); sf_mcu_rtc_get(&time); if(startMode == startModetmp)