Répondre à la discussion
Affichage des résultats 1 à 4 sur 4

PIC16F1509 et XC8



  1. #1
    kevin8z

    PIC16F1509 et XC8


    ------

    Bonjour alors voilà j'utilise depuis peut le compilateur XC8 de microchip. J'essaye de rentrer en interruption mais impossible, pour cela j'ai fait un programme de test:

    Code:
    #include <stdio.h>
    #include <stdlib.h>
    #include <xc.h>
    
    #include "ConfBits.h"
    
    #define _XTAL_FREQ 4000000
    
    void interrupt isr (){
    
        TXREG = 'B';
    
    }
    
    void main() {
    
       /************************
       CONFIGURATION OSCILLATEUR
       ************************/
       OSCCON = 0b01101010; //4MHz
    
       /************************
          CONFIGURATION UART
       ************************/
       TXSTA = 0b00101110;
       RCSTA = 0b10010000;
       BAUDCON = 0b00000000;
       SPBRGH = 0;
       SPBRGL = 25;
    
       __delay_ms (100); // Temps d'initialisation de l'UART
    
       /************************
      CONFIGURATION INTERRUPTION
       ************************/
       INTCON = 0b11000000;
       PIE1 = 0b00100000;
       PIE2 = 0;
       PIE3 =0;
    
       /************************
               Envoie Tx
       ************************/
       TXREG = 'A'; // Envoie sur la ligne Tx
    
       while (1){
    
       }
    
    }
    Je pense que le nom de la fonctionne d'interruption ne doit pas être bonne, mais impossible de trouver.
    Merci

    -----

  2. Publicité
  3. #2
    Tonave72

    Re : PIC16F1509 et XC8

    Salut!!

    A mon avis tu n'es pas au bon endroit en mémoire pour ton interruption... Je n'ai pas regardé en détail ton code mais à mon avis il te manque un #pragma du style #pragma origin 4.

    Mais tu ne trouves rien du tout sur le net à propos de ça? Internet déborde d'infos là dessus, normalement...
    Rien ne se perd, rien ne se crée, tout se transforme. Lavoisier

  4. #3
    kevin8z

    Re : PIC16F1509 et XC8

    Merci, alors justement je ne trouve pas comment faire. Mais j'ai un autre problème en faite, c'est que mon flag de réception RCIF ne se met jamais à 1, alors qu'il devrais quand j'envoie un caractère sur sa broche Rx. Voici le programme:
    Code:
    #include <stdio.h>
    #include <stdlib.h>
    #include <xc.h>
    
    #include "ConfBits.h" // fichier de configuration des fusibles
    
    #define _XTAL_FREQ 4000000 // défini l'oscillateur à 4MHz pour les tempo
    
    /*********************************
            PROGRAMME PRINCIPAL
    *********************************/
    void main() {
    
    unsigned char lecture;
    
       /*******************************
          CONFIGURATION OSCILLATEUR
       *******************************/
       OSCCON = 0b01101010; //4MHz
    
       /*******************************
          CONFIGURATION UART 9600,1,0
       *******************************/
       TXSTA = 0b00101110;
       RCSTA = 0b10010000;
       BAUDCON = 0b00000000;
       SPBRGH = 0;
       SPBRGL = 25;
    
       __delay_ms (100); // Temps d'initialisation de l'UART
    
       /******************************
                   Envoie Tx
       ******************************/
       TXREG = 'A'; // Envoie sur la ligne Tx
    
       while (1){
    
           if (PIR1bits.RCIF == 1){
    
                lecture = RCREG;
                TXREG = lecture;
    
           }
       }
    
    }
    Je ne vois pas ou est le problème

  5. #4
    kevin8z

    Re : PIC16F1509 et XC8

    Le problème est résolu, il fallait juste configurer le registre ANSELB en digital I/O, et le nom de la fonction pour les interruptions c'est: void interrupt isr () {}

  6. A voir en vidéo sur Futura
  7. Comparatifs

    Gagnez du temps et de l'argent grâce à nos comparatifs de produits. Parmi nos sujets :

Discussions similaires

  1. Soucis de compilateur XC8
    Par petitnul12 dans le forum Électronique
    Réponses: 6
    Dernier message: 31/03/2013, 23h40
  2. Problème ICD3 / MPLabX / XC8
    Par petitnul12 dans le forum Électronique
    Réponses: 10
    Dernier message: 13/02/2013, 18h45
  3. Problème programme sur PIC18, compilateur XC8
    Par petitnul12 dans le forum Électronique
    Réponses: 1
    Dernier message: 10/02/2013, 10h33
  4. MPLAB X ; XC8, C18 et CCS sur Ubuntu
    Par punky591 dans le forum Électronique
    Réponses: 8
    Dernier message: 27/07/2012, 11h36
  5. Débutant en C et Microchip XC8
    Par biduleur34 dans le forum Électronique
    Réponses: 1
    Dernier message: 23/05/2012, 23h22
Découvrez nos comparatifs produits sur l'informatique et les technologies.