From 50686154dee758f6800311e4b24cdf4e1f405f1f Mon Sep 17 00:00:00 2001 From: "U-LEGISWAY\\sdai" Date: Thu, 10 May 2018 10:24:19 +0200 Subject: Push the button --- notes_arduino.rst | 52 ++++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 40 insertions(+), 12 deletions(-) (limited to 'notes_arduino.rst') diff --git a/notes_arduino.rst b/notes_arduino.rst index 2b4d648..7764c8a 100644 --- a/notes_arduino.rst +++ b/notes_arduino.rst @@ -15,6 +15,8 @@ La carte Arduino **************** +.. .. include:: tmp/version.rst + .. image:: content/ARDUINO_UNO_DIP_01.png :width: 50% :align: center @@ -160,6 +162,14 @@ que celui-ci soit compatible avec l'alimentation de la carte Arduino : certains composants nécessitent une tension plus importante (par exemple un moteur), d'autre des tensions plus faibles (au risque de faire griller le composant). +.. sidebar:: Tension ? + + La tension est une mesure permettant d'évaluer une *différence de + potentiel* entre deux endroits du circuit. La tension fournie par + l'alimentation correspond à cette différence entre les deux bornes du + générateur. De la même manière, chaque composant possède également une + tension, que l'on peut mesurer au moment de l'utilisation du composant. + Le tableau suivant indique la valeur minimale et maximale supportée par différents types de |led|, ainsi que l'intensité du courant pour la tension minimale et maximale. @@ -223,13 +233,6 @@ obtenons le calcul suivant : R &= \frac{(5-2.5)}{0.018} \\ &= 139\ \Omega -.. sidebar:: Déjà des calculs ? - - Ce petit calcul peut sembler théorique, toutefois nous en aurons besoin par - la suite, quand il sera nécessaire d'alimenter des composants avec des - tensions différentes que l'alimentation. (Nous aborderons cela plus loin avec - les notions de *Pont diviseur*, ainsi que les *régulateurs de tension*). - La résistance choisie doit donc avoir une valeur supérieure. En consultant la série E12 [#]_, on peut choisir la valeur la plus proche (par exemple 220 :math:`\Omega`). @@ -975,6 +978,8 @@ résultat sur la console. .. [#] https://www.arduino.cc/en/Serial/Print + + .. note:: Nous découvrons à l'occasion de ce programme la librairie `Serial` [#]_ qui @@ -1088,13 +1093,36 @@ est détecté à proximité (±20 |cm|) : .. utiliser une broche digitale au lieu d'une broche analogique. -.. -*- mode: rst -*- -.. -*- coding: utf-8 -*- +Utiliser un bouton poussoir +=========================== -.. default-role:: literal -.. role:: smallcaps -.. role:: index +Un bouton poussoir est un composant simple, permettant d'ouvrir ou fermer le +circuit selon que le bouton est pressé ou enfoncé. En reliant le bouton à l'une +des entrées de la carte Arduino, on peut ainsi interagir avec des actions de +l'utilisateur. + +.. sidebar:: Un bouton poussoir + + .. image:: content/Push-Button-Switch.jpg + :align: center + :width: 75% + +.. admonition:: Ça ne fonctionne pas ! + :class: warning + + Ce branchement pose un problème : en effet, la fonction `digitalRead` lit une + tension au niveau de la borne. Or, nous avons dit plus haut que la tension + était la mesure d'une différence de potentiel. Pour être plus précis, la + fonction mesure une différence entre le potentiel de la borne, et la masse + (qui sert toujours de référence). Ici, le circuit est ouvert, la mesure ne + peut donc pas être valide ! + + Il faut mettre en place une solution pour que le circuit soit *toujours* + relié à la masse, même quand le bouton est relaché. +Il faut également veiller à ce que cette liaison à la masse ne vienne pas +court-circuiter notre branchement : quand le bouton est pressé il faut que le +courant passe par le microcontrolleur. ========================= L'alimentation du système -- cgit v1.2.3