Il s'agit d'une question très certainement idiote sur le fonctionnement d'un transistor.
Afin de tester le pilotage d'un moteur 9V avec Arduino, j'ai réalisé un montage assez simple reliant Arduino, une LED, un moteur, pile 9V (pour le moteur) , transistor, diode.
Ma question est très bête :
Pour allumer la LED la commande est digitalWrite(led , LOW ) ; Pour allumer le moteur la commande est digitalWrite(motor , HIGH );
Mon code:
const int motor=6;
const int led=4;
void setup()
{
pinMode(motor, OUTPUT);
pinMode(led_1,OUTPUT);
}
void loop()
{
digitalWrite(led, LOW) ; // Allume la LED
digitalWrite(motor, HIGH) ; // allume le moteur
delay(3000) ;
digitalWrite(led, HIGH ); // eteint la LED
analogWrite(motor, LOW ); // Etient le moteur.
delay(1000) ;
}
Est-ce que cela est normal ? Ou il y a un problème dans le montage qui explique ce fonctionnement contraire ? Si normal, comment faire si je souhaite que le moteur et la LED soit piloter par la même Pin arduino et qu'ils aient le même comportement ? (LED ON -> Moteur ON).
Ta LED est reliée sur le 5V. Pour l'alumer, il faut donc mettre un 0V sur la pin du micro (car si tu mets 5V des 2 cotés, alors il y a une tension null à ces bornes).
Par contre, ton moteur est relié au GND. DOnc tu l'allumes en mettant un 5V.
Inverser la commande du moteur demanderait d'utiliser un transistor PNP, ce qui n'est pas forcément très pratique.
Par contre, pour inverser la commande de la led : c'est tout simple :
1. Tu changes la led de sens
2. Au lieux de brancher l'autre coté sur 5V, tu branches l'autre coté sur GND.
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Retrouvez moi sur mon blog et ma chaine Youtube !