Pages: [1]   Go Down
Author Topic: Fonction PinMode()  (Read 852 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Sr. Member
****
Karma: 0
Posts: 274
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour,
Je lit des codes d'accéléromètre et je me pose des question sur ce tutorial:
http://www.arduino.cc/playground/Main/ADXL330


Je me pose des question sur la fonction PinMode().
Ici la broche 8 numérique est configuré en entrée (input).
et la fonction digitalWrite() est une fonction pour l'output et la fonction digitalRead() est une fonction pour l'input.
Code:
pinMode(8, INPUT);
digitalWrite(8, HIGH);         // ligne de code à supprimer???????

...
...

if (LOW == digitalRead(8))   // Si le bouton est enfoncé.
{
...
}

Dans ce code la fonction digitalWrite() est-t-elle de trop?
Cette ligne de code sert-t-elle à rien ici?
On peut enlever cette ligne de code?

Merci
Logged

France
Offline Offline
Faraday Member
**
Karma: 36
Posts: 3430
There is an Arduino for that
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Si je ne me trompe pas, lorsque la broche est en sortie, le digitalWrite(8, HIGH) permet de valider la résistance de pullup intégrée sur cette broche.
Cela permet de faire un tirage au plus de la broche et on n'ajoute pas de résistance externe. Il y a seulement un bouton entre la sortie et la masse.
Logged

0
Offline Offline
Sr. Member
****
Karma: 0
Posts: 274
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Merci fdufnews pour ton explication!  smiley


Donc si j'ai bien comprit:

Tous les broches configurer en OUTPUT ont une résistance "pull-up" qui est activé par défaut. Comme ils disent ici:
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?action=print;num=1146679536
Mais pour les broches configurer en INPUT on doit activer la résistance "pull-up" nous même avec la fonction digitalWrite().

Donc pour ce tutorial du bouton avec l'arduino
http://www.arduino.cc/en/Tutorial/Pushbutton
Si la fonction digitalWrite(7, HIGH); serait écrite on pourrai enlever la résistance?

Merci
« Last Edit: January 14, 2010, 09:15:19 pm by userid3456789 » Logged

0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 76
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

oui, c'est ça ;-)

en fait la resistance de pull-up est une resistance qui se trouve entre ton pin et le 5V.

quand tu fait digitalWrite(pin, HIGH); tu met ton pin au niveau haut et donc tu active un pull up interne a l'atmega.

Attention, on parle aussi de pull-down ( resistance entre le pin et la masse) mais l'atmega ne contient pas de resistance de pulldown, il faut donc toujours en mettre une externe
Logged

Pages: [1]   Go Up
Jump to: