www.mikrocontroller.net

Forum: FPGA, VHDL & Co. Spartan-3E - lcd display - funzt nicht


Autor: Kr2 Kr2 (kr2)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
hallo,

hab hier mal einen Zustandsautomaten für ein LCD geschrieben, der aber 
leider nicht funktioniert und ich weis nicht warum. Die Simulationen 
sehen alle ganz gut aus, finde da auch keine Fehler. D.h. wende ich mich 
mal an euch.

Im Anhang findet ihr das das ganze Xilinx ise (v10.1) Projekt.

Das ganze besteht aus zwei Komponenten init und in_put. init soll das 
LCD initialisieren und dann 8 daten bit + 1 rs bit die anliegen ans LCD 
schicken. in_put stellt die Daten für LCD zur Verfügung ohne auf die 
Timings des LCD schauen zu müssen, macht alles init.

Das Ganze ist für dieses Bord geschrieben:
http://www.xilinx.com/support/documentation/boards...

In diesem User Guide ist die Beschreibung für das LCD ab S. 41. auf S. 
51&52 ist der  Initialisierung Prozess beschrieben an die ich mich 
gehalten habe.

Da ich noch nicht so lange VHDL programmiere würde ich mich auch über 
Verbesserungsvorschläge freuen. Wie man z.B. XY besser programmieren 
könnte.

Danke im Voraus.

mfg
kr2

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Die Simulationen sehen alle ganz gut aus, finde da auch keine Fehler.
Ich schreibe dir Code hin, der sieht in der Simulation super aus, nur 
läuft der garantiert nicht. Dafür brauche ich gerade mal einen Prozess 
mit drei Zeilen...

Kannst du diese Fragen beantworten:
Was geht nicht?
Welche Meldungen/Warnungen bekommst du bei der Synthese?
Wo lernt man denn einen solchen Beschreibungsstil?
Wozu diese umständliche Verzögerungs-Zähler-Prozedur?
Wozu die Variablen?

Autor: Kr2 Kr2 (kr2)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Was geht nicht?
Kann ich leider nicht genauer sagen. Mir fehlen die Mittel um zu 
schauen, ob das richtige am LCD ankommt. Es tut sich am LCD gar nichts. 
Die Status Leds leuchten alles wie sie sollen.

>Welche Meldungen/Warnungen bekommst du bei der Synthese?
- WARNING:Xst:1426 - The value init of the FF/Latch state_FFd37 hinder 
the constant cleaning in the block init.
- INFO:Xst:1767 - HDL ADVISOR - Resource sharing has identified that 
some arithmetic operations in this design can share the same physical 
resources for reduced device utilization. For improved clock frequency 
you may try to disable resource sharing.

Bei der Warnung weis ich leider nicht wie ich FF/Latch state_FFd37 finde 
bzw. einem Problem zuordnen kann.
Die Info sollte ja kein Problem darstellen.


>Wo lernt man denn einen solchen Beschreibungsstil?
Ich hab ein Skript(Rechnerentwurf, A. Strey, Universität Innsbruck) und 
ein eBook(VHDL Kompakt, Andreas Mäder, Universität Hamburg). Hab mir da 
die Grundlagen angeschaut und angefangen zu programmieren, ohne groß was 
aus den Skripten zu übernehmen. Das ist jetzt eins meiner ersten etwas 
""größeren Projekte"".  Da ich noch ziemlich am Anfang steh, denke ich, 
dass es sich noch verbessert. Bin aber für Verbesserungsvorschläge 
jederzeit offen.

>Wozu diese umständliche Verzögerungs-Zähler-Prozedur?
Ich habe leider keine einfachere Möglichkeit gefunden. Bin aber für 
Vorschläge offen.

>Wozu die Variablen?
Weil ich es zu diesem Zeitpunkt noch nicht besser wusste. Jetzt weis 
ich:
Zitat Lothar Miller:
>>Versuche, die Aufgabe mit Signalen zu lösen.
>>Wenn es tatsächlich nicht anders geht, nimm Variable.

--- --- ---

Wenn es weiter hilft, ich hab auch die "post route Simulation" gemacht 
und die hat auch gepasst, außer ich hab mich vermessen oder was 
übersehen.

Autor: Läubi .. (laeubi) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kr2 Kr2 schrieb:
>>Wozu diese umständliche Verzögerungs-Zähler-Prozedur?
> Ich habe leider keine einfachere Möglichkeit gefunden. Bin aber für
> Vorschläge offen.
Vieleicht hilft dir ja mein LCD 'controller'...
Beitrag "[VHDL] 16x2 LCD Textcontroller / HD44780"
War aber nur ne kleine Spielerrei um die Aussage in ner Appnote man 
könne die 'komplexe' Statemachine für die LCD Ansteuerung nicht efizient 
umsetzen und solle einen Softcore verwenden.

btw: nicht jeder kann rar files lesen... zip ist gebräuchlicher.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.