Probléme programmation PIC 16f877 avec MPLAB
Répondre à la discussion
Affichage des résultats 1 à 2 sur 2

Probléme programmation PIC 16f877 avec MPLAB



  1. #1
    invite55f29a9f

    Probléme programmation PIC 16f877 avec MPLAB


    ------

    Bonjour,

    Je suis nouveau dans la programmation de PIC et j'essay de résoudre mon probléme de compilation avec MPLAB et le compilateur HI-TECH ANSI C Compiler, mais je n'arrive pas à résoudre le probléme.
    Il me dis que le fichier delay.h n'éxiste pas :
    Error [141] C:\Users\Florian\Desktop\test2 .c; 1.18 ne peut pas ouvrir le fichier include "delay.h": No such file or directory

    En regardant sur le forum j'ai déplacé le fichier delaycnt_16.hex que j'ai renomé en delay.h. Qui ce trouvait dans le dossier ICE2000 du dossier de MPLAB pour le mettre dans mon dossier ou se trouve mon projet, mais sa ne marche toujours pas.

    Mon programme est le suivant :

    #include "delay.h";
    #pragma DATA_CONFIG, _PWRTE_OFF & _BODEN_OFF & _WDT_OFF & _LVP_OFF & _CPD_OFF & _DEBUG_OFF & _HS_OSC & _CP_OFF
    #pragma CLOCK_FREQ 20000000

    void main(void)
    {
    int porta = 0x00;
    int portb = 0x00;
    int portc = 0x00;
    int portd = 0x00;
    int porte = 0x00;

    int trisa = 0x00;
    int trisb = 0x00;
    int trisc = 0x00;
    int trisd = 0x00;
    int trise = 0x00;

    int adcon1 = 0x06;

    clear_bit(intcon, GIE);
    clear_bit(option_reg, NOT_RBPU);

    while(1)
    {
    portd = 0b00000001;
    delay_ms(100);
    portd = 0b00000011;
    delay_ms(10);
    portd = 0b00000010;
    delay_ms(100);
    }
    }

    J'utilise le PIC16f877, merci de m'indiquer ce qui ne va pas.

    Merci d'avance pour votre aide.

    Flareski.

    -----

  2. #2
    r4ph

    Re : Probléme programmation PIC 16f877 avec MPLAB

    Salut!

    Je vois peut etre un site pour toi: http://www.gooligum.com.au/tutorials.html

    ya des tutos pour l'utilisation de PICS avec differents compilateurs dont Hi tech.

    J'utilise une version pas tres recente lite et pour ce que je fais ca va tres bien!

    je vois deja une erreur la:

    #include "delay.h";

    pas de ; apres un include, ensuite si tu mets le fichier.h entre "" c'est qu'il est situe dans le projet (dossier de fichiers headers) si il est entre <> c'est qu'il est situe dans un des dossiers installes avec le compilateur (hi tech dans ce cas).

    fais bien attention qu'un fichier.hex est celui qui est directement flashe dans le uC (par le programmateur), et qui est cree par le compilateur, un .h est un header, le compilateur le compile de la meme maniere que ton (main).c

    Dans ton cas, tu veux utiliser le delay_ms donne avec le compilateur il faut inclure htc.h de la maniere suivante


    #include <htc.h>

    dans ce header se trouve toutes les informations pour que le compilateur trouve les registres associes au PIC que tu utilise et en bonus quelques fonctions comme delay_ms. Moi meme je ne l'ai jamais utilisee.

    Ca peut paraitre un peu chinois, mais il faut essayer et chercher, tu peux facilement trouver ce fichier htc.h dans le dossier de ton compilateur, il sera avec plein d'autre .h Tous ces fichiers se renvoient l'un vers l'autre grace aux directivees du pre processeur. si tu utilise le pic 16f877, le fichier htc.h va pointer vers un autre fichier qui contient le detail des registres du 16f...

    Tu peux trouver de la doc sur le net, pour les pics je te conseille le cours de Bigonoff, en assembleur, mais le principe est la et pour ce qui concerne le c et une bonne explication des directives de preprocesseurs et autre fichier .h le cours du zero (site du zero) un coup de gogol ca devrais le faire.

    Cela dit je compatis, j'ai mis plusieurs jours a faire clignoter une led la premiere fois...

    Tu auras surement d'autres problemes de compilation avec ton programme tel qu'il est, mais une chose a la fois, ne te decourage pas!

Discussions similaires

  1. Programmation du pic 16f877
    Par olfa88 dans le forum Électronique
    Réponses: 6
    Dernier message: 18/05/2011, 16h07
  2. Pic 16f877 problème de programmation
    Par invite4bffdc16 dans le forum Électronique
    Réponses: 11
    Dernier message: 06/08/2009, 08h21
  3. Problème de programmation PIC 16F877, SAA 1064 et afficheurs 7 segments
    Par invite64e12149 dans le forum Électronique
    Réponses: 6
    Dernier message: 18/05/2009, 09h33
  4. [Pic] Problème compilation MPLAB 16F877... Merci
    Par CED_TV_JVC dans le forum Électronique
    Réponses: 2
    Dernier message: 27/06/2008, 10h21
  5. programmation en C pic 16F877
    Par Manu_67 dans le forum Électronique
    Réponses: 2
    Dernier message: 08/03/2007, 19h51
Découvrez nos comparatifs produits sur l'informatique et les technologies.