Events auslösen beim Bedienen eines TFT Touchpads

Hallo.

Ich habe ein TFT Touchpad mit 240x320 Pixel an einem Mega 2560. Das Abfragen der x/y Position funktioniert einwandfrei. Nun soll an beliebigen x/y Koordinaten ein Wert hinterlegt sein vom Typ "byte" (int wäre noch besser aber byte reicht erstmal). Ich tippe also beispielsweise auf x/y=35/123 und ich bekomme den Wert von z.B. 200 zurück.

Lösung: Ein zweidimensionales Array der Art: "byte values[240][320];" wo ich die Werte alle hinterlege. ..... und weiter gehts nicht. Beim Kompelieren bekomme ich: "error: size of array 'values' is too large".

Wie verknüpfe ich nun meine Werte mit den angetouchten x/y-Positionen?

Gruß

Andreas

Ein Byte-Array mit den Dimensionen von 240 mal 320 braucht 76800 Byte RAM. Der Arduino Mega hat aber nur 8192 Byte. Du kannst das Array zB in ein externes EEPROM abspeichern. Du kannst die Auflösung verringern und nur alle 5 bis 10 px einen Wert definieren und so gilt ein Wert für 5x5 oder 10x10 px. Aber auch dann brauchst Du einen externen Speicher oder speicherst es unveränderbar im Flash.

Grüße Uwe.

Hallo Uwe,

das mit dem externen EEPROM hatte ich auch schon überlegt - habe sogar noch einen in der Schublade. Ich hatte gehofft, dass man programmtechnisch was machen kann - und die Auflösung zu verringern, ist schon pfiffig. Ich werde beides kombinieren: Unveränderliche Werte kommen ins externe Flash und der Rest ins RAM.

Danke & Gruß Andreas