Cours:ArduinoBoutons : Différence entre versions
m |
|||
Ligne 4 : | Ligne 4 : | ||
Si nous nous considérons à la place de la carte arduino, chaque connexion peut être : | Si nous nous considérons à la place de la carte arduino, chaque connexion peut être : | ||
− | *'''une entrée''' ( | + | *'''une entrée/INPUT''' (mesure, observation). Par ex, |
**capteur de température | **capteur de température | ||
**interrupteur | **interrupteur | ||
**mesure de tension | **mesure de tension | ||
**microphone | **microphone | ||
− | *'''une sortie''' ( | + | *'''une sortie/OUTPUT''' (action). Par ex, |
**résistance chauffante | **résistance chauffante | ||
**lampe, voyant lumineux | **lampe, voyant lumineux | ||
Ligne 16 : | Ligne 16 : | ||
={{Bleu|Ex 1: Entrée, sortie ???}}= | ={{Bleu|Ex 1: Entrée, sortie ???}}= | ||
=={{Vert|1 bp, 1 led}}== | =={{Vert|1 bp, 1 led}}== | ||
+ | |||
+ | Commençons tout simplement par commander une sortie tout ou rien (2 états possibles) à l'aide d'un bouton poussoir. | ||
+ | |||
+ | On prendra [[Cours:Shieldinfo#Leds|la led R repérée p0]], et [[Cours:Shieldinfo#Boutons|le bouton poussoir repéré bp0]]. | ||
+ | |||
+ | On se servira des fonctions suivantes : | ||
+ | *[http://arduino.cc/en/Reference/PinMode '''pinMode()'''] permettant de configurer les entrées et sorties(e/s). | ||
+ | *[http://arduino.cc/en/Reference/DigitalWrite '''digitalWrite()'''] permettant de modifier l'état d'une sortie. | ||
+ | *[http://arduino.cc/en/Reference/DigitalRead '''digitalRead()'''] permettant de lire l'état d'une entrée. | ||
+ | |||
+ | {{Question|Compléter le programme suivant pour que la led ne s'allume que si le bouton est appuyé.}} | ||
+ | |||
+ | <source lang=c> | ||
+ | void setup() | ||
+ | { | ||
+ | ..... | ||
+ | } | ||
+ | |||
+ | void loop() | ||
+ | { | ||
+ | ..... | ||
+ | } | ||
+ | </source> | ||
+ | |||
=={{Vert|Détection de changement d'état}}== | =={{Vert|Détection de changement d'état}}== | ||
=={{Vert|2 bps, 1 led}}== | =={{Vert|2 bps, 1 led}}== |
Version du 24 septembre 2013 à 15:23
Ce Tp va permettre d'introduire quelques éléments indispensables à la programmation d'une carte arduino, et surtout d'apprendre à se servir d'une documentation, en l'occurrence celle disponible sur le site arduino.
Il convient de bien comprendre qu'une carte arduino (et plus exactement toute carte utilisant un microcontrôleur) peut servir à faire de multiples tâches. On utilise nécessairement des extensions (shields) et nous devrons spécifier dans le programme la façon de "communiquer"/gérer cette carte. Physiquement, cette communication s'opère à travers de connexions dont le nombre dépend de la carte utilisée. Nous utiliserons une carte arduino UNO qui possède 3 connecteurs pour l'échange de données, numérotés de 0 à 13 et de A0 à A5, soit un total de 20 connexions.
Si nous nous considérons à la place de la carte arduino, chaque connexion peut être :
- une entrée/INPUT (mesure, observation). Par ex,
- capteur de température
- interrupteur
- mesure de tension
- microphone
- une sortie/OUTPUT (action). Par ex,
- résistance chauffante
- lampe, voyant lumineux
- haut parleur
Sommaire
Ex 1: Entrée, sortie ???
1 bp, 1 led
Commençons tout simplement par commander une sortie tout ou rien (2 états possibles) à l'aide d'un bouton poussoir.
On prendra la led R repérée p0, et le bouton poussoir repéré bp0.
On se servira des fonctions suivantes :
- pinMode() permettant de configurer les entrées et sorties(e/s).
- digitalWrite() permettant de modifier l'état d'une sortie.
- digitalRead() permettant de lire l'état d'une entrée.
Compléter le programme suivant pour que la led ne s'allume que si le bouton est appuyé.
void setup()
{
.....
}
void loop()
{
.....
}