Forum: Mikrocontroller und Digitale Elektronik Touch Entprellung für pollin dg 16080


von Thomas (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,
habe einen code aus dem Forum für das Pollin DG 16080 Touchdisplay und 
habe auf dem Display in einem Untermenü eine Art Ausgangstabelle, wo ich 
alle Ausgänge manuell setzten kann. Jetzt ist das allerdings so, dass 
die Ausgänge nur beim ersten Atstendruck gesetzt werden und sobald man 
wieder woanders drückt zurückgesetzt werden, also keine Entprellung 
besitzen.

Also normale tasten kann man ja mit der debounce Funktion aus dem Tut 
entprellen, wie macht man das dann mit solchen Toch-tasten??

Hier mal ein Codeausschnitt:
1
if((x > 10 && x < 30) && (y > 10 && y < 30)){    // Wenn Touch bei Button 1 berührt, dann
2
        _delay_ms(300);
3
              
4
      PORTB= (1<<PB0);
5
      _delay_ms(500);
6
      }

und fürs allgemeine Touch im Anhang.

von Jürgen G. (jrgen_g)


Lesenswert?

Hi,

Du hast kein Prell-Problem, sondern setzt die Ausgänge falsch. Ich gehe 
mal davon aus, dass PORTB Dein Ausgang ist. Der Codeschnipsel oben setzt 
immer ein Bit auf 1 und alle anderen auf 0. Du musst Oder-Verknüpfen um 
ein einzelnes Bit unabhängig vom Rest zu manipulieren. Lies Dir mal den 
Artikel Bitmanipulation durch, dort wird genau beschrieben wie das 
geht. Wenn Deine Touch-Tasten die Ausgänge toggeln sollen, verwendest Du 
die XOR-Verknüpfung, dann ändert der Ausgang bei jedem drücken auf 
Deinen 'Button' den Wert.

Gruß
  Jürgen

von Thomas (Gast)


Lesenswert?

Oh man manchmal sieht man vor lauter Bäume den wald nich ich bedanke 
mich für die schnelle und sehr hilfreiche Hilfe ;-)

Gruß Thomas

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.