mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Probleme beim Ansteuern eines EEPROM über SPI


Autor: Mücke (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

leider habe ich noch nicht so den Durchblick, was die Programmierung von 
Mikrocontrollern angeht und mit SPI hatte ich bisher auch noch nichts zu 
tun. Deshalb tu ich mich gerade recht schwer.

Ich möchte ein EEPROM (M95080) mit einem Mikrocontroller (MC9S12) über 
SPI ansteuern. Ich habe sowohl das Datenblatt des µC (ab S.919) als auch 
das Datenblatt des EEPROMs gelesen, aber irgendwie werd ich nicht recht 
schlau daraus. Zwar hab ich mal versucht, die Kontrollregister des µC 
passend zu initialisieren (siehe init.c), aber wie jetzt die eigentliche 
Kommunikation erfolgen soll, versteh ich nicht wirklich.

In einem ähnlichen Thread hab ich einen Beispielcode gefunden, aber hier 
konnte wohl auf schon vorgefertigte Befehle wie z.B. SPI_WRITE(0x03) 
zurückgegriffen werden.
http://www.mikrocontroller.net/attachment/47310/code.c

Ich weiß noch nicht einmal, wie ich SS auf high oder low setzen kann. 
Oder macht das der Controller selbst? Also klar, wie ich einen 
"normalen" Pin schalten kann ist mir klar, aber wenn ich ihn für SPI 
verwende, muss das wohl anders funktionieren.

Als ersten Schritt nach dem Initialisieren von SPI dachte ich, ich lese 
einfach mal einen Wert auf dem noch leeren EEPROM aus. Laut DB müsste 
ich ja dann FF zurückbekommen. Auf S.16 des DB ist beschrieben, was 
dafür notwendig ist. Erst das Befehlsbyte für READ senden und dann die 
Adresse. Und wie mach ich das? Sowohl das Byte für READ, als auch die 
Adresse ins Datenregister des µC setzen? Und gleich darauf müsste ich 
dann SS auf high setzen. Nur wie? Und daraufhin müsste ich dann den 
entsprechenden Wert wieder ins selbe Datenregister bekommen.

Boah, wie ihr seht brauch ich dringend Hilfe. Danke dafür!!

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.