Forum: Mikrocontroller und Digitale Elektronik SPI Initialisierungsfolge fuer EA DOGMxxx


von Klaus D. (Gast)


Lesenswert?

Geschätztes Forum,

zur Einarbeitung in dieses Thema habe ich nach Infos gesucht und 
folgendes gefunden:

Beitrag "Re: Initialisierungsfolge fuer EA DOGM 163 SPI 3.3V"

Der Beitrag von Tino Kühn vom 27.11.2011 ist sehr aufschlussreich und 
super dokumentiert. Ich möchte es aber in Assembler realisieren.

In der Datei "doc_m163.c" steht:

#define DOGM163_CSB     PB0     // Port fuer CSB am µC
#define DOGM163_RS      PB1     // Port für RS am µC
#define DOGM163_SS      PB2     // SS am Atmega8
#define DOGM163_MOSI    PB3     // MOSI, Master out slave in, am Atmega8
#define DOGM163_SCK     PB5     // SCK am Atmega8

Den Anschluss DOGM163_SS kann ich aber nicht finden im Datenblatt des
EA DOGMxxx-A.

Weiss jemand, was gemeint ist und opfert seine wertvolle Zeit, mich 
etwas klüger zu machen? Besten Dank im Voraus.

MfG

Klaus

von spess53 (Gast)


Lesenswert?

Hi

>Den Anschluss DOGM163_SS kann ich aber nicht finden im Datenblatt des
>EA DOGMxxx-A.

/CSB am Dog-M

MfG Spess

von Klaus D. (Gast)


Lesenswert?

@spess53

vielen Dank für die Antwort.

Hier nochmal die #define's:

#define DOGM163_CSB     PB0     // Port fuer CSB am µC
#define DOGM163_RS      PB1     // Port für RS am µC
#define DOGM163_SS      PB2     // SS am Atmega8
#define DOGM163_MOSI    PB3     // MOSI, Master out slave in, am Atmega8
#define DOGM163_SCK     PB5     // SCK am Atmega8

Danach ist DOGM163_CBS doch schon ans PB0 des ATMEGA8 angeschlossen. 
DOGM63_SS soll ans PB2 des ATMEGA8 angeschlossen werden. Oder verstehe 
ich irgendwas falsch?

Nach aller sonstigen Literatur zum Thema sollten die 4 übrigen 
Anschlüsse für SPI eigentlich ausreichen da das LCD nur Daten empfängt 
und keine sendet. Deswegen wird auch kein MISO Signal benötigt.

Gruss Klaus

von spess53 (Gast)


Angehängte Dateien:

Lesenswert?

Hi

>Danach ist DOGM163_CBS doch schon ans PB0 des ATMEGA8 angeschlossen.
>DOGM63_SS soll ans PB2 des ATMEGA8 angeschlossen werden. Oder verstehe
>ich irgendwas falsch?

Du kannst prinzipiell jedes freie Pin für das Chipselect benutzen. 
Allerdings sollte trotzdem das SS-Pin nicht als Eingang konfiguriert und 
offen oder auf L gezogen werden. Das SPI schaltet sonst in den 
Slave-Mode um und nichts geht mehr.

>Ich möchte es aber in Assembler realisieren.

Habe ich schon mal vor ein paar Jahren gemacht (Anhang).

MfG Spess

von Klaus D. (Gast)


Lesenswert?

Hallo spess,

nochmals besten Dank, auch und ganz besonders für die Assembler Dateien.

Eigentlich möchte ich mich selbst reinquälen damit mein Gehirn nicht 
vertrocknet. Mit dem 4-Bit Anschluss des DOGM162-A und ATMEGA8 habe ich 
es fast alleine hinbekommen, nur bei der Initialisierung habe ich etwas 
vergessen. Das hat sich so ausgewirkt, dass ich das CGRAM nicht zur 
Verfügung hatte. Ich glaube mich zu erinnern, dass Du bei meinem 
damaligen Hilferuf auch wertvolle Hinweise zur Lösung meines Problems 
gesendet hast.

Aus Deinen Dateien habe ich aber schon gelernt: Die Anweisungen 
.if/.endif sowie .macro/.endmacro kannte ich bisher noch nicht. Ich 
glaubte wohl, sowas sei Hochsprachen wie C oder Bascom vorbehalten.

Ein wunderschönes Wochenende wünscht Dir

Klaus

von spess53 (Gast)


Lesenswert?

Hi

>Eigentlich möchte ich mich selbst reinquälen damit mein Gehirn nicht
>vertrocknet.

Musst doch nicht rein sehen.

>Aus Deinen Dateien habe ich aber schon gelernt: Die Anweisungen
>.if/.endif sowie .macro/.endmacro kannte ich bisher noch nicht.

Dann sieh dir die Hilfe zum Assembler an. Da findest du bestimmt noch 
mehr.

MfG Spess

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.