Bonjour, cliquez-ici pour vous inscrire et participer au forum.
  • Login:


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

easypic, pic, C, et mikroC

  1. Mendoza

    Date d'inscription
    octobre 2005
    Localisation
    neuf trois
    Âge
    36
    Messages
    360

    easypic, pic, C, et mikroC

    salut,

    habitué a coder en asm, je me lance dans le langage C

    j'ai mikroC que je suis en train de tester, mais j'avoue que j'y perds un peu mon latin...

    je dois etre tres fatigué pour ne pas comprendre ce qui m'arrive, alors j'espere trouver ici qqun qui pourra me mettre sur la voie ...


    l'exercice est simple, il s'agit de faire clignoter une (ou plusieurs) led(s)
    seulement voilà, le probleme est bien de faire clignoter ...

    le code:

    void main(void)
    {
    TRISC=0; // portC en sortie
    while(1)
    {
    PORTC=0xFF;
    Delay_ms(1000);
    PORTC=0x00;
    }
    }


    resultat: les leds s'allument mais ne clignotent pas

    pour faire clignoter les leds voilà ce que je suis obligé de faire:
    void main(void)
    {
    TRISC=0; // portC en sortie
    while(1) {
    PORTC=~PORTC;
    Delay_ms(1000);
    }
    }


    ~ represente "l'inverse" bit à bit apparemment


    mais alors, l'affectation PORTC=0x00 ne fonctionne pas ??

    ou est mon erreur ??

    merci @++
     


    • Publicité




      Poursuivez votre recherche
      Recherche personnalisée

  2. HULK28

    Date d'inscription
    janvier 2006
    Localisation
    dans le labo d'essais...
    Âge
    48
    Messages
    9 015

    Re : easypic, pic, C, et mikroC

    Les 2 versions fonctionnent seulement tu n'attend pas après PORTC=0x00;

    Donc tu passe instantanément à PORTC=0xFF;
    Et donc tu n'as pas le temps de voir la led s'éteindre...

    Voilà ce que j'aurai écrit:
    while(1)
    {
    // on allume la led en mettant la sortie du port A0 à l'état haut
    PORTC = 0xFF;
    Delay_ms(1000); // on attend...pour voir

    // on éteint la led en mettant la sortie à l'état bas
    PORTC = 0x00;
    Delay_ms(1000); // on attend...pour voir
    }

    essaie et tout rentrera dans l'ordre.
    Dernière modification par HULK28 ; 08/06/2006 à 02h50.
    HULK

    "Pour la carotte, le lapin est la parfaite incarnation du Mal."
    Robert Scheckley.
     

  3. wolfjeremy

    Date d'inscription
    mars 2005
    Messages
    57

    Re : easypic, pic, C, et mikroC

    Juste par curiosité, ce code qui est plutôt simple en C sa donnerai quoi en ASM ?
     

  4. Mendoza

    Date d'inscription
    octobre 2005
    Localisation
    neuf trois
    Âge
    36
    Messages
    360

    Re : easypic, pic, C, et mikroC

    ah bah oui forcement ....

    merci Hulk de m'avoir remis dans le droit chemin ...

    et comme je l'avais présagé, c'est bien une bete erreur...
    arf, c'est dur de se remettre a programmer apres une longue periode d'arret ...
     

  5. Gérard

    Date d'inscription
    janvier 2003
    Localisation
    Haut-Rhin
    Âge
    53
    Messages
    6 259

    Re : easypic, pic, C, et mikroC

    Citation Envoyé par wolfjeremy
    Juste par curiosité, ce code qui est plutôt simple en C sa donnerai quoi en ASM ?
    debut
    clrf portC
    call tempo
    movlw 255
    movwf portC
    call tempo
    goto debut


    tempo
    ;c'est ici que tu fais des boucles pour arriver à la
    ;durée que tu veux attendre
    ......
    return

    Gérard.
    Gérard.
     

  6. wolfjeremy

    Date d'inscription
    mars 2005
    Messages
    57

    Re : easypic, pic, C, et mikroC

    Sa reste relativement simple

    Merci.

    P.S.: quelqu'un pourrait me dire où je peut apprendre l'ASM pour pic ? car la j'apprend l'ASM pour processeur x86...
     


    • Publicité



  7. HULK28

    Date d'inscription
    janvier 2006
    Localisation
    dans le labo d'essais...
    Âge
    48
    Messages
    9 015

    Re : easypic, pic, C, et mikroC

    Salut,

    tu as le travail remarquable de notre ami Bigonoff.

    HULK

    "Pour la carotte, le lapin est la parfaite incarnation du Mal."
    Robert Scheckley.
     

  8. umfred

    Date d'inscription
    mars 2006
    Âge
    33
    Messages
    1 344

    Re : easypic, pic, C, et mikroC

    ou sinon la lecture des datasheets de PIC.
     

  9. wolfjeremy

    Date d'inscription
    mars 2005
    Messages
    57

    Re : easypic, pic, C, et mikroC

    Citation Envoyé par HULK28
    Salut,

    tu as le travail remarquable de notre ami Bigonoff.

    Oui, d'ailleur il faudra que je lise tout ces cours

    Mais bon on sais jamais qu'il n'y aurai pas asser dans ces cours... parce que sa change suivant les PIC utiliser non ?
     

  10. Mendoza

    Date d'inscription
    octobre 2005
    Localisation
    neuf trois
    Âge
    36
    Messages
    360

    Re : easypic, pic, C, et mikroC

    euh... pas assez dans le cours de bigonoff
    ces cours sont reletivement exheustifs, et bien faits ...
    tu commence par le premuier (16f84) puis le 2eme cours (16f877) puis les suivant (bootloader...etc)
    et ensuite rulezzzzz, quand tu auras fait tout cela et que tu "maitrisera" les differentes possibilités, le reste suivra ...
     


    • Publicité



  11. gauthierSA

    Date d'inscription
    mars 2011
    Messages
    1

    Re : easypic, pic, C, et mikroC

    Citation Envoyé par Mendoza Voir le message
    salut,

    habitué a coder en asm, je me lance dans le langage C

    j'ai mikroC que je suis en train de tester, mais j'avoue que j'y perds un peu mon latin...

    je dois etre tres fatigué pour ne pas comprendre ce qui m'arrive, alors j'espere trouver ici qqun qui pourra me mettre sur la voie ...


    l'exercice est simple, il s'agit de faire clignoter une (ou plusieurs) led(s)
    seulement voilà, le probleme est bien de faire clignoter ...

    le code:

    void main(void)
    {
    TRISC=0; // portC en sortie
    while(1)
    {
    PORTC=0xFF;
    Delay_ms(1000);
    PORTC=0x00;
    }
    }


    resultat: les leds s'allument mais ne clignotent pas

    pour faire clignoter les leds voilà ce que je suis obligé de faire:
    void main(void)
    {
    TRISC=0; // portC en sortie
    while(1) {
    PORTC=~PORTC;
    Delay_ms(1000);
    }
    }


    ~ represente "l'inverse" bit à bit apparemment


    mais alors, l'affectation PORTC=0x00 ne fonctionne pas ??

    ou est mon erreur ??

    merci @++
    pour rendre les choses plus facile a comprendre tu peux simplement appeler un delay apres ta derniere instruction.le compiler a une vitesse tres eleve dans l'execution c'est pourquoi il ne flashe pas
     

  12. Forhorse

    Date d'inscription
    décembre 2010
    Messages
    1 472

    Re : easypic, pic, C, et mikroC

    Tu veux une pelle ?
     


Poursuivez votre recherche :




Sur le même thème :




 

Discussions similaires

  1. problème avec mikroC
    Par ABN84 dans le forum Électronique
    Réponses: 4
    Dernier message: 07/03/2007, 17h47
  2. Soucis de Prog sous Mikroc
    Par M_Makia dans le forum Électronique
    Réponses: 2
    Dernier message: 28/02/2007, 12h56
  3. comment utiliser MikroC?
    Par ABN84 dans le forum Électronique
    Réponses: 3
    Dernier message: 23/02/2007, 00h03
  4. MikroC plantage
    Par F1TVB dans le forum Électronique
    Réponses: 21
    Dernier message: 20/08/2006, 22h50
  5. [EASYPIC] réalisations
    Par greggreg dans le forum Électronique
    Réponses: 4
    Dernier message: 06/04/2006, 12h28


Les tags pour cette discussion