Заменил ф-ю прошивки флеша на корректную

This commit is contained in:
Eugene 2023-11-28 17:27:34 +03:00
parent 9e5a6e2abe
commit e7802cd4ac

View File

@ -109,6 +109,10 @@ void clear_BlockWasErased(void)
}
}
//#define Internal_flash_lib_Program Internal_flash_Program_DataOnlyECCOnly
#define Internal_flash_lib_Program Internal_flash_Program_AutoECC
void getMessage_from_Cm_Flash(void)
{
uint16_t FlashSektorStart = 0;
@ -143,7 +147,7 @@ void getMessage_from_Cm_Flash(void)
}
if(FlashSektorEnd == FlashSektorStart) //если заканчиваем в этом же секторе что и начали, то просто пишем его
{
MemOperationError = Internal_flash_lib_ProgramUsingDataAndECC(FactAddressFlash, InData);
MemOperationError = Internal_flash_lib_Program(FactAddressFlash, InData);
if(MemOperationError) {IPC_sendCommand(IPC_CPU1_L_CM_R, MemOperationError, INT_FLASH, 0, 0); return;}//если ошибка -- отправляем сообщение и завершаем
}
else //если начали в одном секторе, а заканчиваем в другом то
@ -156,9 +160,9 @@ void getMessage_from_Cm_Flash(void)
}
block1 = internal_flash_FlashBankStartAddr(FlashSektorEnd)-FactAddressFlash; //вычисляем размер первого куска
block2 = InData - block1; //и размер куска для второго сектора
MemOperationError = Internal_flash_lib_ProgramUsingDataAndECC(FactAddressFlash, block1); // è ïèøåì ñïåðâà êóñîê â ïåðâûé ñåêòîð,
MemOperationError = Internal_flash_lib_Program(FactAddressFlash, block1); // è ïèøåì ñïåðâà êóñîê â ïåðâûé ñåêòîð,
if(MemOperationError) {IPC_sendCommand(IPC_CPU1_L_CM_R, MemOperationError, INT_FLASH, 0, 0); return;}//если ошибка -- отправляем сообщение и завершаем
MemOperationError = Internal_flash_lib_ProgramUsingDataAndECC(internal_flash_FlashBankStartAddr(FlashSektorEnd), block2); // ïîòîì êóñîê âî âòîðîé
MemOperationError = Internal_flash_lib_Program(internal_flash_FlashBankStartAddr(FlashSektorEnd), block2); // ïîòîì êóñîê âî âòîðîé
if(MemOperationError) {IPC_sendCommand(IPC_CPU1_L_CM_R, MemOperationError, INT_FLASH, 0, 0); return;}//если ошибка -- отправляем сообщение и завершаем
}
IPC_sendCommand(IPC_CPU1_L_CM_R, DONE_SUCCESS, INT_FLASH, 0, 0);