Met behulp van Arduino, 2 draden, een drukknop, een geleid, en Arduino, inschakelen en uitschakelen een LED (of iets anders dat u inschakelen wilt en uitschakelen).
In plaats van met behulp van de typische knop schematische met behulp van een weerstand pullup of stapelautomaat, zoals naar de spiegelbeeld Fritzing, hier is een manier om rond die, met behulp van Arduino, en verklaren de knop pin als een digitale ingang, maar dan schriftelijk dat digitale invoer pin HIGH.
In de setup-functie:
pinMode (buttonPin, INPUT);
digitalWrite (buttonPin, hoge);
LED van pin 13 op grond
Draad het zoals het schema op de foto:
Arduino pin 2 tot en met de knop pin.
de andere kant van de knop is aangesloten rechtstreeks op de grond.
Upload de volgende code:
//button wired pin 2 to ground directly // constants used here to set pin numbers: const int buttonPin = 2; // the number of the pushbutton pin const int ledPin = 13; // the number of the LED pin // variables will change: int buttonState = 0; // variable for reading the pushbutton status void setup() { //initialize the serial port Serial.begin(9600); // initialize the LED pin as an output: pinMode(ledPin, OUTPUT); // initialize the pushbutton pin as an input: pinMode(buttonPin, INPUT); //initialize the buttonPin as output digitalWrite(buttonPin, HIGH); } void loop(){ // read the state of the pushbutton value: buttonState = digitalRead(buttonPin); // check if the pushbutton is pressed. // if it is, the buttonState is HIGH: if (buttonState == HIGH) { // since we're writing HIGH to the pin when, if it's HIGH , the button isn't pressed, as in there is no connectivity between ground and pin 2: //so do whatever here that you want when the button is not pushed digitalWrite(ledPin, LOW); Serial.println("button not pushed "); } else { // turn LED on, or do whatever else you want when your button is pushed digitalWrite(ledPin, HIGH); Serial.println("button pushed"); } }