Spark-Core-LED

De MCHobby - Wiki
Révision datée du 24 octobre 2015 à 13:12 par Admin (discussion | contributions) (→‎Faire clignoter une LED)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Sauter à la navigation Sauter à la recherche


MCHobby investit du temps et de l'argent dans la réalisation de traduction et/ou documentation. C'est un travail long et fastidieux réalisé dans l'esprit Open-Source... donc gratuit et librement accessible.
SI vous aimez nos traductions et documentations ALORS aidez nous à en produire plus en achetant vos produits chez MCHobby.

Faire clignoter une LED

Faire clignoter une LED c'est comme créer un programme "Bonjour le monde" (l'équivalent du célèbre "Hello World" en anglais). C'est une chouette façon de débuter votre voyage dans le monde du matériel embarqué.

Pour cet exemple, vous aurez besoin d'un Particle Core, un Breadboard, une LED et une résistance (nous allons calculer sa valeur un peut plus loin) et un câble USB.

Brancher

Connectez tous les éléments ensembles comme présenté sur l'image. La LED est connectée sur la broche D0 du Core. La broche positive (la PLUS longue broche) est connectée sur D0 par l'intermédiaire d'une résistance. La broche négative de la LED (la MOINS longue) est connecté sur la masse (gnd/ground).

Notez l'astuce mnémotechnique, le (+) PLUS de la LED est la broche la PLUS longue et le (-) MOINS de la LED est la broche la MOINS longue. Spark.IO-Core-LED-01.jpg
Crédit: Particle.IO www.particle.io

Vous pourriez également placer la résistance entre la masse et la broche (-) de la LED. Cela n'a pas vraiment d'importance. Seul le sens de raccordement de la LED est important.

Spark.IO-Core-LED-00.jpg
Crédit: Particle.IO www.particle.io

Valeur de la résistance

Mais qu'elle résistance faut il mettre en place?

Voici comment nous allons la trouver:

Conformément à la loi d'Ohm : Tension = Courant x Résistance

Par conséquent, pour calculer la résistance, la formule devient

Résistance = Tension / Courant

Dans notre cas, la tension de sortie du Core est de 3.3V. Ces 3.3V est distribuée entre la résistance et la LED. 3.3V = Urésistance + Uled. Comme la chute de tension dans une LED est d'environ 2.0V (Uled). la chute de tension aux bornes de la résistance est donc de 3.3V - Uled.

La tension sur la résistance est donc de:

Urésistance = 3.3V - 2.0V = 1.3V

Le courant nécessaire pour allumer une LED varie entre 2mA et 20mA. Plus le courant est important et plus la LED sera lumineuse.

Il est généralement souhaitable de limiter le courant qui passe dans la LED (à sa limite la plus basse) pour prolonger sa durée de vie.

Nous allons choisir de contrôler cette LED avec un courant de 5mA (soit 0.005 Ampère). Et comme le courant qui traverse la LED traverse également la résistance...

Revenons à notre loi d'Ohms

Résistance = Tension / Courant = Urésistance / Irésitance

Résistance = 1.3V / 5mA = 1.3 / 0.005 = 260 Ohms

Note:
Etant donné qu'il y a une grande variation de valeur pour les chutes de tension dans LEDs (le forward voltage drop) dépendant du type, de la taille, couleur, fabriquant, etc. Vous pourriez utiliser successivement des valeurs entre 220 Ohms et 1K Ohms.

Dans l'image nous utilisons une résistance de 1K Ohms (Brun Noir Rouge)

Le programme

Voici une version du programme proposé par Particle... avec les commentaires traduits pour faciliter la compréhension.

Connectez vous sur votre compte Particle, sélectionnez votre Core, codez et téléversez le FirmWare via Internet.

// Programme pour faire clignoter une LED sur la broche D0
// du PArticle Core.

// Nous allons donner le nom 'led' à la broche D0
int led = D0;

// Cette fonction n'est exécutée qu'une seule fois
// au moment du reset
void setup()
{
  // Initialise la broche D0 comme sortie (''output'' en anglais)
  pinMode(led, OUTPUT);
}

// Cette boucle fonctionne comme une boucle perpétuelle
void loop()
{
  digitalWrite(led, HIGH);   // Allume le LED (HIGH: niveau haut)
  delay(1000);               // Attendre 1000mS = 1 seconde
  digitalWrite(led, LOW);    // Eteindre la LED (LOW: niveau bas)
  delay(1000);               // Attendre une seconde
}



Source: Particle Core Examples créé par Particle.IO.

Traduction (et augmentation de contenu) réalisée par Meurisse D pour MCHobby.be - Translated (and enhanced) by Meurisse D. for MCHobby.be

Traduit avec l'autorisation de Particle.IO - Translated with the permission from Particle.IO - Particle.IO

Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : «  Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.

L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.