Merci, même en changeant cela c'est toujours les mêmes erreurs (j'ai une faute de frappe).
-----

Merci, même en changeant cela c'est toujours les mêmes erreurs (j'ai une faute de frappe).
Enlève tes define "EEPROM" et les fonctions ecriture_eeprom et lecture et essayes ca :
Tu as juste 2 fonctions à établir : ecriture + lecture
Code:void write_eeprom(unsigned char address, unsigned char data) { EEADR=address; EEDATA=data; WREN = 1; // write enable EECON2 = 0x55; // protection sequence EECON2 = 0xaa; WR=1; WREN=0; while(WR==1) continue; } unsigned char read_eeprom(unsigned int address){ EEADRH = (address >> 8); EEADR = address & 0xFF; EECON1 = 0; EECON1bits.RD = 1; return EEDATA; }
Si je comprend bien cette routine fonctionne pour écrire des char dans la mémoire EEPROM:
void write_eeprom(unsigned char address, unsigned char data)
Si je veux écrire des int par exemple, je dois faire une fonction de ce type (si j'ai bien compris):
Je ne peux pas l'écrire directement avec write_eeprom ? Je teste ça ce soir ?Code:void write_eeprom_int(unsigned char adr,unsigned int valeur) { write_eeprom(adr,(unsigned char)valeur); valeur >> = 8; // decalage de 8 bits a droite write_eeprom(adr+1,(unsigned char)valeur); }
Effectivement, mais teste d'abord avec char ( 8 bits ).
J'ai finalisé mon programme pour des char et des int dans l'EEPROM. Ça fonctionne. Je poursuis avec les entrées analogiques. Est-il possible d'avoir comme pour RB0, une entrée analogique déclenchant une interruption sur un pic ?
Je connais pas bien ton pic. Qu'est ce que t'as fait avec RB0 ?Explique bien ce que tu voulais dire avec ça : " une entrée analogique déclenchant une interruption sur un pic ?"
Je me sers de RB0 comme d'une entrée où j'attend un changement d'état sur un front montant ou descendant pour déclencher mon interruption. Je cherche un pic où je pourrais faire la même chose avec une entrée analogique car RB0 est une entrée digitale sur mon pic.
Mais comment tu comptes gérer cette interruption en front montant ou descendant avec un signal analogue ??? Quel type de signal analogue ? Un comparateur te dit rien ?
Si le signal d entree est une rampe, je souhaite déclencher ma sortie si il atteint un certain seuil de tension. Cela n'est pas possible ?
Il te faut un PIC qui intègre le module comparateur analogique famille (18F 24F ...) .
J ai vu le pic 18f4550. Qu en penses-tu ? Il y a trois entrées interruptions b0 b1 et b2 qui peuvent être configurées en analogique.
Mais, tu peux utiliser une simple entrée analogie, puis tu fixes une valeur ( constante) et quand ta lecture de ce signale dépasse la valeur fixée, tu déclenches ce que tu veux .
Oui, le 18F4550 intègre 2 comparators module
