20.02.2012 16:37 | Validierung eines Touchscreen-Interfaces

Touchscreen-Interface

Fachartikel von Roland Gamper

Ein Touchscreen-Interface wird unter Verwendung verketteter Rechenfunktionen auf einem LeCroy Digital-Oszilloskop untersucht. Die Fallstudie umfasst vier Funktionen: SPI Echtzeit-Dekodierung, die MessageToValue-Funktion, die Trend- und die XY-Darstellung. Dieses Setup wird zur Entwicklung und Validierung eines Touchscreen Hard- und Software-Treibers verwendet.

Physikalische Übertragungsschicht, digitale Kodierung und Interpretation der Dateninhalte gleichzeitig

Die gezeigte Technik ist nicht nur sehr effizient in der Aufdeckung von Fehlern oder bei der Validierung des Designs, sondern auch bei der Diagnose der Fehlerursache. Der Hauptvorteil der Verwendung des Oszilloskops liegt in der Tatsache, dass das Instrument die physikalische Übertragungsschicht, die digitale Kodierung sowie die Interpretation der Dateninhalte gleichzeitig anzeigt. Die gleichen Analysemöglichkeiten können bei vielen anderen serielle Datenströmen, wie UART, MIL-STD-1553, SPI, ARINC 429, LIN, FlexRay, MIPI, I2C, etc. durchgeführt werden. Sie sorgen für schnelle Einblicke in die Qualität und Struktur der Daten sowohl in analogen und digitalen Ebenen sowie der inneren Struktur der Schnittstelle.

Das 240 x 320-Pixel-Display und der damit verbundene Touchscreen sind Teil eines Multi Peripherie-Boards, welches von dem Labor für Numerische Systeme (LSN) verwendet wird, um Studenten an der Genfer Hochschule für Angewandte Wissenschaften zu trainieren. Das Testboard verbindet die Peripherie über eine Vielzahl von seriellen Leitungen (I2C, SPI, CAN, UART) und hat Dutzende von Testpunkten, welche das Abgreifen von Signalen erleichtern.

Der Touchscreen ist ein TSC2046, der über einen SPI-Bus an einen NXP-Mikrocontroller LPC2292 angebunden ist. Der Touchscreen erkennt Hits über die gesamte Fläche des Bildschirms mit 8 Bit Auflösung. Immer wenn der Touchscreen eine Berührung erkennt, wird eine Interrupt-Service-Anfrage (IRQ) an den Controller gesendet. Als Reaktion aktiviert der Mikrocontroller den Touchscreen-Treiber, der das Touchscreen über die SPI-Schnittstelle mit einer Geschwindigkeit von 33.250 kbit/s abfragt. Der Treiber liest die Koordinaten der Berührung aus und leitet diese an die Applikationsschicht weiter.

Einstellung des Oszilloskopes für die Überwachung der Touchscreen-Interaktion

Das Setup benötigt, um das XY-Diagramm darzustellen, eine Verarbeitungskette von 4 Schritten, die in Bild 2 dargestellt ist. Jede der Komponenten der Kette speist seine Ergebnisse in die nächste Komponente ein. Wir werden die Prozesskette betrachten, von dem Auslesen der SPI-Signale auf Kanal 1 und 2 (Bild 3), bis hin zu dem XY-Diagramm, das als 2D-Bild die Hits auf dem Bildschirm darstellt (Bilder 5 und 6). Die Zwischenschritte sind in Bild 4 dokumentiert.

Dekodierung der SPI-Bussignale

Der Dekoder muss im DSO konfiguriert werden, damit der SPI-Nachrichtenfluss zwischen Touchscreen und Mikrocontroller dekodiert werden kann. In diesem Fall benutzen wir Kanal 2 für die Datenleitung und Kanal 3 für die Taktleitung. Der Frame-Modus kombiniert mit dem Inter-Frame-Timeout ermöglicht die logische Interpretation der Mitteilungen als Transaktionen, die die X- und Y-Koordinaten der Touchscreen-Berührung beinhalten. Dies ist später wichtig für die Message-To-Value-Parameter-Umwandlung. Wir haben uns für eine dezimale Anzeige entschieden, um den Vergleich zwischen Positionen und Datenwert zu erleichtern. Die Einstellungen werden in Bild 3 im Detail gezeigt.

Die Konfiguration von zwei Message-To-Value-Parametern

Dieser serielle Datenparameter gehört zu der Proto-Bus-MAG-Option. Er extrahiert einen Wert aus einer bestimmten Nachricht an einer bekannten Position und kann diesen bei Bedarf auch neu skalieren. Für den hier untersuchten praktischen Fall brauchen wir 2 Message-To-Value-Parameter, um die X-und Y-Koordinaten von jeder Nachricht zu extrahieren. Der einzige Unterschied zwischen den beiden Parametern ist die Startposition des Wertes. Es ist ein 32-Bit-Wert für die X-Position und 8-Bit-Wert für die Y-Position.

Trenddarstellung der beiden Message-To-Value-Parameter

Die nächsten Verarbeitungskomponenten sind zwei Trend-Funktionen, die in Bild 4 dargestellt sind. Die Mathematikfunktion F1 kumuliert alle Werte des Parameters P2, während Mathematik F2 alle P1-Werte kumuliert. Beide Trendfunktionen sind so skaliert, dass sie in einem XY-Diagramm die Geometrie und Ausrichtung des Touchscreen- Bildschirms wiederspiegeln. Jedes Paar von Werten auf den Trendfunktionen stellt die Koordinaten eines Berührungspunktes auf dem Touchscreen-Display dar. Wenn alle x,y- Paare in einem XY-Diagramm dargestellt werden, kann die Abfolge der Berührungen auf dem Touchscreen-Display nachgezeichnet werden.

Die Rekonstruktion der 2D-Bilder des Touchscreens

Schließlich werden am Ende der Prozessketten die beiden Trends als Quellen für ein XY-Diagramm verwendet. Dieses Diagramm zeigt die x,y-dekodierten Paare in einem geeigneten Koordinatensystem und rekonstruiert genau die Positionen der Berührung auf dem Touchscreen-Display (Bild 5).

In Bild 6 wird das XY-Diagramm auf dem Oszilloskop im Vergleich mit einem Bildschirm-Foto dargestellt. Beide Bilder zeigen die gleichen Berührungen in der Herzform. Das DSO kann eine vollständige Rekonstruktion des 2D-Bildes direkt aus den analogen Signalen auf den Kanälen 1 und 2 herstellen. Diese Technik ermöglicht eine schnelle Beurteilung der Funktionsfähigkeit des Systems. Darüber hinaus helfen diese Tools im Fehlerfall, die Ursache des Problems aufzuspüren.

Weitere Messmöglichkeiten

Andere Analysetools in diesem Software-Paket erlauben es, die Reaktionsfähigkeit des Benutzers durch die Messung der Verzögerungen zwischen den Touch-Screen-Nachrichten zu qualifizieren.

Mithilfe der Dekodierung und dem Parameter Bus Load ist es leicht, nutzlose Bustransfers aufzuspüren und eine Optimierung des Datenaustauschs durchzuführen. In diesem Beispiel könnte das dritte Byte des X- und Y-Transfers aus der Übertragung gelöscht werden, da es keine aussagekräftige Information enthält.

Parameter wie Delta Messages helfen, die Busaktivität zu beurteilen, wenn sich mehrere Peripheriegeräte einen gemeinsamen Bus teilen.

Die in den Geräten eingebauten Masken- und Pass/Fail-Tests ermöglichen die Validierung von Extrema bei den X- und Y-Werten, um unrealistische Messwerte, die durch die Hardware oder Softwarefehler verursacht werden, zu identifizieren.

Zusammenfassung

Die Entwicklung und Validierung von Hardware-Treibern wird durch die Verwendung der richtigen Werkzeuge erleichtert. Ein digitales Oszilloskop der neuesten Generation ermöglicht die Beobachtung von verschiedenen Signalen an verschiedenen Punkten der numerischen Prozesskette. Die gleichzeitige Beobachtung und Korrelation von analogen, digitalen und codierten Daten ermöglicht eine schnelle Analyse der Fehler und verkürzt die Entwicklungszyklen. Als Beispiel kann ein fehlerhafter Wert, der in dem XY-Diagramm dargestellt wird, mehrere Ursachen haben, wie zum Beispiel in der Touchscreen-Hardware, seriellen Datenübertragung oder Rechenfehler in den Treibern. Die Beobachtung der Ergebnisse der Verarbeitungsschritte, wie sie oben erklärt wurde, kann dem Ingenieur schnell bei der Zuordnung des Problems auf einer der drei genannten Ursachen helfen.

Danksagung

Vielen Dank an F. Vannel von der LSN für die Möglichkeit, Live-Signale auf dem System zu erfassen und hier zu beschreiben. Außerdem Y. Leoni für die Firmware-Entwicklung, die nötig war, um die richtigen Signale und Bilder zu generieren. Dank auch an G. Ritter und U. Schroffenegger bei LeCroy für die Zusammenarbeit, Erkenntnisse und Austausch über das Proto-Bus-MAG-Modul in den LeCroy-Oszilloskopen.

(jj)

Über den Autor

Roland Gamper : Roland Gamper ist Senior Software Engineer und war 22 Jahre bei LeCroy in Genf beschäftigt. Derzeit ist er als Entwickler der Lahniss Ltd, insbesondere im Bereich der Protokoll-Analyse, für LeCroy tätig. Er lehrt auch Mikrocontroller-Programmierung an der Genfer Hochschule für Angewandte Wissenschaften.

Statistik-Zählpixel
 
© Hüthig Verlag Impressum | AGB | Datenschutz | Über Uns | Kontakt

Durchsuchen Sie all-electronics.de durch Eingabe einer infoDirekt-Nummer