mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik S65 Display am 8051


Autor: Daniel Reinke (sliderbor)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich versuche gerade ein S65 Display (LPH88 Version) an meinem 
AT89C51SND1C zum Laufen zu bewegen, doch leider bleibt das Display 
bisher weiß.

Das Display ist direkt am SPI und P0_0 bis P0_2 angeschlossen ohne 
Vorwiderstände oder sonst was, da der Controller mit 3V läuft, was also 
passen sollte.

Leider habe ich bisher keine Codebeispiele für einen 8051er gefunden, 
nur für AVRs. Ich habe also versucht, das Codebeispiel von Christian 
Kranz für meinen uC zu portieren.

Dadurch gab es zum Beispiel keine Delay-Funktion (arbeite mit Keil 
uVision 3), also hab ich mir selbst eine geschrieben mittels Timer0. 
Funktioniert soweit auch gut.

Was wohl durch die komplett andere Architektur des 8051ers überhaupt 
nicht mehr richtig stimmt, sind die ganzen Timings beim Senden der 
Befehle.

Im Code stehen noch die originalen Befehle für den AVR auskommentiert 
drin. Diese habe ich dann durch entsprechende Befehle ersetzt ( jeweil 
mit /* eigener Code */ markiert).
Ansonsten habe ich soweit alles übernommen, was man brauchen sollte um 
das Display zunächst mal mit einer Farbe zu füllen.
Ich denke, dass die Einstellungen fürs Clock Polarity und Clock Phase 
Bit richtig sind, aber 100% sicher bin ich mir nicht.

Der gesamte Code ist im Anhang, vielleicht hat ja jemand eine Idee, was 
falsch sein könnte oder vielleicht hat das sogar schon mal jemand 
portiert.

Für jede Hilfe wäre ich sehr dankbar!

Schöne Grüße!

Daniel

Autor: Daniel Reinke (sliderbor)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hat keiner einen Tipp oder Lösungsansatz? Oder braucht ihr noch weitere 
Infos?

Autor: rf-bug (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lese dir die Sachen vom Christian richtig durch. Wichtig ist bei der 
Initialisierung die ~50µs Delay. Und an den SPI-Bus vom µC musst du auch 
dran. Sonst funzt es nicht.

Autor: MC (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Das Display ist direkt am SPI und P0_0 bis P0_2 angeschlossen
Ich weiß jetzt nicht, wie P0_0 und P0_2 geschaltet werden, um den 
Display anzusprechen. Aber P0 allgemein besitzt keine Pull-up 
Widerstände. Somit kennt P0 nur die Zustände "nach Masse geschaltet" und 
"offen". Ein logisch 1 muss durch externe Pull-up erzeugt werden.
Vielleicht hilft das ja weiter.

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.