Forum: Mikrocontroller und Digitale Elektronik Wechsel von ATMEGA32L auf ATMEGA32


von Matthias (Gast)


Lesenswert?

Hi,

ich steuere über SPI eine FAT16 Formatierte SD-Karte an und lese bzw. 
schreibe Daten auf diese. Dafür benutze ich Holger Klabundes Programm 
was mit einem ATMega32L und einem Takt von 4 MHz wunderbar funktioniert 
hat. Da ich den 32L mit 3.3V betreiben kann, habe ich auch kein 
Umnormiernetzwerk benötigt.

Nun bin ich auf einen ATMEGA32 umgestiegen, damit ich meinen Takt auf 16 
MHz legen kann. Meine einzige Veränderung an meiner vorher 
(funktionierendes) Schaltung ist, dass der Quarz nun 16 MHz hat, der 
Mega32 mit 5 V versorgt wird, und ich das Transistornetzwerk von Ulrich 
Radig für den MISO, MOSI, SCK und CS verwende.

Nun treten folgende Probleme auf:
1.) Meine on-Board ISP, welche ja ebenfalls über SPI funktioniert, 
bringt nur noch den üblichen ISP-Mode Error Fehler
2.) Wenn ich Ulrich Radigs Programm verwende, wird die Karte zwar 
gefunden, allerdings bekomme ich dann komische Clusterwerte etc.

Die CSD-Rückgabe ist:
44 9a 62 7e e2 82 19 4 c8 e 4b 2a b1 bc ae

Bin gerade ratlos wo der Fehler liegen könnte. SD-Karte ist mit 
Linux-Formatiert (Knoppix) mit Fat 16 (Hex6).

von Matthias (Gast)


Lesenswert?

Bei letzten Mal, wo es funktioniert hat bekam ich:

CSD:
0 26 0 32 5f 59 83 c8 be fb cf ff 92 40 40 d7

von crazy horse (Gast)


Lesenswert?

naja, 4facher Takt heisst auch 4fache SPI-Geschwindigkeit auf dem 
SPI-Bus, wenn du keine Programmänderungen machst. Das allein kann schon 
zu schnell für die Karte sein. Ausserdem machen die Levelshifter 
irgendwann auch Murks, wenns zu schnell wird, kommt auf das konkrete 
Design an, wann das passiert.
Da helfen nur die Kartenspezifikation und ein Betrachten der Signale 
weiter. Erst mal kannst du ja den SPI-Takt per Software runterschrauben.

von Matthias (Gast)


Lesenswert?

hab ich auf ein viertel. Leider keine Veränderung. Vorallem warum geht 
der ISP nicht mehr. Das muss irgendei damit zusammenhängen, dass ich ISP 
und dass Transistornetzwerk gleichzeitig an den Pins habe (parallel).

von Matthias (Gast)


Lesenswert?

Hab grade meinen SPI Takt gemessen, liegt ungefähr bei 250 kHz und in 
der Software habe ich jetzt fosc/4 also 4 MHz eingestellt.

von Matthias (Gast)


Lesenswert?

Sieht mir irgendwie so aus, als würde der interne 1 MHz Takt des 
ATMega32 laufen, obwohl ich in meinen Fuse Bits

External Cristal / Resonator High Frequency 1111 11

eingestellt habe. Das passt doch, wenn ich einen 16 MHz Quarz an PIN 
XTAL2 und XTAL1 habe.

von Matthias (Gast)


Lesenswert?

Nachdem mir hier leider keiner Antwortet,schreib ich jetzt trotzdem was 
ich rausgefunden habe. Anscheinend liegt es daran, dass man nicht 
gleichzeitig die SD-Karte und den ISP an SPI anlegen kann, jetzt hab ich 
die SD-Karte mit dem Transistornetzwerk abgemacht und ISP geht wieder.

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.