Touch Entprellung für pollin dg 16080

Gast #1828528
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.
Angehängte Dateien:
#1828550
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

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren