Göra en tryckknapp utan en resistor
Med hjälp av Arduino, 2 kablar, en tryckknapp, och en ledde och Arduino, aktivera och inaktivera en LED (eller något annat du vill slå på och av).
Istället för att använda knappen typiska Schematisk med en pullup eller pushdown motstånd, som Fritzing bilden, här är ett sätt att komma runt det, genom att använda Arduino, och förklarade knappen pin som en digital ingång, men sedan skriver hög till det digitala ingångsstiftet.
I setup-funktionen:
pinMode (buttonPin, ingång);
digitalWrite (buttonPin, hög);
LED från stift 13 marken
Tråd det som schematiskt i fotografiet:
Arduino stift 2 till stift knappen.
andra sidan av knappen är kopplad direkt till marken.
Ladda upp följande kod:
knappen wired stift 2 till marken direkt
konstanter används här för att ange pin-koder:
CONST int buttonPin = 2; numrera av tryckknapp PIN-koden
CONST int ledPin = 13. antal LED stift
variabler som ändras:
int buttonState = 0; variabel för att läsa tryckknapp status
void setup() {
initiera serieporten
Serial.BEGIN(9600);
initiera LED stift som en utgång:
pinMode (ledPin, produktionen);
initiera tryckknapp PIN-koden som indata:
pinMode (buttonPin, ingång);
initiera buttonPin som utdata
digitalWrite (buttonPin, hög);
}
void loop() {
Läs statligt av tryckknapp värdet:
buttonState = digitalRead(buttonPin);
Kontrollera om tryckknappen trycks.
om det är, är buttonState hög:
om (buttonState == hög) {
eftersom vi skriver hög till PIN-koden när, om det är hög, knappen är inte intryckt, som där är ingen anslutning mellan marken och stift 2:
så gör vad här som du vill när knappen inte trycks
digitalWrite (ledPin, låg);
Serial.println ("knappen inte drivit");
}
annat {
Aktivera LED, eller göra vad du vill när din knapp trycks
digitalWrite (ledPin, hög);
Serial.println ("knappen sköt");
}
}