mikrocontroller.net

Forum: Compiler & IDEs SPI-Flash Mega32


Autor: Flo R. (herrpool)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Moin Moin,

Das Thema SPI hört wohl nie auf, auch mir bereitet es Kopfzerbrechen.
Ich möchte einen Winbond SPI Flash (W25X16) an einen Mega32 anschließen
Datenblatt: 
http://www.winbond-usa.com/products/Nexflash/pdfs/...
Angeschlossen ist alles, als CS nutrze ich portb0.
Einfaches senden funktioniert, das hab ich mit einem Max7221 getestet 
der entspechend seines Empfangs Dioden anschaltet. Ich möchte erstmal 
nur das Statusregister auslesen, also sende ich 0x05, aber es kommt 
immer FF als Antwort zurück, was nicht sein kann denn ein Flag ist laut 
Datenblatt nur 1 wenn der speicher beschäftigt ist.
 Also hab ich den MISO pin mal mit nem Draht auf Masse gezogen. Wenn ich 
dann was empfangen möchte kommt 00 raus, also soweit sollte das ja 
funktionieren.
Defekt ist der Flash wohl auch nicht, da ich einen 2. getestet hab der 
sich genau so verhält.
Den Code hab mal angehängt in der Hoffnung dass Jemanden der Fehler 
auffällt.

mfg
flo

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Den SPI Code sollen wir uns jetzt aus der functions.o Datei
zusammenraten ?

Autor: Flo R. (herrpool)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
oh ha, natürlich nicht. jetzt also noch mal die c datein ;)

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
/HOLD liegt bei dir auf High ?

Autor: Flo R. (herrpool)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja hab ich mit VCC verbunden, das hat aber leider auch nichts geändert. 
leider ab ich kein oszilloskope sonst könnte man ja mal sehen ob der 
überhaupt was sendet

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der ATMEga32 läuft mit 3.3V ?
Wenn nicht, was für Pegelkonverter benutzt du
für deinen 3.3V Flash ?

Autor: Flo R. (herrpool)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja läuft alles auf 3,3V auf dem netzteil vom pc, hab auch schön 
kondensatoren dran. aber stimmt das ist der einzige unterschied. wenn 
ich den 7221 dran hab steck ich den mega bei 5v rein damit die leds auch 
leuchten. meinst das könnte daran liegen?

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>steck ich den mega bei 5v rein

Doch hoffentlich ohne den 3.3V Flash ?

Autor: Flo R. (herrpool)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hehe nene der flash hat noch nie 5V gesehen. das war nur für den anderen 
baustein der brauch eben 5v für die leds

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>hehe nene der flash hat noch nie 5V gesehen.

Dann ists ja gut ;) Irgendwie fällt mir auch nichts
mehr ein, ausser das du in main() "int" und "uint8_t"
ziemlich wild durcheinanderwürfelst. SPI sieht ok aus.

Autor: Flo R. (herrpool)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich hab mittlerweile so viel ausprobiert. was sollte man denn verwenden 
uint8_t ? eine frage habe ich noch, im datenblatt vom flash steht der 
brauch mode 0 oder 3, habe ich auch so eingestellt aber kann das sein 
dass man im controller genau das andere einstellen muss? danke auf 
jedenfall erstmal für deine mühen!!
ich werd mal den stromverbrauch messen, vielleicht ist er ja tatsächlich 
im power down modus

Autor: Uhu Uhuhu (uhu)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Und woher nimmst du die Sicherheit, daß deine Verdrahtung fehlerfrei 
ist?

Autor: Flo R. (herrpool)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Obs richtig ist weiß ich nicht, ich nehm es mal an. jedenfalls ist alles 
so angeschlossen wie auf dem bild hier das ist sicher

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
/WP solltest du auch an Vcc legen. An /CS einen Pullup.
Siehe Datenblatt Figure 20.

"/CS Must Track Vcc"

Autor: Flo R. (herrpool)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ihr seid echt super!! jetzt scheint es zu funktionieren!!! wenn ich 
jetzt das statusregister auslese bekomme ich 232 raus. gleich mal testen 
ob sich der inhalt auch ändert wenn ich das Write enable bit setze

Autor: Flo R. (herrpool)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So habs getestet... und es funktioniert!!! vielen Dank noch mal. Da 
brauch ich wohl noch etwas übung damit ich in zukunft auch alles klein 
gedruckte im datenblatt ernstnehm ;)

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.