Problème avec HI-TECH C et XTAL_FREQ
Répondre à la discussion
Affichage des résultats 1 à 6 sur 6

Problème avec HI-TECH C et XTAL_FREQ



  1. #1
    Thom4731

    Problème avec HI-TECH C et XTAL_FREQ


    ------

    Bonjour,

    Je me lance dans la programmation de PIC et je rencontre quelques difficultés :

    Je veux programmer un PIC 16F88 avec MPLAB v8.84 et le compilateur C HI-TECH v9.83.

    Mon problème vient de l'utilisation des delay_ms qui ne fonctionnent pas correctement à priori parce que je n'arrive pas à indiquer correctement au compilateur la fréquence de mon horloge.
    J'utilise pour ça une ligne :
    #define _XTAL_FREQ 8000000
    J'ai remarqué que peut importe la valeur d'horloge que je défini à cette ligne cela ne change pas la durée de mes delay.

    Est-ce que quelqu'un peut m'expliquer comment déclarer cette valeur correctement ? Je n'ai pas trouvé cette info dans la doc du compilateur (c'est d'ailleurs assez surprenant)

    Pour info, voici mon code

    Code:
    #define _XTAL_FREQ 8000000
    
    #include <htc.h>
    
    //Set internal clock
    #define __CONFIG(INTIO);
    
    //Enable Low Voltage Programming
    #define LVP_bit 1;
    
    void Init ( void )
    {	
    	CMCON = 0x07;	        // Turn off comparator
    	ANSEL = 0;		// I/O are digital
    	ADCON0 = 0;		// Turn off ADC
    
    	// Init port A, 
    	PORTA = 0x00;
    	TRISA = 0xFF;
    
    	// Init port B
    	TRISB = 0x00;
    	PORTB = 0x00;
    }
    
    void main(void)
    {
    !Internal clock 8MHZ
    OSCCON=0b0111000;
    Init();
    
    RB1 = 1;
    
        for( ; ; ) 
        {
    		RB2 = 0;
    		__delay_ms(100);
    		RB2 = 1;
    		__delay_ms(200);
        }
    }
    Merci

    -----

  2. #2
    Thom4731

    Re : Problème avec HI-TECH C et XTAL_FREQ

    J'ai trouvé mon erreur, ça venait simplement d'une erreur à la ligne
    Code:
    OSCCON=0b0111000;
    Ca configurait l'horloge interne sur 500Khz et non 8Mhz.

    J'aurais du mettre
    Code:
    OSCCON=0b1110000;
    PS : Je n'ai pas trouvé comment éditer mon premier post pour ajouter une balise genre [Résolu] dans le titre, c'est pas possible ?

  3. #3
    RISC

    Re : Problème avec HI-TECH C et XTAL_FREQ

    Salut,

    Le choix de l'horloge ne se fait pas par un #define mais par le choix des bits de configuration...
    Surtout programmes TOUJOURS le bit LVP = OFF car tu risques de ne plus pouvoir effacer ton PIC...

    La syntaxe correcte des bits de configuration est décrite dans le manuel du compilateur et également dans le fichier header de ton PIC16F88 : c:\Program Files (x86)\HI-TECH Software\PICC\9.83\include\pic 16f88.h

    Exemple de configuration pour un quartz externe :

    // PIC16F88 Configuration Bit Settings

    __CONFIG(FOSC_HS & WDTE_OFF & PWRTE_OFF & MCLRE_ON & BOREN_ON & LVP_OFF & CPD_OFF & WRT_OFF & CCPMX_RB0 & CP_OFF);
    __CONFIG(FCMEN_ON & IESO_ON);

    NB : ces lignes ont été générées automatiquement par MPLAB X avec le menu : Window > PIC memory views > configuration bits

    a+
    Dernière modification par RISC ; 19/05/2012 à 20h31.

  4. #4
    Thom4731

    Re : Problème avec HI-TECH C et XTAL_FREQ

    Merci beaucoup de ta réponse.

    En ce qui concerne le bit LVP, quelle est son influence ?
    J'ai cru comprendre que pour programmer il fallait soit mettre ce bit à 1 soit mettre un voltage élevé sur MCLR (HV on MCLR), qu'en est il vraiment ?

    J'utilise un pickit 3 pour programmer et c'est lui qui alimente mon PIC.

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

    Re : Problème avec HI-TECH C et XTAL_FREQ

    Salut,

    Comme je l'ai dit le mode LVP n'est pas géré par les outils. Mets le OFF.
    Tous les outils standards (Pickitx , ICDx et Real-Ice) utilisent le mode HVP et génère cette tension eux-même.

    a+

  7. #6
    Thom4731

    Re : Problème avec HI-TECH C et XTAL_FREQ

    D'accord, merci bien

Discussions similaires

  1. Tout petit problème de débutant avec Hi Tech C Compiler
    Par *Baby* dans le forum Électronique
    Réponses: 2
    Dernier message: 05/06/2010, 10h07
  2. USB avec PICC18 de Hi-tech
    Par invite3f3dd681 dans le forum Électronique
    Réponses: 0
    Dernier message: 20/04/2009, 09h46
  3. petit problème avec le compilateur Hi-tech
    Par MofK dans le forum Électronique
    Réponses: 14
    Dernier message: 02/09/2008, 11h59
Découvrez nos comparatifs produits sur l'informatique et les technologies.