led RGB (Résolu)

Bonjour,
Voila mon petit soucis. Je me suis fait une carte à base de 32U4 en 3.3V. J’ai gravé le bootloader de la pro micro de sparkfun. Sur ma carte, j’ai une led RGB avec anode commune que je veux piloter à partir des pins 5, 6 et 13 (qui gère le PWM). Le problème est que la composante rouge qui est piloté par la pin 13 ne fonctionne pas. Quelqu’un a t-il une idée?
Mon code dans le setup

pinMode(5, OUTPUT);
  digitalWrite(5, HIGH);
  pinMode(6, OUTPUT);
  digitalWrite(6, HIGH);
  pinMode(13, OUTPUT);
  digitalWrite(13, HIGH);

dans la loop

analogWrite(13, 0);
    analogWrite(6, 255);
    analogWrite(5, 255);

Merci d’avance

Bonjour,

Est ce qu'il y a bien une résistance par couleur?
Est ce qu'il y a une LED_BUILTIN sur la pin 13?

Oui il y a bien une résistance de 1K par couleur et comme c'est une carte que j'ai moi même fabriqué, il n'y a pas à proprement parlé de LED_BUILTIN sur la pin 13, mais cette dernière gère la composante rouge de la led RGB (celle qui ne fonctionne pas justement).
Justement, n'y a t-il pas une résistance interne sur la pin 13 qui mettrait le bazar?

Non, il n'y a pas de résistance interne sur la pin 13 (sauf si tu actives le pullup interne).

Pas d'autres pistes?
Pour plus d'infos, voici la datasheet de la led

https://www.mouser.fr/datasheet/2/348/msl0601rgb-e-1874495.pdf

Tu dis avoir mis une résistance de 1K en série avec chacune des diodes que tu alimentes en 3,3 V.
Avec 3,3 V et uniquement 1k il n’est pas possible dans le meilleur des cas d’avoir plus de 3,3 mA.

Vu que tu ajoutes une diode en série avec la résistance indiquée le courant sera obligatoirement plus faible.
Nous allons essayer d’évaluer ce courant,

D’après la figure 1 de la page 2 de la datasheet je me dis que le Vd de la diode pourrait bien être 1,8 V pour un courant de 2 mA.
Vérifions l’hypothèse : I = (3,3 V-1,8 V)/1000 = 1,5 mA.
Ce n’est pas trop déconnant et avec une courbe aussi peu précise il est difficile d’aller plus loin.

Est-ce bien une résistance série de 1 k qui est câblée ?
Avec les diodes verte et bleue ce devrait être pire, on sera en dessous de 1 mA.
I = (3,3 V - 2,8 V)/1000 = 0,5 mA.

Est-ce bien ce que tu voulais faire ?
Avec un courant aussi faible je serais surpris qu’avec la PWM tu vois quelque chose.

Faire fonctionner des diodes avec des Vd de l’ordre de 2,8 V avec une tension d’alimentation de 3,3 V c’est assez osé.

PS un schéma du montage serrait bien utile.

Est ce que je dois en conclure que mes valeurs de résistance sont trop hautes?
Pourtant, j'ai en gros récupérer le schematic d'une qduino de chez sparkfun où chacune des diodes de la led RGB avec anode commune est en série avec une résistance de 1K.

Les résistances sont peut-être un peu hautes, mais ce n'est pas ça ton problème. La led rouge devrait s'allumer.
Testes la pin à l'oscillo ou au multimètre en faisant un digitalWrite LOW et HIGH.

j'ai testé les pins 5, 6 et 13, et j'ai bien 0V à High et 3,3v à LOW.
Par contre, je commence à avoir un sérieux doute sur l'empreinte donné par mouser pour la led.
La pin 5 du microcontroleur devrait piloter la composante bleue mais elle gère la verte, la pin 6 du microcontroleur devrait piloter la composante verte mais elle gère la bleue.
Cela voudrait dire que l'anode et la composante rouge sont inversée? Les diodes vertes et bleues pourraient elles alors fonctionner?

Pourtant, j'ai en gros récupérer le schematic d'une qduino de chez sparkfun où chacune des diodes de la led RGB avec anode commune est en série avec une résistance de 1K.

Oui et tu ne te poses pas la question si la tension d'alimentation est 3,3 V ou 5 V ?
Avec 5 V le courant est de 2,2 mA, avec 3,3 V le courant n'est plus que de 0,5 mA.

En plus ce n'est pas le problème principal ou alors tout n'est pas encore exposé.

D'après tes écrits il semblerait que les diodes verte et bleue émettent une lumière. Ai-je bien compris ?
Parce que si c'est bien le cas la diode rouge a un autre soucis vu qu'elle a un Vd plus faible que celui des deux autres, c'est elle qui devrait mieux fonctionner que les deux autres. (--> grillé par Kammil)

Un peu de technique :
Comment fonctionne la résistance en série avec la diode ?
Wikipédia te donnera la caractéristique d'une diode, peu importe que ce soit une diode de signal ou une del (led pour ceux qui parlent en anglais).
Ce qui est remarquable dans la courbe I= f(V) --> passé le seuil de conduction une toute petite augmentation de V provoque une énorme augmentation de I.
C'est pour cela que l'on dit qu'une diode doit être commandée en courant et pas en tension.

Pour que la résistance fasse office de source simplifiée de courant il faut que la tension développée à ses bornes soit suffisamment élevée par rapport à la tension aux bornes de la diode afin de minimiser les variations de la diode.

C'est le cas avec une alimentation 5 V(Vr= 5-2,8 = 2,2 V), ce n'est plus le cas avec une alimentation 3,3 V (Vr = 3,3 -2,8 = 0,5 V).
Il faut savoir que les écarts entre les lots de fabrication de semi-conducteurs peuvent atteindre ± 30%.

Tu n'as pas développé ce que tu cherches à faire mais il y a deux point à bien comprendre et à prendre en compte :

  1. si tu veux que la PWM agisse sur quelque chose il faut que ce quelque chose existe. Dans ton cas il faut que tu choisisses un courant max que la PWM ne fera que moduler entre 0 et Imax.
    AMHA il faut faire des essais. C'est une source d'embêtement que de choisir un courant max inutilement élevé.

  2. Le courant dans une sortie d'un micro Atmel avr est limité.
    A) La valeur 40 mA est une valeur "Absolute maximum rating" et est à considérer comme une limite aux conneries de manip, en aucun cas c'est du service permanent.

B) La valeur garantie est 20 mA et attention pour le 32U4 avec ce courant de 20 mA le niveau bas n'est plus 0 V mais 0,7 V à 25°C et presque 1 V avec une température de boîtier de 85°C --> les transistors de sortie du micro ont un Rdson qui n'est pas nul.

C) Pas plus de 200 mA dans le Vcc ou le Gnd, consommation du micro "à vide" comprise.

D) il sera impossible d'allumer une diode avec Vcc= 3,3 V et Idiode = 20 mA.
À 20 mA la tension à l'état bas ne descendra pas en dessous de 0,7 V il restera donc 3,3 V - 0,7 V = 2,6 V --> c'est inférieur au seuil et les diodes verte et bleue ne pourront pas s'allumer.

Vraiment dommage d'avoir fait un circuit imprimé sans avoir maquetté au préalable.

zjbjbjbz:
Cela voudrait dire que l'anode et la composante rouge sont inversée? Les diodes vertes et bleues pourraient elles alors fonctionner?

Oui, effectivement si l'ordre 1-4 est inversé et en fait l'ordre 4-1 les leds vertes et blues vont fonctionner si tu n'allumes pas le rouge.
Si tu n'allumes pas la led rouge tu mets la pin rouge (qui est en fait l'anode) à 1, donc tu peux allumer les leds vertes ou bleu en mettant leur cathode à 0.

salut tout le monde désolé je ne trouve pas comment écrire un nouveau topic donc je test en commentaire si quelqu'un peut m'aider
j'ai deux bande de led rgb adressable de 5M qui font 5v et 45watt chacun je voudrais couple ces deux bandes mes je ne sais pas quel alimentation je doit prendre un 5v90w ou un 5V45w suffira pour les deux ?
je vous remercie d'avance encore désolé pour ce post au mauvais endroit

Comment il me squatte mon topic l'autre! :o
Bon, j'ai inversé ma led et maintenant il n'y a plus que la composante rouge qui fonctionne. Est ce que cela confirme l'inversion de l'empreinte? Si c'est le cas, merci au constructeur Rohm semiconductor >:(
Enfin, merci à Kamill et 68tjs de prendre du temps pour me répondre

Bonsoir

On voit ceci sur la data sheet (à la source, chez Rohm)

pinoutRGB.png

pinoutRGB.png

Une erreur sur la datasheet, c'est possible?

Tout est possible , même si une erreur sur le brochage serait exceptionnelle, nombre de DataSheet sont révisées plusieurs fois, le lien pointe vers la révision 5.

Bonsoir,

je te conseille de tester avec une alim 5V et une resistance d’une valeur comprise entre 330R et 1K.

En 2 minutes tu seras fixe.

Une erreur de brochage sur un datasheet de Rohm, c’est impossible.

zjbjbjbz:
Une erreur sur la datasheet, c'est possible?

Entre les deux schémas le 1 et le 4 semblent inversés

pinoutRGB.png

Sur le premier schéma le 1 est à droite avec les pins tournées vers le haut, sur le deuxième le 1 est à droite avec les pins tournées vers le bas.
Personnellement je me fierai plutôt à la première extraite de la datasheet.

Je vois moi aussi une inversion, chez Mouser ils semblent avoit tourné le boitier de 180°C sans adapter le numéro des broches. Erreur apparente d'interprétation de la Data Sheet chez Mouser

Quand les datasheets sont mises à jour la raison de la maj est indiquée dans les errata.
Que disent les différents errata jusqu'à la version 5 ?

Une erreur de recopie de la datasheet par des tierces entreprises me semble plus probable qu'une erreur de brochage de la révision 5, même s'il ne faut rien exclure.
D'autre part il n'y a pas d'assurance que les datasheets que l'on trouve sur les sites marchand, même s'il s'appelle Mouser, soient dans leur dernière version.
Ne pas s'arréter au premier lien affiché par le moteur de recherche (souvent avec gogole c'est le site de celui qui a payé le plus) mais rechercher systématiquement le lien vers le site du fabricant du produit.