mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik lcd-trouble, die 100ste


Autor: Klaus Bröntgen (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
..wahrscheinlich zum hundertsten mal; aber ich komme irgendwie nicht
durch....

ich habe eine lcd-routine. prinzipiell funktioniert diese auch (also
alles, was mit "lcd_" beginnt); ein ins codesegment geschriebener
string wird auch ausgegeben (via z-pointer, lpm,adiw).

nun das problem:
lege ich im ram eine liste mit dem alphabet an (label tabelle: ) und
versuche dieses danach auszulesen (label ausgabe: ) sagt das display
nix mehr. im simulator (avr-studio4) ist alles schön,der ram wird
richtig bschrieben, die pointer richtig geladen, das daten-register hat
den richtigen wert, porta (lcd-daten) gibt ihn auch aus.
die lcd_initialisierung funzt auch (schwarzer balken geht weg)
...daher zur kontrolle die vielen sinnlos-warteschleifen...
aber nichts desto trotz gibt das lcd gar nichts aus. irgendjemand ne
idee? ich wäre dankbar...

controller ist ein 90S8515, das lcd natürlich hd44780-kombatibel..

Autor: Klaus Bröntgen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
was jetzt? isses zu schwierig oder zu banal? nu laßt mich nich hängen!

oder will niemand....?

Autor: Olaf K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was mir als erstes auffällt:

.def voll=r17
.def leer=r18

Du hast die beiden Register zwar "voll" und "leer" genannt und auch
so verwendet, aber nie den entsprechenden Wert zugewiesen. Da muß also
erstmal noch ein

clr leer
ser voll

gleich hinter die Stackinitialisierung, sonst klappt schonmal Deine
Portinitialisierung nicht.

MfG Olaf

Autor: Klaus Bröntgen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
...stimmt, jetzt taucht der cursor zumindest wieder auf. die
registerbeschreibung ist wohl bei den vielen copy-und-paste-operationen
abhanden gekommen....(und ich hab steif geglaubt, soweit wär alles in
ordnung)
aber der text fehlt dennoch....

........Hannes..!!!

Autor: Mathias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wie wärs wenn du das ganze ding einmal durchsimulierst? billige
hardwareemulatoren können hier auch wunder helfen

Autor: Klaus Bröntgen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
im avr-simulator gabs keine erkenntnisse....

aber bei mir (mittlerweile): ausgabe ruft falscherweise 'lcd_write'
(zeile 81). dies ist aber nur der teil der schreiboperation, der die
daten ausgibt. vorher sollte man sich schon festlegen, daß man daten
senden möchte. der aufruf muß also rcall lcd_data heißen, damit das rs
gestzt wird. lcd_data ruft dann schon von selbst lcd_write. kleiner
fehler->große wirkung. das lcd dachte, es bekommt kommandos!

aus lcd_write mach lcd_data -> funktioniert!

...dennoch mein dank für die unterstützung......das mit den voll- und
leer-registern hätte ich wohl auch nie entdeckt.

was ist ein "billiger hardwareemulator" ?

Autor: Karl heinz Buchegger (heinzi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Klaus Bröntgen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
achso, das... hab ich. krieg ich aber irgendwie nicht zur kooperation
überrredet. hätte mir hier auch nix genützt, da ich ja eh nur zu
oberflächlich die ports kontrolliert habe (letzten endes scheiterte ja
alles an einem nicht gesetzten rs). und wenn das virtuelle lcd
genausowenig sagt wie das reelle, hilft das ja auch nicht.

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]
  • [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.