Probleme EUSART du PIC 18F45K80
Répondre à la discussion
Affichage des résultats 1 à 19 sur 19

Probleme EUSART du PIC 18F45K80



  1. #1
    invite00f988c1

    Probleme EUSART du PIC 18F45K80


    ------

    Bonjour à tous,

    Alors voila,
    J’envoie une octet de donner sur le PIC (18F45K80) via le port USB du PC.
    Sauf que avec n'importe quelle valeur de l'octet envoyé, l'EUSART reçoit toujours 0 sur le RX1.
    Je voulais donc savoir si vous pourriez m'aider a comprendre pourquoi ?

    De plus, j'utilise une horloge de 20Mhz.

    Voici le code que j'ai écrit:
    Code:
    /************** P R A G M A *********************************************************/
    #pragma config XINST = OFF //Pour Eviter certains bugs.
    
    /************** I N C L U D E S *****************************************************/
    #include <p18f45k80.h>
    #include <delays.h>
    #include <usart.h>			// Afin de pouvoir utiliser les commandes EUSART.
    #include "temporisation.h" 	// Pour simplifier les delays.
    
    /************* P R I V A T E  P R O T O T Y P E S *************************************/
    void Init_USART1(void);
    char READ_USART(void);
    
    /************* D E C L A R A T I O N S ************************************************/
    void Init_USART1(void)
    {
    	// Permet d'initialiser le USART1.
    	Open1USART( USART_TX_INT_OFF & 
    				USART_RX_INT_ON & 
    				USART_ASYNCH_MODE & 
    				USART_EIGHT_BIT & 
    				USART_CONT_RX & 
    				USART_BRGH_HIGH, 
    				129 );
    
    	// Permet d'initialiser le BAUD rate pour une meilleur confuguration.
    	baud1USART (BAUD_IDLE_CLK_HIGH &
               BAUD_8_BIT_RATE &
               BAUD_WAKEUP_ON &
               BAUD_AUTO_OFF);
    	
    }// fin de Init_USART1()
    
    void main(void)
    {	 
    	unsigned char Tableau[3], oct1, oct2;		// déclaration des variables propres à la fonction main.
    	int i;
    
    
    	Init_USART1();			//Initialisation et configuration de l'USART1.
    
    	TRISBbits.TRISB0 = 0 ; 	// LED 0 déclarer en sortie.
    	TRISBbits.TRISB1 = 0 ; 	// LED 1 déclarer en sortie.
    	TRISBbits.TRISB2 = 0 ; 	// LED 2 déclarer en sortie.
    	TRISBbits.TRISB3 = 0 ; 	// LED 3 déclarer en sortie.
    
    	LATBbits.LATB0 = 1 ;	// Tous les LEDs sont éteintes.(logiques inverses)
    	LATBbits.LATB1 = 1 ;
    	LATBbits.LATB2 = 1 ;
    	LATBbits.LATB3 = 1 ;
    
    	//Test de LED.
    	LATBbits.LATB0=0;
    
    	while(1)
    	{	
    		if(DataRdy1USART())
    		{	
    			//oct1=Read1USART();
    			//oct2=Read1USART();
    			gets1USART(Tableau , 2);
    	
    			LATBbits.LATB1=0;
    	
    			if(Tableau[1] == 0)
    			{
    				LATBbits.LATB2=0;
    			}
    		}
    	}
    
    	Close1USART();
    }
    J’espère que vous allez pouvoir m'aider car je galère depuis pas mal de temps.

    Cordialement

    Nexyssify

    -----

  2. #2
    RISC

    Re : Probleme EUSART du PIC 18F45K80

    Salut,

    As-tu un quartz externe ??? 20MHz ?
    D'après tes bits de configurations tu utilises l'oscillateur interne...qui n'est pas assez précis.

    Si tu utilisais un quartz 16MHz tu pourrais faire fonctionner ton PIC18F45K80 à la fréquence max Fosc = 64MHz c'est à dire Fcycle=16MIPS ;=)

    Pour utiliser le quartz externe si tu en as un, il faut initialiser le bit de configuration dédié au choix de l'oscillateur de cette manière :
    Code:
    #pragma config FOSC = HS2      // pour un quartz entre 16 et 25MHz sans PLL
    ou
    #pragma config FOSC = HS1      // pour un quartz entre 4 et 16 avec ou sans PLL
    Pour activer la PLL il faut autoriser la PLL :
    Code:
    ...
    OSCTUNEbits.PLLEN = 1;    // autoriser la PLL (à vérifier dans la doc)
    ...                                    // note1
    note1 : je pense qu'il faut aussi une séquence de test pour attendre que la PLL soit "lockée". Vérifie dans les exemples de code pour les PIC18 s'il existe un exemple pour les PIC18F..K..

    a+

  3. #3
    invite5637435c

    Re : Probleme EUSART du PIC 18F45K80

    Bonsoir Nexyssify, merci d'utiliser les balises CODE quand vous postez du code:

    usage -> [CODE] ici le code puis fin de balise {/CODE] en remplacant la parenthèse par [ évidemment sinon vous n'auriez pas vu le texte associé aux balises si je les avaient écrites correctement.
    J'ai corrigé votre message dans ce sens sinon c'est indigeste à lire sans les indentations.

  4. #4
    paulfjujo

    Re : Probleme EUSART du PIC 18F45K80

    bonjour,



    Essaie aussi de rajouter avant le while(1)
    un envoi de caractere ou chaine de caractere
    ce qui permettra de veriifer si la vitesse de transmission est correcte.

    (ne pas oublier le #include <stdio.h>)


    Code:
    Put_RS('A');
    Put_RS('z');
    Put_RS(13);
    Put_RS(10);
    fprintf (_H_USART, "fprintf USART\n\r"); // vers USART
    CRLF();
    while(1)
        {	
        ..... etc ...

    Ou est la routine d'interruption de reception USART ?
    car USART_RX_INT_ON dans l'init usart
    + Init des flags interrupt dans le debut du main *?

    Code:
    Open1USART( USART_TX_INT_OFF & 
    				USART_RX_INT_ON & 
    				USART_ASYNCH_MODE & 
    				USART_EIGHT_BIT & 
    				USART_CONT_RX & 
    				USART_BRGH_HIGH, 
    				129 );
    
    	// Permet d'initialiser le BAUD rate pour une meilleur confuguration.
    	baud1USART (BAUD_IDLE_CLK_HIGH &
               BAUD_8_BIT_RATE &
               BAUD_WAKEUP_ON &
               BAUD_AUTO_OFF);
    	
    }// fin de Init_USART1()

  5. A voir en vidéo sur Futura
  6. #5
    invite00f988c1

    Re : Probleme EUSART du PIC 18F45K80

    Bonjour,

    Je viens de tester la commende que tu ma proposer RISC.
    De plus, j'ai bien un quartz externe de 20MHz.

    Lorsque je teste :
    Code:
    #pragma config FOSC = HS2
    Je ne peux même plus allumer une LED par exemple, je voulais savoir si vous sauriez pourquoi ?
    Sinon je voulais savoir, si il est plus judicieux d’utiliser des interruptions ou les fonctions telle que gets1USART ou Read1USART pour lire les valeurs récupérer?

    Je remets mon code :
    Code:
    /************** P R A G M A *********************************************************/
    #pragma config XINST = OFF //Pour Eviter certains bugs.
    #pragma config FOSC = HS2
    
    /************** I N C L U D E S *****************************************************/
    #include <p18f45k80.h>
    #include <delays.h>
    #include <usart.h>			// Afin de pouvoir utiliser les commandes EUSART.
    #include "temporisation.h" 	// Pour simplifier les delays.
    
    //----------------Parametres pour la liaison RS232-------------//
    #define FREQUENCY   20000000					    // Fréquence de fonctionement Fosc pour moi 40MHz (10MHz en HS PLL)
    #define BAUD        31250                            // Vitesse e transmission désiré (MIDI)
    #define BRG         (((FREQUENCY / 16)/ BAUD)-1) 	// calcul a mettre dans open1usart
    
    /************* P R I V A T E  P R O T O T Y P E S *************************************/
    void Init_USART1(void);
    char READ_USART(void);
    
    /************* D E C L A R A T I O N S ************************************************/
    void Init_USART1(void)
    {
    	// Permet d'initialiser le USART1.
    	Open1USART( USART_TX_INT_OFF & 
    				USART_RX_INT_OFF & 
    				USART_ASYNCH_MODE & 
    				USART_EIGHT_BIT & 
    				USART_CONT_RX & 
    				USART_BRGH_HIGH, 
    				BRG );
    
    
    	// Permet d'initialiser le BAUD rate pour une meilleur confuguration.
    	baud1USART (BAUD_IDLE_CLK_HIGH &
               BAUD_8_BIT_RATE &
               BAUD_WAKEUP_ON &
               BAUD_AUTO_ON);
    
    	
    }// fin de Init_USART1()
    
    
    void main(void)
    {	 
    	unsigned char Tableau[3], oct1, oct2;		// déclaration des variables propres à la fonction main.
    
    	TRISBbits.TRISB0 = 0 ; 	// LED 0 déclarer en sortie.
    	TRISBbits.TRISB1 = 0 ; 	// LED 1 déclarer en sortie.
    	TRISBbits.TRISB2 = 0 ; 	// LED 2 déclarer en sortie.
    	TRISBbits.TRISB3 = 0 ; 	// LED 3 déclarer en sortie.
    
    	LATBbits.LATB0 = 1 ;	// Tous les LEDs sont éteintes.(logiques inverses)
    	LATBbits.LATB1 = 1 ;
    	LATBbits.LATB2 = 1 ;
    	LATBbits.LATB3 = 1 ;
    	
    	Init_USART1();			//Initialisation et configuration de l'USART1.
    
    	//Test de LED.
    	LATBbits.LATB0=0;
    
    	while(1)
    	{	
    		if(DataRdy1USART())
    		{	
    			oct1=Read1USART();
    			oct2=Read1USART();
    			//gets1USART(Tableau , 3);
    	
    			LATBbits.LATB1=0;
    	
    			if(oct1 == 0 && oct2 == 0)
    			{
    				LATBbits.LATB2=0;
    			}
    		}
    	}
    }

  7. #6
    RISC

    Re : Probleme EUSART du PIC 18F45K80

    Salut,

    Peux-tu faire voir ton schéma électronique ?
    Tu travailles bien sur une carte et pas un simulateur ?
    Quel outil de programmation utilises-tu ?
    Quand tu dis que tu ne peux allumer une led, tu as fait un programme TRES simple qui simplement allume la led et rien d'autre ? (pas le programme que tu montres ci-dessus) ?

    a+

  8. #7
    invite00f988c1

    Re : Probleme EUSART du PIC 18F45K80

    Bonjour,

    J'ai mis une pièce sur la quelle il y à le schéma électrique de la carte que j'utilise.
    Ensuite, je travail bien sur une carte et non le simulateur.
    Pour la programmation, j'utilise MPLAB avec ICD 2 et je programme en C.

    Pour le programme qui allume une LED, j'utilise un programme tous simple mais avec la ligne de commende #pragma config FOSC = HS2.

    De plus, dans la journée j'ai fais des testes comme vous me l'avez conseiller, et lorsque j'envoie une trame grâce au PIC et que je la snif, je reçois 0sur le snifer.

    Enfin, j'ai vérifier le port RX à l'ocilo et j'obtiens bien quelque chose qui n'est pas égal à 0(signal carré).

    Cordialement

    Nexyssify.
    Dernière modification par gienas ; 15/05/2012 à 10h28. Motif: Supprimé image pdf

  9. #8
    JPL
    Responsable des forums

    Re : Probleme EUSART du PIC 18F45K80

    Les schémas doivent être postés dans un format graphique : gif, png ou jpg. Merci.
    Rien ne sert de penser, il faut réfléchir avant - Pierre Dac

  10. #9
    paulfjujo

    Re : Probleme EUSART du PIC 18F45K80

    bonsoir


    Code:
    //----------------Parametres pour la liaison RS232-------------//
    #define FREQUENCY   20000000					    // Fréquence de fonctionement Fosc pour moi 40MHz (10MHz en HS PLL)
    #define BAUD        31250                            // Vitesse e transmission désiré (MIDI)
    #define BRG         (((FREQUENCY / 16)/ BAUD)-1) 	// calcul a mettre dans open1usart
    Le moins qu'on puisse dire , c'est que ce parametrage est "fouilli"
    Frequence 20MHz ( PLL hors service ?) // ... Fosc pour moi 40 Mhz 10MHz en HS PLL
    BAUD 31250 (MIDI instrument de musique ?) ? 38400 est plus standard ?
    avec cela on est sur de RIEN.

    si ta config de bits est faite dans MPLAB tu peux faire un enregistrement de cette config dans un fichier txt
    et coller le contenu en commentaire dans ton source C.
    Cela permettrait de t'aider au mieux .
    Ne pas oublier d'Exporter le fichier Hex et ne pas utiliser celui qui est generé par la compilation,
    car il ne contiendrait pas les bits de config!
    Ce probleme est surtout visible lorsqu'on utilise pickit2 , qui lui genere un message d'alerte lors de l'import de l'Hex.

    As-tu essayé d'envoyer des caracteres sur le terminal, pour valider le format de transmission.
    C'est quand meme plus facile que la partie reception et cela elimine les doutes sur le parametrage de Comm.

  11. #10
    invite00f988c1

    Re : Probleme EUSART du PIC 18F45K80

    Bonjour à tous,

    Je remets le schéma de câblage de ma carte en pièces jointes.

    Sinon, je fais les paramétrages des bits directement dans le code.
    Ensuite, j'ai déjà tester l'envoie d'octet, par exemple dans mon code, j’envoie 45 sauf que lorsque je snif la trame envoyer, je reçois 0.
    Je pense donc qu'il y a une mauvaise configuration des ports du PIC mais je ne sais pas les quels.
    Je voulais donc savoir si vous pourriez m'aider à ce sujet?

    Sinon, j'ai une vitesse en baud de 31250 car je dois récuper la trame midi d'un clavier midi afin par la suite de pouvoir contrôler un moteur, en fonction des notes jouées, avec l'autre UART.

    De plus, sur un autre PIC, le 18F4550, j'arrive a récuper la trame parfetment bien et a llumer des LEDs en fonction des touches jouées.

    Sinon, voici le code que j'utilise pour envoyer une trame :

    Code:
    /************** P R A G M A *********************************************************/
    #pragma config XINST = OFF 	//Pour Eviter certains bugs.
    
    /************** I N C L U D E S *****************************************************/
    #include <p18f45k80.h>
    #include <delays.h>
    #include <stdio.h>
    #include <usart.h>			// Afin de pouvoir utiliser les commandes EUSART.
    #include "temporisation.h" 	// Pour simplifier les delays.
    
    //----------------Parametres pour la liaison RS232-------------//
    #define FREQUENCY   20000000					    // Fréquence de fonctionement Fosc
    #define BAUD        31250                            // Vitesse e transmission désiré
    #define BRG         (((FREQUENCY / 16)/ BAUD)-1) 	// calcul a mettre dans open1usart
    
    /************* P R I V A T E  P R O T O T Y P E S *************************************/
    void Init_USART1(void);
    char READ_USART(void);
    void Init_PIC(void);
    
    
    /************* D E C L A R A T I O N S ************************************************/
    void Init_USART1(void)
    {
    	// Permet d'initialiser le USART1.
    	Open1USART( USART_TX_INT_OFF &
    				USART_RX_INT_OFF &
    				USART_ASYNCH_MODE &
    				USART_EIGHT_BIT &
    				USART_CONT_RX &
    				USART_BRGH_HIGH,
    				BRG );
    
    	// Permet d'initialiser le BAUD rate pour une meilleur confuguration.
    	baud1USART (BAUD_IDLE_CLK_HIGH &
               		BAUD_8_BIT_RATE &
               		BAUD_WAKEUP_ON &
               		BAUD_AUTO_ON);
    
    }
    
    void Init_PIC(void)
    {
    	OSCCONbits.IRCF = 7;
    	OSCTUNEbits.PLLEN = 0;
        
        // Initialize ports
        
        TRISAbits.TRISA7 = 1;	// En entrer car Oscillateur sur ce port.
        
        TRISBbits.TRISB0 = 0 ; 	// LED 0 déclarer en sortie.
    	TRISBbits.TRISB1 = 0 ; 	// LED 1 déclarer en sortie.
    	TRISBbits.TRISB2 = 0 ; 	// LED 2 déclarer en sortie.
    	TRISBbits.TRISB3 = 0 ; 	// LED 3 déclarer en sortie.
    
    	LATBbits.LATB0 = 1 ;	// Tous les LEDs sont éteintes.(logiques inverses)
    	LATBbits.LATB1 = 1 ;
    	LATBbits.LATB2 = 1 ;
    	LATBbits.LATB3 = 1 ;
    	
    	ANCON0 = ANCON1 = 0x00; 			// Tous les ports en digital		
    }
    
    
    void main(void)
    {
    	unsigned char Tableau[3], oct1=1, oct2 = 0x45;		// déclaration des variables propres à la fonction main.
    	int A=1, B=1;
    	
    	Init_PIC();
    
    	Init_USART1();		//Initialisation et configuration de l'USART1.
    	
    	//Test de LED.
    	LATBbits.LATB0=0;
    	
    	while(1)
    	{
    		Write1USART(oct2);
    	}
    }
    Codialement.

    Nexyssify.
    Images attachées Images attachées  

  12. #11
    paulfjujo

    Re : Probleme EUSART du PIC 18F45K80

    hello,


    Au vu de ton schema on voit maintenant que c'est une appli specifique.
    Avec quoi sniff tu la trame, un oscillo ?
    Avec un VRAI terminal il te faudrait un max232 + condos ou un DS275 pour verifier ce qui passe
    sur cette ligne TX (donc geree par l'UART1)
    Le terminal VBRAY peut suporter une vitesse de transmission
    "Baud rate custom" de 31250 bds

    Sur ton schema il y a un buffer 74XX126 sur l'entre RX vers le PIC qui est drivé par RC0 !
    ou par RC2 si RX provient de l'USB (convertisseur USB/RS232 TTL ??)
    il faut penser à gerer ces 2 sorties si tu veux recevoir quelque chose...


    essaie plutot pour l'essai de transmission :

    Code:
    void Tempo(long val)
    {
    while(val>0){val--;}
    }
    
    .... etc ....
    
    
    
    void main (void)
    {
    unsigned char Tableau[3], oct1=1, oct2 = 0x45;		// déclaration des variables propres à la fonction main.
    	int A=1, B=1;
    	
    	Init_PIC();
    
    ANSELB=0;              // No analog input,PortB digital
    ANSELC=0;
    TRISCbits.TRISC6 = 0;  // TX - Set as Output UART RS232 and Bootloader
    TRISCbits.TRISC7 = 1;  // RX - Set Receive pin for UART RS232 and Bootloader
    
    	Init_USART1();		//Initialisation et configuration de l'USART1.
    	
    	//Test de LED.
    	LATBbits.LATB0=0;
           Tempo(200000); 
           LATBbits.LATB0=1;
           Tempo(200000); 
    
     
    
    while(1)
    {
     while(Busy1USART()); // verifie que le buffer Transmission est vide
     Write1USART(oct2);   // 0x45 donc lettre E sur un terminal
     Tempo(100000);   // histoire de ralentir un peu la boucle
      LATBbits.LATB0=! LATBbits.LATB0; // et de voir clignoter la led
    }

  13. #12
    invite00f988c1

    Re : Probleme EUSART du PIC 18F45K80

    Bonjour,

    Je viens de tester ce que vous m'avez proposer pour la transmission et avec le terminal VBray, je snif toujours une tram égal à 0. Je ne sais pas pourquoi ça fait cela. J'ai aussi tester l'USART 2 et j'obtiens la même chose.

    En se qui concerne le 74XX126, je l'ai remplacer par de petit files pour plus de simplicité.
    Sinon, il s'agit bien d'un convertisseur USB/RS232 TTL.

    Pensez vous que cela puisse venir du PIC en lui même ?
    Sinon quel PIC avec deux USART je pourrais utiliser ?

    Nexyssify.

  14. #13
    paulfjujo

    Re : Probleme EUSART du PIC 18F45K80

    bonsoir,


    Je viens de tester ce que vous m'avez proposer pour la transmission et avec le terminal VBray
    et il est ou le MAx232 pour convertir les niveaux TTL en RS232 ?
    comment relies-tu le terminal à ton montage

    Est-ce que les leds clignotent au moins ?

    Tu devais nous montrer ton fichier de configuration ?

    Essai de resoudre un probleme à la fois ..
    USART1
    Emission

    Step by step ....

  15. #14
    RISC

    Re : Probleme EUSART du PIC 18F45K80

    Salut,

    En voyant ton schéma (enfin ...) j eme suis aperçu que tu utilises un circuit horloge externe et pas un quartz. Pourquoi ???

    Il faut donc utiliser la configuration suivante pour l'horloge interne :

    #pragma config FOSC = EC3 // horloge externe entre 16 et 25MHz sans PLL

    a+

  16. #15
    invite00f988c1

    Re : Probleme EUSART du PIC 18F45K80

    Bonjour,

    Tout d'abord, je relie le terminal au montage grâce à l'USB sur le schéma de câblage.
    Ensuite quelle est le fichier de configuration ? Je ne voix pas de quoi vous voulez parler.

    Enfin, lorsque j'utilise la fonction #pragma config FOSC = EC3 dans mon code, plus rien ne fonctionne.
    Je ne peux même plus allumer une LED, je ne sais pas pour ca me fait cela.

    Auriez vous des idées ?

    Cordialment.

    Nexyssify.

  17. #16
    paulfjujo

    Re : Probleme EUSART du PIC 18F45K80

    hello,

    Ensuite quelle est le fichier de configuration ? Je ne voix pas de quoi vous voulez parler.
    Il faut que tu sois clair sur la partie Bits configuration.
    Soit tu la mets en dur dans le source via des directives #pragma
    pour tous les registres !

    soit tu la laisse faite par MPLAB .. Config bits ...
    et tu joins la capture de configuration , en commentaire , dans ton source
    afin qu'on puisse VOIR cette config.
    voir capture ecran ci-jointe


    Enfin, lorsque j'utilise la fonction #pragma config FOSC = EC3 dans mon code, plus rien ne fonctionne.
    Ce serait pourtant bien cette config pour un oscillateur Externe !
    Config1H bits 3:0 => 04h ( ou 05h avec ressortie du clock/4 sur RA6
    mais il faut eventuellement rajouter dans l'init
    REFCONbits.ROSEL=1;
    REFCONbits.ROSDIV=0;

    Tu devrais passer plus de temps à lire la specsheet du PIC , au lieu que nous le fassions à ta place...

    d'autre part :
    Ce PIC a une priorité pour le CAN pour les pins RC6 et RC7
    a voir de ce coté pour que ce soit bien L'EUSART qui y soit affecté
    Au boulot!
    Images attachées Images attachées  

  18. #17
    RISC

    Re : Probleme EUSART du PIC 18F45K80

    Salut Paul,

    Il ne faut surtout pas conseiller de mettre les bits de configuration dans l'environnement de MPLAB...c'est la meilleure façon d'avoir des PB.
    Il faut mettre les bits de configuration DANS LE PROGRAMME

    a+

  19. #18
    paulfjujo

    Re : Probleme EUSART du PIC 18F45K80

    bonjour


    Citation Envoyé par RISC Voir le message
    Il ne faut surtout pas conseiller de mettre les bits de configuration dans l'environnement de MPLAB.

    Desole si mon post paraissait proner le contraire.

    Mais il n'est pas evident de poser les bons parametre #pragma associes aux bits de config
    et je voulais plutot suggerer d'utiliser ce que propose MPLAB
    avec sa config de bits pour pouvoir mettre ensuite la bonne config
    en dur dans le source programme, au moins pour connaitre le contexte d'utilisation.
    sachant que malheureusement MPLAB ne peut pas le faire lui-meme directement .
    (copier le parametrage dans le source, contrairement à MikroC , qui le permet!)

    La solution d'aide la mieux adaptée serait donc via l'onglet Help de MPLAB ( ?)
    et de recuperer les parametres du PIC concerné, pour les inserer dans des
    directives #pragma ..
    meme si cela reste un peu lourd..
    il y a aussi la datasheet ...

    Je n'ai pas encore utilisé MPLABX , mais j'espere qu'il y aura du ouveau de ce coté là.

    Autre suggestion:
    - imposer à poster aussi la config d'un source soumis à question dans le forum
    - ou Copier dans le source sousmis au forum
    la configuration apparaissant en haut à droite du programme Pickit2 ou Pickit3
    suite à l'importation du fichier Hex pour programmer le PIC
    Là on est sur de la config.
    Images attachées Images attachées  

  20. #19
    RISC

    Re : Probleme EUSART du PIC 18F45K80

    Salut Paul
    Citation Envoyé par paulfjujo Voir le message
    il n'est pas evident de poser les bons parametre #pragma associes aux bits de config
    Oui mais il faut faire l'effort sous peine d'avoir plus tard beaucoup de PB quand le projet et utilisé sur plusieurs PC ou que l'on utilise un outil de programmation externe...

    Je n'ai pas encore utilisé MPLABX , mais j'espere qu'il y aura du ouveau de ce coté là.
    Il y a effectviement du nouveau ;=)

    Dans MPLAB X on peut générer le code source en C à partir des bits de configuration
    que l'on change dans l'environnement ;=)
    Il suffit de faire un "copié/collé" dans un fichier dédié comme config.c ou directement dans son fichier principal (main.c ou autre)

    Plus besoin de chercher les masques de configuration dans le fichier hlpPIC18ConfigSet.chm

    Personnellement je ne touche plus à MPLAB depuis plusieurs mois. L'éditeur de MPLAB X est un tel régal !!

    a+
    Dernière modification par RISC ; 19/05/2012 à 11h29.

Discussions similaires

  1. Pic 18f26k20 eusart tx test
    Par invite51e48a05 dans le forum Électronique
    Réponses: 8
    Dernier message: 27/03/2012, 22h39
  2. PIC18 EUSART overrun
    Par invite51e48a05 dans le forum Électronique
    Réponses: 9
    Dernier message: 11/02/2012, 20h22
  3. Problème PIC
    Par invite88e77aff dans le forum Électronique
    Réponses: 1
    Dernier message: 18/02/2011, 12h05
  4. probleme 2 interruption pic 18f4550 pic ->plante
    Par invite4ec38ea0 dans le forum Électronique
    Réponses: 5
    Dernier message: 28/08/2010, 08h51
  5. problème pic
    Par nanard dans le forum Électronique
    Réponses: 5
    Dernier message: 18/02/2007, 15h08
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...