Tutoriel 2 sur les entrées avancées pour les cartes Intel® Galileo®

Documentation

Installation et configuration

000006653

10/06/2022

Le circuit que vous créez possède deux entrées (microphone et condensateur tactile) et deux sorties (deux voyants). Avant de tout câblage, examinons les types d’entrées que nous utilisons.

Capteur de microphone

Notre capteur microphone est une entrée analogique. Ce type d’entrée signifie qu’il tire les valeurs du monde physique et les convertit en valeurs lisibles par la machine. Nous utilisons ensuite ces valeurs dans notre programme.

Capteur tactile capacitif

Notre capteur tactile est une entrée numérique. Ce type d’entrée signifie qu’il n’interprète que les valeurs entrantes ÉLEVÉEs et LOW (true/false, 0/1).

Il est important de comprendre les différences entre les deux types d’entrées. La carte Intel® Galileo possède six étiquettes d’entrées analogiques A0-A5. Les broches analogiques sont entrées uniquement. Les broches analogiques cartographient les signaux de tension entrants (0 à 5 V) en valeurs d’entiers comprises entre 0 et 1023. En code, nous lisons et écrivons des valeurs analogiques en utilisant les fonctions analogiques.

Se distinguer et attribuer « val » à la valeur entrante de la broche A0 (allant de 0 à 1023)
int val = analogRead (A0) ;
Écrit des valeurs entrantes de A0 (comprises entre 0 et 255, après avoir cartographie la valeur)
analogWrite (13, val) ;

Pour plus de détails sur la façon et la quand utiliser les fonctions analogiques, reportez-vous au guide de référence :
info de référence analogRead
informations de référence analogWrite

Pourquoi y a-t-il une fonction analogWrite ? À quoi écrivons-nous ?

Ici, nous utilisons les broches PWM (Pulse Width Modulation). Nous passerons en savoir plus sur le fonctionnement de PWM, et sur la façon et le moment de l’utiliser dans la section suivante.

Valeurs d’entrée de test

  1. Alimentez la carte de pain :
    • Connectez deux câbles de cavalier aux broches 5 V et GND de la carte Galileo.
    • Connectez les deux extrémités de ces câbles aux bandes verticales de la carte de pain, marquées +, (qui représentent PWR et GND).
    • Cette connexion fournit de l’alimentation à l’ensemble des bandes verticales pour que les autres modules se connectent.
  2. Connectez le microphone :
    • Connectez deux câbles de cavalier provenant des broches PWR et GND du microphone à leurs voies verticales respectives sur la carte de pain.
    • Connectez le cavalier restant du microphone à une ligne sur la section intérieure de la carte de pain.
    • Ensuite, connectez un câble de cavalier de cette même ligne à la broche A0.
  3. Connectez le capteur tactile :
    • Connectez les entrées PWR et GND du capteur tactile (tout comme vous l’avez fait avec les câbles du microphone). Ensuite, connectez les extrémités du câble aux bandes PWR et GND verticales de la carte.
    • Connectez le câble final à une ligne sur la section intérieure de la carte de pain.
    • Il doit s’agir d’une ligne différente de celle du microphone. Connectez enfin le câble de cavalier restant de la même ligne à la broche 2.

Chargez le croquis suivant. Ouvrez votre moniteur de série pour voir ce qui se passe :

S’afficher et attribuer deux variables qui représentent les broches des capteurs

NoteLe mot const situé devant une déclaration variable indique au compilateur que cette variable ne peut pas être mise à jour par le programme.

const int touch = 2 ;
const int sound = A0 ;
configuration nulle(){
Serial.begin (57600) ;
Définissez le mode broche du capteur tactile.
pinMode (tactile, ENTRÉE) ;

}

NoteComme le capteur son est une entrée analogique, nous n’avons pas besoin de définir un mode broche.

void loop(){ // La détection de la vitesse et l’assignation de deux variables représentant la mesure d’entrée des capteurs
touch_input int = digitalRead (tactile) ;
sound_input int = analogiqueRead (son) ;
Imprimez les valeurs sur le moniteur de série
Serial.print (« son » : « ) ;
Serial.println (sound_input) ;
Serial.print (« tactile » : « ) ;
Serial.println (touch_input) ;
Serial.println (« ») ;
Patientez 10 millisecondes avant la prochaine lecture
retard (10) ;

}