Emulierte Tachometer auf einem LCD-

4 Schritt:Schritt 1: Grafik-Controller für LCD Schritt 2: Systemarchitektur unter Verwendung von XPS-Tool von EDK Schritt 3: Matlab-Code für die Überprüfung mathematisches Konzept. Schritt 4: C-Code unter Verwendung von SDK-Tool von EDK

Emulierte Tachometer auf einem LCD-

Der Endzustand des Projektes ist es, ein Tachometer auf dem TFT-Display Vmod Diplay. Der Indikator ist ein Bild, das auf einem Hintergrundbild gedreht wird.
Die Hardware für dieses Projekt ist die folgende:
Nexys4 DDR VmodTFT LCD VmodMIB
Die in der Projektentwicklung verwendeten Werkzeuge sind die folgenden:
ISE Design-Suite 14.7 EDK 14,7 Matlab
Grundlagen Architektur des Systems gebildet wird durch:
Microblaze-Controller LCD-Controller Bild RAM-Speicher LEDs, DIP-Schalter, 7Segments, PixelController, LinesColumns PeripheralsStep 1: Grafik-Controller für LCD



Emulierte Tachometer auf einem LCD-

Emulierte Tachometer auf einem LCD-

Basierend auf dem LCD-Datenblatt wurde eine VHDL-Code implementiert, um die LCD jedes Pixel zu steuern.
    Der erste Schritt besteht darin, alle Signale, um in der Lage, eine Farbe auf der ganzen Display anzeigen zu können synchronisieren. Zweiter Schritt war es, ein statisches Bild angezeigt werden soll. Letzter Schritt war, um die Grafik-Controller für die von der micrcontroller gesteuert anpassen. Die Grundlagen Grafikcontroller Signale RGB, Datentakt, TFT ermöglichen, die Anzeige auf, Uhr und Dimmen zur Steuerung der Hintergrundlichtintensität. Alle bisherigen Signale Ausgänge außer dem Takt, der eingegeben wird. Die für die Verbindung mit sowohl der micrcontroller und Bild BRAM erforderlich Signale sind: RGBin (Eingang), Tastverhältnis (Eingang), die Adresse (Ausgang), Linien (Ausgang) und Spalten (Leistung).

Adressensignal sendet die aktuelle Pixelposition, die eine Zahl, die auf der aktuellen Zeile und Spalte hängt zur Block-RAM, wo das anzuzeigende Bild gespeichert ist. Der BRAM Speicher setzt seinen Ausgang mit der in dieser Speicherzelle enthaltenen Wert. RAM-Speicherausgang auf RGBin verbunden.
Zeilen und Spalten werden nur für Debug verwendet und sind zu einem der Peripheriegeräte genannt uBlaze LinesColumns verbunden.
Hinweis: Die VHD-Datei für Grafik-Controller ist in der Nexys4XPS Archiv im Ordner pcores.Step 2: System-Architektur Design mit XPS-Tool von EDK

Emulierte Tachometer auf einem LCD-

Emulierte Tachometer auf einem LCD-

Emulierte Tachometer auf einem LCD-

Emulierte Tachometer auf einem LCD-

Emulierte Tachometer auf einem LCD-

Der Hauptteil der Architektur ist die uBlaze Mikrocontroller. Es wird von vielen GPIO-Peripherie zur Steuerung LEDs, 7Segment, Bild RAM Inhalt und zum Lesen sowohl von DIP-Schalter und von Grafik-Controller der aktuellen Zeile und Spalte für Debug verbunden. Zu uBlaze auch der Unterbrechungssteuerung als Peripherie verbunden. Drucktasten und internen Zeitgeber sind mit der Steuerung zu unterbrechen.
Ein weiterer wichtiger Teil der Architektur ist Bild-RAM-Speicher. Der RAM-Speicher ist durch einen VHDL-Code beschrieben, und ist eine einfache Zwillings-RAM-Speicher. Dieser RAM enthält das Bild Grafik-Controller wird auf dem LCD angezeigt werden. Die Größe der im RAM-Speicher gespeicherten Bildes hängt von der Größe des virtuellen LCD. Die VmodTFT LCD hat 272 Zeilen und 480 Spalten und eine Farbtiefe von 8 Bit für jede Grundfarbe. Die Anzahl der Zellen des RAM-Speichers ist 130560 und jede der Daten auf 24 Bits enthält. Daher ist die Größe der LCD ungefähr 3Mb. Es erfordert 96 BRAM Block von 135 der Artix7 FPGA hat. Die Bild-RAM-Speicher ein Zusammenwirken mit Pixel-Controller GPIO Peripherie von uBlaze. Diese periphere schreibt auf RAM den Wert eines jeden Pixels. Dies ist mit dem Anschluss A des uBlaze verbunden. Der Port B des RAM wird auf Grafikcontroller angeschlossen ist.
Der nächste Teil der Systemarchitektur ist Graphiksteuerung. Die letztere greift auf den Bild-RAM-Port B mit dem Signal-Adresse und die Port-B Ausgang seinen RGBin Eingang verbunden. Matlab-Code für die Überprüfung mathematisches Konzept: Der Grafik-Controller ist auch mit dem VmodMIB über die Pmod Anschlüsse, um jeden Pixelwert des display.Step 3 eingestellt verbunden.

Emulierte Tachometer auf einem LCD-

Emulierte Tachometer auf einem LCD-

Emulierte Tachometer auf einem LCD-

Das mathematische Konzept:
Der Startpunkt des Indikators ist vertikal. Die Geschwindigkeit wird durch die Rotation des Indikator dargestellt. Zur Anzeige der Drehung sollte jedes Pixel der Anzeige mit dem gleichen Winkel gedreht werden. Um die neue Position eines bestimmten Pixels zu erhalten, ist eine Rotationsmatrix verwendet. Zwei Matrizen, die die Größe des Displays definiert. Für alle Bildpunkte der Anzeige der Rotationsmatrix aufgebracht wird. C-Code unter Verwendung von SDK-Tool von EDK: Um das Ergebnis ist der Punkt, der ruhig zu bleiben und haben einen anderen Begriff, der sowohl auf der Anzeigehöhe und der Drehung angle.Step 4 hängt hinzugefügt

Emulierte Tachometer auf einem LCD-

Der Code wird als strukturierte
folgt:
1. Initialisierung
Alle Peripheriegeräte initialisiert und als Ein- oder Ausgänge, je nach ihrem Zweck eingestellt. Zusätzlich Anfangswert gesetzt, wo nötig. Die Initialisierung Peripheriegeräte sind: LEDs, DIP-Schalter, PixelController (Diese periphere schreibt Daten in Bild RAM-Speicher), RGB OUT (Kanal 2 ist für die Helligkeitssteuerung verwendet wird).
2. Initialisierung des Bild RAM
Das Bild RAM wird Hintergrundbild, um initialisiert. Die Bildanzeige ist eingestellt.
3. Endlos-Schleife
Innerhalb der Endlosschleife zwei zum Schleifen zum Indexieren aller Pixel des Indikators. Auf jedes Pixel angewendet Rotationsmatrix nach dem gleichen Konzept, das zuvor in Matlab getestet wurde. Die Rotationsmatrix Verfahren hat einen Nachteil. Nicht alle Pixel des gedrehten Anzeige durch die Bildanzeigepixel abgedeckt werden, aber nur wenige sind Hintergrundbild aus. Um diesen Fehler zu kompensieren, hat die aufgebrachte Rotationsmatrix einen etwas anderen Blickwinkel.