Bonjour à tous,
Dans mon code, je declare un tableau à une adresse afin de faire de la reprogrammation memoire FSL sous IAR RL78.
Mon but est de créer une fonction qui parcourt ce tableau et me donne la premiere adresse contenant 0xFF pour l'appeler plus tard dans mon code.
J'obtiens l'erreur suivante:Code:__no_init __far char a_DataStored[FLASH_ARRAY_KB_SIZE] @0x00B800; /* declaration du tableau */ void HAL_Flash_RefreshStoredData(void) { char i, Status; int Index = 0; Status = Flash_blankcheck(START_BLOCK_NUM); if (Status == FSL_OK) /* if block is blank */ { /* Init the array containing the data to store */ for (i=0; i<FLASH_ARRAY_KB_SIZE; i++) { if ((i%2) == 0) a_FlashData[i] = i; /* IDs */ else a_FlashData[i] = 0; /* Init values */ } } else if (Status == FSL_ERR_BLANKCHECK)/* Some data have already been saved in the Flash */ { Index = HAL_Flash_GetAddressOffset(a_DataStored); for (i=0; i<FLASH_ARRAY_KB_SIZE; i++) { a_FlashData[i] = a_DataStored[i]; } } else { Flash_erase(START_BLOCK_NUM); } } int Flash_GetAddressOffset (__far char* p_Array) { int Index = 0; char Flag = 0; while ((Index < BLOCK_SIZE) && (Flag != 1)) { if (*(p_Array+Index) != 0xFF) { Index++; } else { Flag = 1; } } return (Index ); }
Error[Pe167]: argument of type "char __far*" is incompatible with parameter of type "char*"
Quelqu'un aurait-une idée de pourquoi j'ai cette erreur?
Merci!
-----