Заменил ф-ю прошивки флеша на корректную
This commit is contained in:
parent
9e5a6e2abe
commit
e7802cd4ac
@ -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)
|
void getMessage_from_Cm_Flash(void)
|
||||||
{
|
{
|
||||||
uint16_t FlashSektorStart = 0;
|
uint16_t FlashSektorStart = 0;
|
||||||
@ -143,7 +147,7 @@ void getMessage_from_Cm_Flash(void)
|
|||||||
}
|
}
|
||||||
if(FlashSektorEnd == FlashSektorStart) //если заканчиваем в этом же секторе что и начали, то просто пишем его
|
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;}//если ошибка -- отправляем сообщение и завершаем
|
if(MemOperationError) {IPC_sendCommand(IPC_CPU1_L_CM_R, MemOperationError, INT_FLASH, 0, 0); return;}//если ошибка -- отправляем сообщение и завершаем
|
||||||
}
|
}
|
||||||
else //если начали в одном секторе, а заканчиваем в другом то
|
else //если начали в одном секторе, а заканчиваем в другом то
|
||||||
@ -156,9 +160,9 @@ void getMessage_from_Cm_Flash(void)
|
|||||||
}
|
}
|
||||||
block1 = internal_flash_FlashBankStartAddr(FlashSektorEnd)-FactAddressFlash; //вычисляем размер первого куска
|
block1 = internal_flash_FlashBankStartAddr(FlashSektorEnd)-FactAddressFlash; //вычисляем размер первого куска
|
||||||
block2 = InData - block1; //и размер куска для второго сектора
|
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;}//если ошибка -- отправляем сообщение и завершаем
|
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;}//если ошибка -- отправляем сообщение и завершаем
|
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);
|
IPC_sendCommand(IPC_CPU1_L_CM_R, DONE_SUCCESS, INT_FLASH, 0, 0);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user