Partage
  • Partager sur Facebook
  • Partager sur Twitter

Attiny85 digispark problème

    24 novembre 2020 à 1:33:31

    Bonsoir,

    Si quelqu'un à une réponse concernant la pin "P1" du attiny85 digispark.

    Effectivement la led relié à la pin 1 du microcontroller clignote lors du televersement du programme. Sur mon projet une fois assemblé tout fonctionne parfaitement, hormis le fait si je coupe l'alimentation et que je le rallume l'état de la pin 1 est HIGH pendant quelques seconde. C'est pas dérangeant mais esthétiquement pour contrôler une Led qui doit être de base éteintes s'allume en clignotant. ( comme un televersement d'un sketch).

    M'a question est peut-on éviter lors de l'allumage de mon circuit ce clignotement ?

    Voici les pins utilisé :

    -P0= led1

    -P1= led2

    -P2= led3

    -P4= capteur capacitif (ttp223)

    Voilà en vous remerciant par avance de votre aide. 

    -
    Edité par ClémentSinapin 24 novembre 2020 à 11:17:59

    • Partager sur Facebook
    • Partager sur Twitter
      25 novembre 2020 à 21:05:22

      Bonsoir,

      Je vois 2 hypothèses /
      - Soit c'est une tentative de communication SDA et ta Pin1 (MISO) émet une trame. Il faut regarder si ton bus SDA est activé.
      - Soit ton pin n'est pas de resistance PulDown et est drivé bizarrement,

      Pour des tests, est-ce que tu peux rajouter une résistance de pulldown entre ta pin et la masse ? (4.7k Ohm par exemple)  Et nous ire si çà persiste.
      • Partager sur Facebook
      • Partager sur Twitter
        27 novembre 2020 à 17:41:53

        Si la led clignote pendant le téléversement, c'est que le bootloader est compilé avec l'option LED_MODE définie à ACTIVE_HIGH, donc il faut reflasher un firmware sans cette option pour désactiver ce comportement.

        Le dépot github du bootloader utilisé par digispark, micronucleus, contient l'exécutable micronucleus.exe dans le répertoire commandline (il y en a un autre dans le répertoire commandline/builds/Windows apparemment compilé avec d'autres options) et le bootloader sous la forme d'un firmware de mise à jour dans upgrade/releases/upgrade-t85_default.hex, il faut lancer la commande suivante pour lancer la mise à jour (en adaptant en fonction de l'emplacement des 2 fichiers):

        micronucleus --run upgrade-t85_default.hex

        Si après ça l'IDE arduino n'arrive plus à flasher le firmware parce qu'il ne reconnait pas la version du bootloader, il faudra remplacer l'exécutable micronucleus.exe qui se trouve dans "C:\Users\<utilisateur>\AppData\Local\Arduino15\packages\digistump\tools\micronucleus\2.0a4\ par la version du dépot github.. 

        Sous linux, si tu as un programmateur USBASP/ISP ou un autre arduino programmé avec le sketch Arduino ISP, tu peux simplement télécharger le dépôt puis aller dans le répertoire firmware et taper la commande:

        make CONFIG=t85_default flash

        Pour les programmateurs autres que USBASP, il faut regarder le contenu du Makefile pour voir comment adapter l'appel à avrdude.


        -
        Edité par alexisdm 27 novembre 2020 à 17:43:37

        • Partager sur Facebook
        • Partager sur Twitter
          8 décembre 2020 à 15:29:33

          Bonjour, merci pour vos réponses et désolé de mon  pour vous répondre 🙏

          J'avais testé avec la résistance mais sans succès effectivement ça vient du bootloader. 

          J'ai donc procédé par la méthode de " alexisdm".

          Merci encore, sujet résolu. 

          Avant de clôturer sur mon projet je vais y mettre un capteur ir, du moins je me le fait. 

          Ma question est que j'ai 4 led ir de tension 1.3 v 20mA, sur une alim de 5v.

          Pour calculer la résistance pour 4 leds en séries mais est-ce possible de ne pas avoir besoin de résistance.

          Mon calcul : 5v-(1.3vx4)/0,002ma= - 10ohm

          Je me trompe ?

          Merci 

          -
          Edité par ClémentSinapin 8 décembre 2020 à 15:30:51

          • Partager sur Facebook
          • Partager sur Twitter
            8 décembre 2020 à 19:01:59

            oui, une résistance négative ça n'existe pas, en tout cas pas sous forme de composant.

            En fait la tension aux bornes des leds ne pourra jamais dépasser celle de l'alimentation. Il faut éviter de plus que la tension des leds soit trop proche de celle de l'alim car les caractéristiques des leds possédant une dispersion assez importante, la moindre variation de la tension aux bornes de la résistance de limitation va provoquer de grandes variations du courant.

            En conséquence, soit tu te limites à 3 leds, soit il faut alimenter sous plus de 5 V.

            Sinon, l'idéal est d'alimenter la led avec un générateur de courant, mais c'est un peu plus complexe à réaliser.

            • Partager sur Facebook
            • Partager sur Twitter

            Attiny85 digispark problème

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown