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

Microcontroleur



  1. #1
    slash64

    Exclamation Microcontroleur


    ------

    Bonjour,
    voila j ai achete un microcontroleur Atmega8 j arrive a me servir des ports en sorties en mettant DDRD = 0xff; Mais je n arrive pas a tester les entree en mettant DDRD = 0x00;

    Mon probleme en faite et que je ne sais pas comment faire le test en C.

    J ai essaye :
    if((portd&0x01)== 0x01)
    {
    mon code
    }

    mais ca ne marche pas es que quelqu un peu m aider ? je debute tout juste sur les microcontroleur mais j ai une bonne connaissance en C.

    Si vous pouvez m aider je vous remercierai beaucoup
    merci d avance
    CD

    -----

  2. Publicité
  3. #2
    zittert

    Re : Microcontroleur

    Salut,
    je programme aussi sur ATMEGA8.

    Comme tu le dis, tu fais DDRD = 0x00; pour l'initialisation des entrées.

    Puis :
    if (PIND & 0x01)
    {
    code ( mettre une sortie a 1 je te conseille au debut pour voir si ca marche )
    }
    else
    {
    Code
    }

    Voila, ca c'est sur que ca marche, je l'utilise dans mes progs.

    Si ta besoin d'autre conseils, n'hesites pas
    A+

  4. #3
    slash64

    Re : Microcontroleur

    Salut,
    merci pour la soluce cependant je n arrive a y faire fonctionner voila ma fonction main :

    void main()
    {
    DDRC = 0x20; // PC5 en sortie
    DDRD = 0x00; // PD5 en entree

    if((PIND & 0x20) == 0x20) // Test l entre PD5
    {
    PORTC = 0x20; Mettre a 5V PC5
    }
    }

    Mai que je mette du 0 ou du 5V sur l entre il ne rien savoir.

    Remarque : j ai egalement essaye if(PIND & 0x20) mais dans ce cas la cela est toujours vrai il pourra toujours faire le Et binaire entre la variable et 0x20

    Es que tu as une solution ? Es que mon microcontroleur est mort ? et pour mettre 5 V en entre faut il que je mette une simple resistance dessus reliee au 5V ou il faut que je fasse un circuit a part, c a d 5V resitance 0V , pour que le micro teste juste le potentiel ou il faut que du courrant rentre dedans ?

    Merci d avance
    CD

  5. #4
    slash64

    Re : Microcontroleur

    Personne n a d idee ? a mon probleme ? parce que la moi je calle depuis 4 semaine ou je me tape des doc en anglais que je mets des heures a traduire ...

    J ai pas un bon anglais ....

    Merci d avance
    CD

  6. A voir en vidéo sur Futura
  7. #5
    Gérard

    Re : Microcontroleur

    Je ne connais pas le C, mai si tu écrivais
    if portd.5 = 0 then portc.5 = 0 else porc.5 = 1
    Gérard.
    PS1
    c'est ce que je ferais en Basic.
    PS2
    Ne pas se moquer des amateur du BAsic, merci !

  8. #6
    slash64

    Re : Microcontroleur

    Oula merci beaucoup !

    Je suis tres loin de me moquer de toi car j avais completement oublier de mettre un ptit else pour si PIND = 0 !!

    Ca marche niquel merci beaucoup comme quoi les trucs les plus simple on les oublie toujours mdr

    CD

  9. Publicité
  10. #7
    JP

    Re : Microcontroleur

    Salut,

    Tu utilises quel compilateur ?
    Si tu veux te mettre à winavr il y a pas mal d'exemples pour débuter.

    a+
    JP

  11. #8
    Gérard

    Re : Microcontroleur

    Et çà donne quoi en C avec le else ?
    Pour ma culture.
    Gérard.

Discussions similaires

  1. Microcontroleur
    Par snipemi dans le forum Électronique
    Réponses: 5
    Dernier message: 21/06/2007, 22h15
  2. microcontroleur
    Par acdd dans le forum Électronique
    Réponses: 22
    Dernier message: 24/04/2007, 16h07
  3. Microcontroleur
    Par italiano76 dans le forum Électronique
    Réponses: 8
    Dernier message: 17/04/2007, 14h09
  4. Microcontrôleur
    Par ScroudaF dans le forum Électronique
    Réponses: 5
    Dernier message: 06/03/2007, 09h58
  5. Microcontrôleur ?
    Par Kazza dans le forum Électronique
    Réponses: 1
    Dernier message: 11/05/2006, 17h35
Découvrez nos comparatifs produits sur l'informatique et les technologies.