Hallo zusammen,
ich möchte mit dem 4x3 Keypad die Zahl 12# eingeben und damit Pin 24 und 25 HIGH schalten und außerdem auf dem seriellen Monitor "12" anzeigen lassen.
Dies möchte ich mit jeder Zahl von 1-20 machen und # als Enter Taste nutzen.
In meinem Sketch habe ich es mit den Zahlen 12 und 23 versucht. Der serielle Monitor gibt die Zahlen beim Drücken von 1 bzw 2 aus Kann mir dabei jemand weiter helfen?
Viele Grüße
#include <Keypad.h>
const byte ROWS = 4; // Define the number of rows on the keypad
const byte COLS = 3; // Define the number of columns on the keypad
char keys[ROWS][COLS] = { // Matrix defining character to return for each key
{'1','2','3'},
{'4','5','6'},
{'7','8','9'},
{'*','0','#'}
};
byte rowPins[ROWS] = {12, 11, 10, 9}; //connect to the row pins (R0-R3) of the keypad
byte colPins[COLS] = {8, 7, 6}; //connect to the column pins (C0-C2) of the keypad
//initialize an instance of class
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );
void setup(){
pinMode(24, OUTPUT);
pinMode(25, OUTPUT);
pinMode(26, OUTPUT);
pinMode(27, OUTPUT);
Serial.begin(9600);
}
void loop(){
char key = keypad.getKey();
if ((key == '1') && ('2') && ('#')){ // If key is pressed, send it to the Serial Monitor Window
Serial.println('1');
digitalWrite(24, HIGH);
digitalWrite(25, HIGH);
}
if ((key == '2')&& ('2') && ('#')){ // If key is pressed, send it to the Serial Monitor Window
Serial.println('2');
digitalWrite(24, HIGH);
digitalWrite(25, HIGH);
} }
Im englischen Teil des Forum müssen die Beiträge und Diskussionen in englischer Sprache verfasst werden. Deswegen wurde diese Diskussion in den deutschen Teil des Forums verschoben.
Du willst wirklich und ernsthaft einen Pointer auf ein Array mit einem Buchstaben vergleichen?
Das tut ganz sicher nicht das, was du willst.
Der Kompiler sollte dich mit Meldungen überfluten.
Tipp: Schalte sie ein, und auch lesen.
Bitte schnapp dir das nächstgelegene C oder C++ Buch und lasse dir so erklären, was ein Semikolon bewirkt.