Dog-M / ST7036 Routine für 1-Zeiliges Display SPI-Mode

Gast #677459
Lesenswert?

Hallo Leute,

ich habe mal angefangen eine Routine für den ST7036 Controller zu 
basteln.
Das ist der, der auf allen DOG-M Displays drauf ist.

Unterscheidung 3 / 5 V implementiert
Bis jetzt nur 1-Zeilig weil ich kein anderes Disp zum testen hab.
Nur SPI-Mode implementiert.

Wenn jemand mithelfen möchte alle Dog-M Displays zu implementieren oder 
mir jemand ein 3-Zeiliges Display stellen möchte, bitte melden.

Anregungen Kritik etc. immer willkommen.


Viel Spaß damit.
Angehängte Dateien:
#677996
Lesenswert?

Im Wesentlichen unterscheiden sich nur die Zeilenadressen und die 
Handhabung der Zeilenzusammenschaltung. Wenn Interesse besteht, ich habe 
4Bit-Modus für 3.3 und 5V für 3- und 2-zeiliges gebaut. Bin gestern 
gerade auf das Problem gestoßen, weil ich versehentlich anstatt eines 
3zeiligen ein 2zeiliges bestellt habe.
Gast #678188
Lesenswert?

Also laut Datenblatt ist der unterschied von 2 zu 3 Zeilen klein. 
Initialisierungswerte sind da gleich so weit ich das erkennen kann.

Wie gesagt - ich programmier halt nix rein wenn ich es net testen kann, 
aber nachdem hier im Forum mehr so Codeschnippsel rumflattern kann man 
sich ggf. da auch was zusammenbasteln.

Gruß
Chris
Gast #679194
Lesenswert?

Hallo,

ich finde die DOG-M Displays auch Spitze. Deshalb steuere ich meine 
Basic-Codes in C dem Beitrag bei.

Die Beispiele sind für 2 und 3 zeilige Displays, Anpassung auf 
einzeilige Displays dürfte in Minuten erledigt sein (ein einzeiliges 
hatte ich nicht zur Verfügung). Ansteuerung erfolgt hierbei im 4- oder 
8-Bit Parallelmode, bei 5V Betriebsspannung. Für 3V sind kleinere 
Änderungen der Initialisierung notwendig, was im EA Datenblatt gut 
beschrieben ist.

Inhalt:
- 4-Bit Parallel-Mode für DOG-M 162 (2x16 Zeichen)
- 8-Bit Parallel-Mode für DOG-M 162 (2x16 Zeichen)
- 4-Bit Parallel-Mode für DOG-M 163 (3x16 Zeichen)
- 8-Bit Parallel-Mode für DOG-M 163 (3x16 Zeichen)

Der Code passt für SDCC 8051 (getestet mit Version 2.7.0 und
Standard-8051, 11.0592MHz) und kann sicher leicht auf andere MCs
portiert werden.

Gruß
Matthias
Kontakt: mm19 (ALTGR und Q) gmx-topmail.de
Angehängte Dateien:
Gast #877084
Lesenswert?

OK, möchte meinen Beitrag auch beisteuern.
Hier die Ansteuerung zum Einbinden und der Anschlussbelegung des 
Displays.

Läuft momentan auf einem ATmega32 @ 16MHz mit einer Übertragungsrate von 
4Mbit.

Das Display ist ein dreizeiliges DOG-M163B-A mit 5V Versorgung.

Für Verbesserungen bin ich immer dankbar ;)
Angehängte Dateien:
Gast #989204
Lesenswert?

8bit parallel DOG M modul
init in datenblatt geht wenn man es grundsätzlich mehr als 26µs bis zum 
nächsten Command dauert - ansonsten delays einfügen !
im ST7036 wird genauer auf das timing eingegangen.
auch abfrage via busyflag geht erst nach dem ersten function cmd ans 
display

lg christoph
#4049696
Lesenswert?

Thilo M. schrieb:
> OK, möchte meinen Beitrag auch beisteuern.
> Hier die Ansteuerung zum Einbinden und der Anschlussbelegung des
> Displays.
>
> Läuft momentan auf einem ATmega32 @ 16MHz mit einer Übertragungsrate von
> 4Mbit.
>
> Das Display ist ein dreizeiliges DOG-M163B-A mit 5V Versorgung.
>
> Für Verbesserungen bin ich immer dankbar ;)

Hallo,
Der Beitrag ist schon ein wenig veraltet, vielleicht liest das aber noch 
wer..
Ich möchte meinen ATMEGA328p mit dem DOGM162l-a verbinden
Im Datenblatt sind CLK, SI, RS und CSB beschrieben, in dieser 
Initialisierung sehe ich aber MOSI und MISO beschrieben - wie komm ich 
auf diese Pins? MOSI nehme ich an ist bei mir der SI (PORTB3), aber 
MISO?
1
#define CONTROLPORT PORTB    // PORTB
2
#define CONTROLDIRPORT DDRB  // DDRB
3
#define CTRL_RS PORT3        // PORTB1
4
#define CTRL_SS PORT4        // nehme an, hier ist CSB gemeint? Dann PORTB2
5
#define CTRL_MOSI PORT5      // ??
6
#define CTRL_MISO PORT6      // ??
7
#define CTRL_SCK PORT7       // PORTB5

Bin für jede Hilfe dankbar !!

LG
D.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren