Arduino Input med intern Pull Up

Fra HTX Arduino
Spring til navigation Spring til søgning

Redigeres af Mikke, Jakob og Mie

Når man opbygger elektrisk kredsløb indeholdende en kontakt/switch kan man risikere at kontakten vil være “floating” når kontakten har en åben forbindelse. Dette gør at resultaterne bliver uforudsigelige og svære at aflæse. For at få et mere sikkert resultat og entydigt resultat kan man i disse tilfælde koble en modstand mellem denne kontakt og Ground (GND). Denne modstand vil nemlig trække kontakten hen til en kendt værdi, når der ikke er forbindelse over kontakten. Så når der aktiveres en forbindelse over kontakten får man den inverterede strøm ud efter kontakten. [1]


Funktionen af intern Pull Up

I arduino miljøet behøver man ikke under udarbejdning af et kredsløb, at tage højde for en pull up resistor i kredsløbet. Arduinoen har nemlig indbygget pull up resistorer, som man ved at skrive en simpel kommando i Arduino IDE’et kan bruge. Denne kommando fungere således at man ved start af programmet (under setup), hvor man definere de pins man tager i brug i stedet for at skrive “INPUT” skriver “INPUT_PULLUP”.[2]

Kode

void setup() {

Serial.begin(9600);
pinMode(7, INPUT_PULLUP);

}

void loop() {

Serial.print(digitalRead(7));

}

Målinger

Her ses en måling, hvor pull up funktion ikke er slået til og kontakten vil "floate":

Float.png

Her ses en måling, hvor pull up er slået til og kontakten er mere præcis:

Ingenfloat.png

målinger:

Maaling2.png
Spænding [V] Strøm [mA]
0 V 0.14 mA
0.5 V 0.12 mA
1 V 0.11 mA
1.5V 0.09 mA
2 V 0.08 mA
2.5 V 0.07 mA
3 V 0.05 mA
3.5 V 0.04mA
4 V 0.03 mA
4.5 V 0.01 mA
5 V 0 mA
5.5 V 0 mA
6 V 0.43 mA
6.5 V 1.93 mA
7 V 3.4 mA

Referencer


Arduino Elektrisk
Arduino Input Input - Input Høj-Lav - Input Strøm-Spænding - Input med intern Pull Up - Analogt - Analogt Input - Analog indgang - Arduino Reference Input - Input Tidsforhold - Specielle Input
Arduino Output Output - Output Høj-Lav - Output Strøm-Spænding - Analogt Output - Output Tidsforhold
Arduino Tidsforhold Arduino Reset Tid - Arduino setup() Tid - Arduino loop() Tid - Arduino Interrupt Tid - Arduino Tidsforhold Variabeltyper - Arduino Tidsforhold Sprogstrukturer - Input Tidsforhold - Output Tidsforhold - Serielle Tidsforhold