Bonjour,
j'ai une fonction qui me permet, je crois ! d'écrire en mémoire flash de mon micro, je dis je crois par ce que j'ai une autre fonction qui me permet de lire dans cette même mémoire pour voir si mes deux fonction fonctionne bien.
Le problème comme vous pouvez vous en douter, est que je ne sais pas laquelle des deux fonctions ne remplissent pas leur rôle, pour ça il me faudrait regarder dans ma mémoire flash si la fonction d'écriture fonctionne déjà, seulement sur MPLAB je ne sais pas ou regarder, dans view/mémory je ne vois rien qui ressemblerai à la valeur enregistrer.
Ma fonction d'écriture est
Puis celle qui a priori devrait lire, je suis encore moins sûr d'elleCode:void NVMWriteWord (void* address, unsigned int data) { unsigned int res; unsigned int intStatus; // Load data into NVMDATA register NVMDATA = data; // Load address to program into NVMADDR register NVMADDR = (unsigned int) address; NVMCON = 0x4001; intStatus = INTDisableInterrupts(); NVMKEY = 0xAA996655; NVMKEY = 0x556699AA; // Start the operation using the Set Register NVMCONSET = 0x8000; NVMCONCLR = 0x0004000; INTRestoreInterrupts(intStatus); }
Déjà il me faudrait s'avoir si ma valeur est bien en mémoire, seulement je ne sais pas ou doit-elle être ? à quelle adresse ?Code:void NVMReadWord (void* address, unsigned int data) { unsigned int res; // Load address to program into NVMADDR register NVMADDR = (unsigned int) address; data = NVMDATA; }
Merci de me faire profiter de votre expérience
-----