mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik EA DOGM162 mit STM32 reagiert nicht mit SPI


Autor: C. D. (schnack)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,
seit ein paar Tagen versuche ich, dem Display EA DOGM162 ein 
Lebenszeichen zu entlocken. Angeschlossen ist er am STM32F103RE (SPI1).

Beschaltung: SPI nach Datenblatt, mit 5V Versorgung. Die Pins CSB und RS 
hängen auf Masse.
Die SW wie im Anhang beschrieben. Ich habe die Settings nach EA 
Datenblatt, nach Mißerfolg auch mit Sequenzen, die ich ergoogelt habe, 
benutzt.

Mit einem Oszi habe ich die SPI-Funktion prüfen können, da kommt alles 
raus, wie es soll. Aber das Display ziert sich, auch nur irgendetwas 
darzustellen. Zwischen den Kommandos habe ich nun schon ca. 2s 
eingefügt, ohne daß das Display deswegen besänftigt wäre.

Auch ein Ersatzdisplay gleichen Typs zeigt nichts an.

Ach ja: Davor hatte ich den Aufbau mit 3,4V und den dabei notwendigen 
Kondensatoren betrieben, natürlich mit anderen Settings - immer nach 
Datenblatt. Dabei viel mir schon auf, daß sich die 5V Boosterspannung am 
Pin 24 (V_OUT) nicht einstellen wollte. Auch mit Booster kam ich nicht 
über ca. 2,4V (also weniger als die angelegten 3,4V..) hinaus. Und ja: 
Die Polarität der Kondensatoren habe ich ein gefühltes Dutzend Mal 
geprüft.
Deswegen habe ich danach mit 5V weitergemacht, in der Erwartung, daß die 
High-Pegel des STM32 für den DOGM ausreichen.

Immerhin blinkt die Kontroll-LED, die im Takt der Sequenz ein- und 
ausgehen soll.

Hat jemand eine Idee?
Grüße
schnack

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich sehe nicht ein einziges wackeln am CS Pin vom Display.

>Beschaltung: SPI nach Datenblatt, mit 5V Versorgung. Die Pins CSB und RS
>hängen auf Masse.

Achso, mach noch mal deine Hausaufgaben.

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

>Die Polarität der Kondensatoren habe ich ein gefühltes Dutzend Mal
>geprüft.

Die Teile wollen Keramik-Cs. Und die sind ungepolt.

>Auch mit Booster kam ich nicht
>über ca. 2,4V (also weniger als die angelegten 3,4V..) hinaus.

Eine höhere Spannung kannst du auch erst nach erfolgreicher 
Initialisierung messen.

MfG Spess

Autor: M. B. (Firma: TH Nürnberg) (ohmen)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
holger schrieb:
> Ich sehe nicht ein einziges wackeln am CS Pin vom Display.
>
>>Beschaltung: SPI nach Datenblatt, mit 5V Versorgung. Die Pins CSB und RS
>>hängen auf Masse.
>
> Achso, mach noch mal deine Hausaufgaben.

Muss man nicht an RS wackeln??? ;-)

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

>Muss man nicht an RS wackeln??? ;-)

Kommt darauf an, was man machen will.

MfG Spess

Autor: C. D. (schnack)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
danke erst einmal - ich fasse mal zusammen, wie ich es verstanden habe:

* CS-PIN  (CSB) nur während der Kommandophase auf Masse ziehen, sonst 
High.
* RS bleibt erstmal auf Masse. Sobald ich Zeichen ausgeben will, wird 
das Teil auf High gezogen.
* Nur Keramik-Kondensatoren bei 3,3V-Betrieb. War mir neu, die 
Datenblatt beschaltung hat Kondensatoren mit Polarität gezeigt. Aber das 
läßt sich ja ändern... erstmal probiere ich mit 5V weiter. Wenn das dann 
läuft..
* Booster-Spannung: Ich habe das Voltmeter die ganze Zeit laufen. Leider 
hat sich die Spannung zu keinem Zeitpunkt geändert. Das hat mir ja auch 
gezeigt, daß da irgendwas nicht stimmt..

Also: ich ändere das erstmal mit dem CS-Pin. Daran soll es nicht 
scheitern..

Grüße
schnack

Autor: C. D. (schnack)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hm,
das hat jetzt leider nicht so funktioniert. Anbei wieder der Code.
Ich habe mit dem Oszi geprüft, daß der CS-Pin während der Übertragung 
auf Masse gezogen wird. Die Schleife miniDelayLoop() ist entsprechend 
angepaßt.
Wieder zeigt das Display nichts, ebenso das Ersatz-Display.

Kann es noch eine andere Ursache geben?

Grüße
schnack

Autor: C. D. (schnack)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hm, ja es gibt sie.
Z.B., wenn man die Pins 20 bis 40 einfach so vertauscht.
Chapeau EA! Trotz dieser Verpolung ist das Display nicht kaputt 
gegangen.
Und prompt zeigte sich der blinkende Cursor.
Anbei die Belegung für die (wenigen), denen es nicht so gehen soll wie 
mir..
Grüße
schnack

Autor: C. D. (schnack)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Und inzwischen klappt es auch mit 3,3V und Elkos (hatte nichts anderes). 
Anbei der Code, diesmal auch mit Textausgabe (ohne blinkenden Cursor).
Die Umschaltung Text/Befehl läuft über PIN3 (PortA), der den Display-Pin 
39 (RS) schaltet.
Grüße
schnack

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.