Salut,
Je sais que les gros membres de ce forum vont me taper sur les doigts lorsque je parle de simulation, mais pour l'instant je n'ai pas le choix parce que je n'ai pas le matériel disponible et je suis pas certain que mon problème vienne de la simulation.
Problème :
Le code est ultra simple. Je veux mettre la Pin RC0 à 1, puis tout de suite après la pin RC1 à1. Mais des que je mais RC1 à 1, RC0 passe à 0 automatiquement.
Bizarre non ?
Ce genre de problème de devrait pas arriver dans Isis, c'est tellement basique que le problème vient forcément de mon code.
Je pense à la configuration du composant ou quelque chose du genre.
Voici le code :
Code:;******************************************************************* ; ; Code Source Badge ; ;******************************************************************* errorlevel -302 ; supprime l'alerte sur les banks ;******************************************************************* ; Configuration du compilateur ;******************************************************************* list p=16F688 include <p16F688.inc> ;******************************************************************* ; Configuration du registre d'état du microcontroleur ;******************************************************************* __CONFIG _CP_OFF & _WDT_OFF & _PWRTE_OFF & _XT_OSC ;******************************************************************* ; Define ;******************************************************************* #define SCLK PORTC,0 #define donnees PORTC,1 ;******************************************************************* ; Definition des variables ;******************************************************************* cblock 0x20 ; adresse de debut de la RAM pour les variables endc ;******************************************************************* ; definition des macros ;******************************************************************* bank1 macro bsf STATUS,RP0 ; sélectionne la page1 endm bank0 macro bcf STATUS,RP0 ; selectionne la page2 endm ;********************************************************************** ; DEMARRAGE SUR RESET * ;********************************************************************** org 0x000 ; Adresse de départ après reset goto debut ; Adresse 0: initialiser org 0x004 ; adresse d'interruption retfie ; return from interrupt ;******************************************************************* ; Début du code source ;******************************************************************* debut call init bsf donnees bsf SCLK boucle nop goto boucle ;******************************************************************* ; ; définitions des sous routines ; ;******************************************************************* ;******************************************************************* ; initialisation du micro controleur ;******************************************************************* init bank1 ; Configuration générale du PIC movlw b'000000' ; configure le port A en sortie movwf TRISA movlw b'000000' ; configure le port B en sortie movwf TRISC movlw b'00000111' movwf OPTION_REG bank0 clrf PORTA ; efface les PORTA et B clrf PORTC return ; fin du sous programme
Merci d'avance pour votre aide.
-----