Mit dem 16er Touch Pad wird eine Zahl eingelesen mit mehreren Ziffern und bei Enter wird diese Zahl ausgegeben. Als ENTER Taste wird die Taste 16 verwendet.
Der Aufbau ist identisch wie in diesem Beitrag.
Hier das Programm
// TTP229 (HW-136) touch field with 16 pads // serial read to Arduino Uno // add to the number and print when enter is pressed // // connected: 5V & GND, SCL > Pin3, SDO > Pin2 // // Matthias Busse 12.11.2022 Ver. 2.0 #define SCL 3 // connect SCL to Pin 3 #define SDO 2 // connecz SDO to Pin 2 int key; long number; // number to read void setup() { Serial.begin(38400); pinMode(SCL, OUTPUT); pinMode(SDO, INPUT); Serial.println("start"); number=0; } void loop() { key=readTTP229(); // read touch pad if(key>0) { // if key pressed, then print if(key==16) { // Enter Serial.println(number); number=0; } if((key>0) && (key<11)) { // 1-9 and 10=0 number*=10; // number * 10 if(key!=10) number+=key;// number + key pressed 10 > 0 } delay(500); // wait while pressed } } int readTTP229(void) { byte i, pad=0; for(i=1; i<17; i++) { // read all 16 touch pads 1-16 digitalWrite(SCL, LOW); if(!digitalRead(SDO)) pad=i; // if touched store pad no. digitalWrite(SCL, HIGH); } return pad; }
Und die serielle Ausgabe:
von Matthias Busse
Zum Teil1 und Teil 3 dieser kleinen Reihe.
Pingback: Teil 1/3 16er Touch Pad TTP229 mit dem Arduino Uno auslesen. | Shelvin – Elektronik ausprobiert und erläutert
Pingback: Teil 3 : 16er Touchpad TTP229 mit Bestätigung, Kommastellen und +/- Wechsel | Shelvin – Elektronik ausprobiert und erläutert