Обновление
This commit is contained in:
parent
ffea4d3d23
commit
8c5527b1d7
18
CanUds.c
18
CanUds.c
|
|
@ -1014,9 +1014,9 @@ static uint16_t vUDS_routine_Erase_Memory(tCanUds *env, eUdsRoutineControlType u
|
|||
return 0xFF00 | UDS_error_incorrectMessageLengthOrInvalidFormat;
|
||||
}
|
||||
|
||||
if ((env->udsFirmwareStepsMain != UDS_Firmware_Step_Preconditions) ||
|
||||
((env->udsFirmwareStepsCalib != UDS_Firmware_Step_Preconditions))) {
|
||||
return 0xFF00 | UDS_error_conditionsNotCorrect;
|
||||
if (((env->udsFirmwareStepsMain != UDS_Firmware_Step_Preconditions) && (env->udsFirmwareStepsMain != UDS_Firmware_Step_EraseMemory)) &&
|
||||
((env->udsFirmwareStepsCalib != UDS_Firmware_Step_Preconditions) && (env->udsFirmwareStepsCalib != UDS_Firmware_Step_EraseMemory))) {
|
||||
return 0xFF00 | UDS_error_requestSequenceError;
|
||||
}
|
||||
|
||||
tEraseMemory *eraseMemory = (tEraseMemory *) env->data->data;
|
||||
|
|
@ -1098,11 +1098,12 @@ vUDS_routine_Check_Programming_Dependancies(tCanUds *env, eUdsRoutineControlType
|
|||
return 0xFF00 | UDS_error_sub_functionNotSupported;
|
||||
}
|
||||
|
||||
if ((env->udsFirmwareStepsMain != UDS_Firmware_Step_EraseMemory) ||
|
||||
((env->udsFirmwareStepsCalib != UDS_Firmware_Step_EraseMemory))) {
|
||||
return 0xFF00 | UDS_error_conditionsNotCorrect;
|
||||
if (((env->udsFirmwareStepsMain != UDS_Firmware_Step_EraseMemory) && (env->udsFirmwareStepsMain != UDS_Firmware_Step_Dependancies)) &&
|
||||
((env->udsFirmwareStepsCalib != UDS_Firmware_Step_EraseMemory) && (env->udsFirmwareStepsCalib != UDS_Firmware_Step_Dependancies))) {
|
||||
return 0xFF00 | UDS_error_requestSequenceError;
|
||||
}
|
||||
|
||||
|
||||
setResponseErrorPending(env, UDS_RoutineControl, UDS_error_requestCorrectlyReceived_ResponsePending);
|
||||
|
||||
bool result = P_bInternalFlashPage_CopyRange(ADR_HEX_Mapped_BlockBoot, ADR_HEX_BlockBoot, SIZE_HEX_BlockBoot,
|
||||
|
|
@ -1240,8 +1241,7 @@ static uint16_t Routine_Control_31(tCanUds *env) {
|
|||
switch (routineIdentifier) {
|
||||
case Check_Programming_Preconditions: {
|
||||
|
||||
if ((env->currentSession == UDS_session_defaultSession) ||
|
||||
(env->currentSession == UDS_session_programmingSession)) {
|
||||
if (env->currentSession == UDS_session_defaultSession) {
|
||||
return setResponseError(env, UDS_RoutineControl, UDS_error_conditionsNotCorrect);
|
||||
}
|
||||
|
||||
|
|
@ -1547,7 +1547,7 @@ static uint16_t RequestDownload_34(tCanUds *env) {
|
|||
requestDownload_Response->ServiceId = UDS_RequestDownload | 0b1000000;
|
||||
requestDownload_Response->lengthFormatIdentifier = 0x20; // 2 байта - длина поля maxNumberOfBlockLength
|
||||
|
||||
uint8_t countBlock = 8;//31;
|
||||
uint8_t countBlock = 31;//31;
|
||||
requestDownload_Response->maxNumberOfBlockLength = countBlock * 128 + 2;
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue