Обновление

This commit is contained in:
cfif 2025-12-24 16:47:12 +03:00
parent 010bb1fc15
commit 874d891aac
2 changed files with 7 additions and 6 deletions

View File

@ -310,7 +310,7 @@ typedef struct __attribute__ ((packed)) {
typedef struct __attribute__ ((packed)) {
eXcpTypeCommand COM;
uint8_t BIT_OFFSET;
uint16_t ODT_ENTRY_SIZE;
uint8_t ODT_ENTRY_SIZE;
uint8_t ADR_EXT;
uint32_t ADR;
} eXcpCommand_WRITE_DAQ;
@ -354,14 +354,14 @@ typedef struct __attribute__ ((packed)) {
typedef struct __attribute__ ((packed)) {
eXcpTypeCommand COM;
uint8_t RESERVED;
uint8_t DAQ_LIST_NUMBER;
uint16_t DAQ_LIST_NUMBER;
uint8_t ODT_COUNT;
} eXcpCommand_ALLOC_ODT;
typedef struct __attribute__ ((packed)) {
eXcpTypeCommand COM;
uint8_t RESERVED;
uint8_t DAQ_LIST_NUMBER;
uint16_t DAQ_LIST_NUMBER;
uint8_t ODT_NUMBER;
uint8_t ODT_ENTRIES_COUNT;
} eXcpCommand_ALLOC_ODT_ENTRY;

View File

@ -125,7 +125,7 @@ static uint8_t XCP_COMMAND_CONNECT_FF(tCanSerialPortFrameXCP *env) {
xcpCommand_CONNECT->reserve5 = 0;
xcpCommand_CONNECT->reserve6 = 0;
xcpCommand_CONNECT->reserve7 = 0;
xcpCommand_CONNECT->SLAVE_BLOCK_MODE = 0; // Блочный режим не поддерживается
xcpCommand_CONNECT->SLAVE_BLOCK_MODE = 1; // Блочный режим не поддерживается
xcpCommand_CONNECT->OPTIONAL = 1; // Поддержка команды XCP_COMMAND_GET_STATUS
xcpCommand_CONNECT->MAX_CTO_ = MAX_CTO;
@ -232,6 +232,7 @@ static uint8_t XCP_UNLOCK_F7(tCanSerialPortFrameXCP *env) {
static uint8_t XCP_COMMAND_SET_MTA_F6(tCanSerialPortFrameXCP *env) {
eXcpCommand_SET_MTA *request = (eXcpCommand_SET_MTA *) env->canFrame.data;
/*
if (((request->ADR < env->startRamAdr) || (request->ADR > env->endRamAdr)) &&
((request->ADR < env->startFlashAdr) || (request->ADR > env->endFlashAdr))) {
@ -243,7 +244,7 @@ static uint8_t XCP_COMMAND_SET_MTA_F6(tCanSerialPortFrameXCP *env) {
return 2;
}
*/
env->ADR_EXT = request->ADR_EX;
env->ADR_MTA = request->ADR;
@ -1345,7 +1346,7 @@ _Noreturn void CanXcpProcessing_Service_Dto_Daq_Task(tCanSerialPortFrameXCP *env
if (count_size_tail) {
memcpy(&env->response[2], &env->DATA[size], count_size_tail);
env->ioCanFrame->transmit(env->ioCanFrame->env, env->response,
count_size_tail,
count_size_tail + 2,
PROTOCOL_CAN_ADR_XCP, PROTOCOL_CAN_TYPE_XCP,
1000);
}