spacekoaster Nouveau membre
Messages : 26 Date d'inscription : 16/01/2015
| Sujet: Savoir si son transistor est un NPN ou un PNP avec un arduino Dim 1 Mar - 15:29 | |
| Hey, Voici un petit montage que j'avais trouvé sur instructables (http://www.instructables.com/id/Digital-transistor-identifier/) Je n'invente donc rien, mais il est bien pratique, vu sa petite taille Il affiche le type de transistor dans le moniteur série. J'ai laissé le message en anglais, mais il est très simple de le changer directement dans le programme arduino (; Certes, il ne permet que de déterminer le type de transistor, mais quand on est flemmard et qu'on en a beaucoup à tester, c'est assez pratique Pour les plus flemmard, voici le - code arduino:
int a=13;//pins for transistor// int b=12; int c=11; String type="";
void setup(){ Serial.begin(9600); } void loop(){ Serial.println("Pin status"); Serial.println("----------"); //a=1 pinMode(a,OUTPUT); pinMode(b,INPUT); pinMode(c,INPUT); digitalWrite(a,HIGH); if (digitalRead(b)==1 ||digitalRead(c)==1){ Serial.println("Pin 13 semiconductor is positive"); type=type+"P"; }else{ Serial.println("Pin 13 semiconductor is negative"); type=type+"N"; } digitalWrite(a,LOW); //b=1 pinMode(a,INPUT); pinMode(b,OUTPUT); pinMode(c,INPUT); digitalWrite(b,HIGH); if (digitalRead(a)==1 ||digitalRead(c)==1){ Serial.println("Pin 12 semiconductor is positive"); type=type+"P"; }else{ Serial.println("Pin 12 semiconductor is negative"); type=type+"N"; } digitalWrite(b,LOW); //c=1 pinMode(a,INPUT); pinMode(b,INPUT); pinMode(c,OUTPUT); digitalWrite(c,HIGH); if (digitalRead(a)==1 ||digitalRead(b)==1){ Serial.println("Pin 11 semiconductor is positive"); type=type+"P"; }else{ Serial.println("Pin 11 semiconductor is negative"); type=type+"N"; } digitalWrite(c,LOW); Serial.println("-------"); Serial.println("Result"); Serial.println("-------"); if(type=="NPN" || type=="NNP" || type=="PNN"){ Serial.println("This transistor is NPN type transistor"); } if(type=="PNP" || type=="NPP" || type=="PPN"){ Serial.println("This transistor is PNP type transistor"); } if (type=="NNN"){ Serial.println("Please attach your transistor"); } if (type=="PPP"){ Serial.println("Burnt transistors or not connected properly"); } Serial.println("-----------------------------"); Serial.println(""); Serial.println(""); type=""; delay(2000);
}
| |
|