Cours:Shieldinfo : Différence entre versions

De troyesGEII
Aller à : navigation, rechercher
m (Descriptions)
Ligne 90 : Ligne 90 :
  
 
</source>
 
</source>
 +
 +
=={{Bleu|Afficheurs 7 segments}}==
 +
 +
Les 2 afficheurs ne peuvent pas être utilisés simultanément. L'état de la sortie mux (arduino port 4 ou PD4) permet de sélectionner l'un ou l'autre. En allumant successivement l'un puis l'autre rapidement, on a l'illusion qu'ils sont tous 2 allumés.
 +
 +
Les segments des afficheurs sont câblés de façon analogue comme décrit ci dessous :
 +
 +
{| class="wikitable"
 +
|-
 +
! Segment
 +
||  a ||  b ||  c ||  d ||  e ||  f || g || pt
 +
|-
 +
|-
 +
! Arduino Pin
 +
|| 13  ||  12 ||  6 ||  7 ||  8  ||  10 || 9 || 11
 +
|-
 +
! Port
 +
|| PB5 || PB4 || PD6 || PD7 || PB0 || PB2 || PB1 || PB3
 +
|}
  
  

Version du 18 juin 2013 à 19:48

Composition

Boutons

description

Le shield comporte 4 boutons, dont 2 possèdent une interruption spécifique comme indiqué dans le tableau suivant :

Bouton Position Arduino Pin Port Interruption Résistance de tirage
bp0 Bas Gauche 2 PD2 0 Pull Up
bp1 Haut Gauche 3 PD3 1 Pull Up
bp2 Bas Droite A0 PC0 Pull Down
bp3 Haut Droite A1 PC1 Pull Down

Principe d'utilisation

const char bpPin[4]={2,3,A0,A1};               // Position physique des boutons
char bpEtat[4];
char bpAncien[4];

void setup()
{
    char i;
    for (i=0;i<4;i++) pinMode(bpPin[i],INPUT); // Déclaration des 4 entrées
}

void loop()
{
    char i;
    for (i=0;i<4;i++)
    {
        bpAncien[i]=bpEtat[i];                 // Conservation des états précédents
        bpEtat[i]=digitalRead(bpPin[i]);       // Lecture des nouveaux états
    }
    if ((bpEtat[0]==0)&&(bpAncien[0]==1))      // En cas d'appui sur bp0
    {
          ......
    }
    .....
}

Leds

Description

6 leds connectées en "cathodes communes" sont présentes sur la carte. Attention, le commutateur permet de choisir entre les Leds et les afficheurs 7 segments. Leur position et couleur sont données dans le tableau suivant

Numéro l5 l4 l3 l2 l1 l0
Couleur r o v r o v
Arduino Pin 13 12 11 10 9 8
Port PB5 PB4 PB3 PB2 PB1 PB0

Principe d'utilisation

void setup()
{
    char i;
    for (i=8;i<=13;i++) pinMode(i,OUTPUT);    // Déclaration des 6 sorties
}

void loop()
{
    char i;
    for (i=8;i<=13;i++) digitalWrite(i,HIGH); // Les Leds s'allument
    delay(500);                               // Attente pendant 500ms
    for (i=8;i<=13;i++) digitalWrite(i,LOW); // Les Leds s'éteignent
    delay(500);                               // Attente pendant 500ms
}

Afficheurs 7 segments

Les 2 afficheurs ne peuvent pas être utilisés simultanément. L'état de la sortie mux (arduino port 4 ou PD4) permet de sélectionner l'un ou l'autre. En allumant successivement l'un puis l'autre rapidement, on a l'illusion qu'ils sont tous 2 allumés.

Les segments des afficheurs sont câblés de façon analogue comme décrit ci dessous :

Segment a b c d e f g pt
Arduino Pin 13 12 6 7 8 10 9 11
Port PB5 PB4 PD6 PD7 PB0 PB2 PB1 PB3


Documents

Media:ArduinoBoard.brd


Media:shieldinfo.sch