[Programmation] Programmation du Pic12f683 pour jeu de lumière [Résolu]
Répondre à la discussion
Affichage des résultats 1 à 15 sur 15

Programmation du Pic12f683 pour jeu de lumière [Résolu]



  1. #1
    Yvescompaore

    Wink Programmation du Pic12f683 pour jeu de lumière [Résolu]


    ------

    Bonjour à tous , je voudrais réaliser un jeu de lumière utilisant un pic12f683, j'ai écris le code sur MikroC pro, mais j'ai l'impression que mon code ne permet pas d'allumer deux LEDs à la fois sur les broches B1 et B2, je voudrais ainsi
    corriger, le code :

    Code:
    main void() 
    {TRISIO =0;
    while (1)
       {
           GPIO.B1=1;
           GPIO.B2=1;
           Delay_ms (1000);
            GPIO.B1=0;
             GPIO.B2=0;
            Delay_ms (1000);
    
        }
    }

    -----
    Dernière modification par gienas ; 19/07/2022 à 06h45. Motif: Ajouté les balises code obligatoires pour les programmes

  2. #2
    AstroFOX

    Re : Programmation du Pic12f683 pour jeu de lumière

    Bonjour,

    Je ne connais ni les 12F, ni MikroC, mais est-ce qu'il n'y a pas une configuration TRIS pour chaque broche? Est-ce qu'il y a un registre différent pour entrée et sortie (POR et LAT) comme sur les 18F/24F ? En sortie il faut écrire dans le registre LAT (Latch), j'ai déjà eu ce problème sur un PIC18F2550 en écrvant sur POR successivement (comme tu fais) seule une instruction était prise en compte.

    C'est juste des suggestions. De plus, un schéma du montage pourrait aider à comprendre si il n'y a pas un problème hardware (courant de sortie des GPIO, etc)

    Edit : après lecture rapide de la datasheet, il n'y a bien que le registre TRISIO et le registre GPIO pour gérer les I/O... Par contre, attention au registre ANSEL!

    Setting a pin to an analog input automatically disables the digital input circuitry, weak pull-ups and interrupt-on-change,
    if available. The corresponding TRIS bit must be set to Input mode in order to allow external control of the voltage on
    the pin.
    Dernière modification par AstroFOX ; 18/07/2022 à 16h18.

  3. #3
    Yvescompaore

    Re : Programmation du Pic12f683 pour jeu de lumière

    Merci Astrofox pour la suggestion

  4. #4
    paulfjujo

    Re : Programmation du Pic12f683 pour jeu de lumière

    bonjour,

    essaie de rajouter ceci avant ta boucle while

    Code:
    void main()
    {
       OSCCON = 0x71;                      // Internal 8MHz osc.
    
        ADCON0 = 0;                         // all pins digital
        ANSEL = 0;                          // all pins digital
        CMCON0 = 7;                         // Comparators off.
        TRISIO = 0;                         // all output
        GPIO = 0;   
      while (1)
     {
      ...etc ...

    variante si il n'y a que ces 2 sorties utilisées
    Code:
    while (1)
    {
    GPIO=6;
    Delay_ms (1000);
    GPIO=0;
    Delay_ms (1000);
    
    }
    Dernière modification par paulfjujo ; 18/07/2022 à 16h48.

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

    Re : Programmation du Pic12f683 pour jeu de lumière

    pour compléter un peu, le pic 12f683 n'a qu'un seul port appelé GPIO, donc GPIO.B1 je ne suis pas sûr qu'il connaisse.
    Il semble que tu puisses les définir avant le main via
    Code:
    Led1 at GPIO1
    Led2 at GPIO2

  7. #6
    paulfjujo

    Re : Programmation du Pic12f683 pour jeu de lumière

    definition des Gpio individuels dans

    C:\_MikroC\mikroC PRO for PIC\Defs\PIC18F683.c

    Code:
     // GPIO bits
        const register unsigned short int GP5 = 5;
        sbit  GP5_bit at GPIO.B5;
        const register unsigned short int GP4 = 4;
        sbit  GP4_bit at GPIO.B4;
        const register unsigned short int GP3 = 3;
        sbit  GP3_bit at GPIO.B3;
        const register unsigned short int GP2 = 2;
        sbit  GP2_bit at GPIO.B2;
        const register unsigned short int GP1 = 1;
        sbit  GP1_bit at GPIO.B1;
        const register unsigned short int GP0 = 0;
        sbit  GP0_bit at GPIO.B0;
    
      // TRISIO bits
        const register unsigned short int TRISIO5 = 5;
        sbit  TRISIO5_bit at TRISIO.B5;
        const register unsigned short int TRISIO4 = 4;
        sbit  TRISIO4_bit at TRISIO.B4;
        const register unsigned short int TRISIO3 = 3;
        sbit  TRISIO3_bit at TRISIO.B3;
        const register unsigned short int TRISIO2 = 2;
        sbit  TRISIO2_bit at TRISIO.B2;
        const register unsigned short int TRISIO1 = 1;
        sbit  TRISIO1_bit at TRISIO.B1;
        const register unsigned short int TRISIO0 = 0;
        sbit  TRISIO0_bit at TRISIO.B0;

  8. #7
    Yvescompaore

    Re : Programmation du Pic12f683 pour jeu de lumière

    Je viens vous remercier a tous pour la promptitude de vos réactions, j'ai ainsi ajouter CMCON0 ET ANSEL, ET Cela marche bien , vous êtes tous formidable !!! Encore merci aux animateurs du site������

  9. #8
    Yvescompaore

    Re : Programmation du Pic12f683 pour jeu de lumière

    Bonjour à tous !!! Je reviens parce que je rencontre un problème avec mon schéma , le montage de jeu de lumière utilisant le pic12f683 et les MOSFET de communication IRFZ44N marche bien mais au bout de quelques jours les leds sont éteints comme si figées, j'ai essayé ce même montage utilisant un pic16f84 mais le problème revenue, je vous présente mon schéma,. S'il y'a une correction sur mon montage cela me soulagerais, merci
    Images attachées Images attachées
    Dernière modification par Yvescompaore ; 25/07/2022 à 15h46.

  10. #9
    paulfjujo

    Re : Programmation du Pic12f683 pour jeu de lumière [Résolu]

    bonsoir,


    Quelle sont les references de tes leds ?
    Toutes en parralleles??? c'est mortel pour les leds ...
    Qu'est-ce qui limite le courant dans les leds ?
    l'echauffement du MOSFET ( avec RDon qui augmente) ?

    une R de 10K entre gate et 0V de 10K de chaque MOSFET serait souhaitable pour bien bloquer celui ci sans commande .

  11. #10
    Yvescompaore

    Re : Programmation du Pic12f683 pour jeu de lumière [Résolu]

    Merci Pauljujo, les Leds utilisees dans la pièce jointe, j'ai pas constaté d'échauffement, parcontre mon pic122f683 est décédé, j'ai effectué la suggestion de la restance de 10K entre grille source, ceci pourrait expliquer mon problème ?[ATTACH=CONFIG]463373
    Images attachées Images attachées  

  12. #11
    paulfjujo

    Re : Programmation du Pic12f683 pour jeu de lumière [Résolu]

    bonsoir,


    en premier lieu essaie de repondre aux questions demandées dans le post #9

    une photo n'est pas une datasheet ou une reference de led
    de plus 3 fils par led ? led bicolore ?

    tes leds ,ont-elle une resistance serie incorporée ?
    as tu un multimetre pour faire des mesures ?

    sinon, tu vas encore cramer des PIC ou des MOSFETS ...
    voir même un incendie !..

  13. #12
    umfred

    Re : Programmation du Pic12f683 pour jeu de lumière [Résolu]

    Je crois voir 4 fils 2 blancs et 2 bleus, ce qui pourrait suggérer une mise en parallèle

  14. #13
    Yvescompaore

    Re : Programmation du Pic12f683 pour jeu de lumière [Résolu]

    Je m'excuse pour ce silence indépendant de ma volonté, j'ai pas trouver de datasheet sur ces LEDs,mais j'ai pu voir une résistance incorporée de 300ohm, merci

  15. #14
    Yvescompaore

    Re : Programmation du Pic12f683 pour jeu de lumière [Résolu]

    Je voudrais vous remercier pour l'attention portée à ma préoccupation ,le problème est résolu ,il s'agissait de mon module 12v à 5v qui débutait un courant de 3A, ce qui grillait le pic, j'ai trouvé un autre a l'aide d'un 78l05, débitant un courant de 100mA idéal pour le fonctionnement électrique du pic (95m), merci a tous !!

  16. #15
    AstroFOX

    Re : Programmation du Pic12f683 pour jeu de lumière [Résolu]

    Bonjour,

    le problème est résolu ,il s'agissait de mon module 12v à 5v qui débitait un courant de 3A, ce qui grillait le pic
    Je doute que le problème soit résolu, tu prends le problème à l'envers! Le PIC, et tout autre circuit, ne consomme que ce dont il a besoin. 3A, c'est le courant MAX que peut débiter ton alimentation, pas ce que va obligatoirement consommer le circuit.

    Si le PIC consomme 100 mA en continu, et que tes LEDs consomment 1A en continu, ton alimentation ne débitera que les 1,1A demandés, qu'elle fasse 2A ou 50A ne change rien.

    Il faudrait un schéma clair de ce que tu branches où et comment, car pour crâmer un PIC, soit tu l'alimentes avec une tension supérieure à 5V, soit ton alimentation est mal régulée/filtrée.

Discussions similaires

  1. [Divers] Lumière intérieure remorque pour chiens HS [Résolu]
    Par adoublard dans le forum Dépannage
    Réponses: 18
    Dernier message: 30/10/2021, 16h43
  2. programmation de carte pour portail coulissant [Résolu]
    Par invite594a64b7 dans le forum Bricolage et décoration
    Réponses: 12
    Dernier message: 04/12/2016, 17h36
  3. [Exercices] Programmation 16f628A en c++ pour un jeux de lumière
    Par inviteb3ce5ac9 dans le forum Électronique
    Réponses: 1
    Dernier message: 31/10/2016, 05h58
  4. programmation de µC 16F84 pour commander un gradateur de lumiere
    Par invite1bc4db94 dans le forum Électronique
    Réponses: 6
    Dernier message: 13/03/2013, 16h56
  5. Programmation PIC12F683 avec CCS 8.6 (Projet Treuil)
    Par HAYAC dans le forum Électronique
    Réponses: 2
    Dernier message: 02/08/2012, 11h42
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...