Vom Experimentierboard zur Leiterplatte

#3063658
Lesenswert?

Moin!

Ich habe einen Wav-Player mit Atmega168 und microSD-Card auf einem 
Steckbrett aufgebaut. Alles lief wunderbar.

Jetzt habe ich das Ganze auf eine Lochrasterplatine übertragen und ich 
bekomme die Kommunikation mit der SD nicht mehr hin...
d.h. noch nicht einmal die INIT (sd_raw_init) funktioniert.
(Programm läuft, da die Funktion "error" ausgeführt wird, d.h. LED 
blinkt.)

Hier Auszug aus dem Code:
1
....
2
....
3

4
PRR = 0  ;   // Power for SPI 
5
DDRB |= (1<<3)|(1<<5);   // SPI (MOSI 3, SCK 5) 
6

7
....
8
....
9

10
while(!sd_raw_init()) error(1); //<<<-- HIER BLEIBT ES HÄNGEN
11

12
/* open first partition */
13
    if((partition = partition_open(sd_raw_read,sd_raw_read_interval,NULL,NULL,0))==0)
14
        if((partition = partition_open(sd_raw_read,sd_raw_read_interval,NULL,NULL,-1))==0)
15
    error(2);
16

17
/* open file system */
18
if((fs = fat16_open(partition))==0)  error(3);
19

20
/* open root directory */
21
if(fat16_get_dir_entry_of_path(fs, "/", &directory)==0) error(4);
22
if((dd = fat16_open_dir(fs, &directory))==0) error(5);
23

24
fat16_reset_dir(dd);
25
fat16_read_dir(dd, &directory);
26

27
....
28
....

Alle Verbindungen mehrfach durchgeklingelt, die Fuses überprüft, anderen 
Atemga-Baustein genommen, CS der SD direkt auf Masse gelegt, normale 
(maxi)SD angeschlossen... - ich werd' noch Wahnsinnig.

Die Unterschiede zwischen dem Experimentierboard und der Leiterplatte 
sind:
1. Auf dem Exp.-Board das mySmartcontrol MK2 benutzt - 3V3 mit LM317 und 
nicht über USB.
2. Jetzt einen ATmega328 anstatt eines Atmega168 (mySmartControl).


Und: ich benutze AVR-Studio4 und WinAVR.


Hat jemand eine Idee? Irgendeine????
Angehängte Dateien:
#3063760
Lesenswert?

Bei Lochraster baut man mal schnell ne Brücke. Vielleicht ist der 
Fädeldraht nicht so gut isoliert und es gibt irgendwo einen Schluss?

Wenn es vorher funktioniert hat, dann musst du einen Fehler eingebaut 
haben.

Lege mal alles für zwei Tage weg, versuch nicht dran zu denken und dann 
schau noch mal drauf.
Du wirst staunen, das wirkt manchmal Wunder.

Ich hatte mal eine Steuerung und einen Kurvenschalter (egal was das nun 
genau ist) zusammen geschlossen. Beides bunte Kabel und auf dem einen 
Stecker stand L13 und auf dem anderen Stecker L31. Im Kopf hab ich das 
so "verdreht", dass ich auf beiden L31 las, zumal ich den einen Stecker 
immer auf dem Kopf las.
Am nächsten Tag dauerte es keine Minute meinen eigenen Fehler zu sehen.

Deshalb, mit Abstand sieht man eher, dass die Bäume einen Wald bilden.
#3063857
Lesenswert?

Ich hatte auch schon vermutet, dass es zwischen dem mySmartControl und 
dem "nacktem" Atmega irgendeinen grvierenden Unterschied gibt. Aber der 
Schaltplan gibt nichts her.

Kann es an fehlenden Stützkondensatoren liegen? Hat damit jemand 
Erfahrungen gemacht?

@Frank O.
Ich habe keinen Fädeldraht benutzt, aber nach Kurzschlüssen werde ich 
nochmal suchen...
Vielleicht sind ein paar Tage Auszeit ganz gut, wenn mir heute keine 
Ideen mehr kommen.

@der alte Hans
Ich benutze einen ATMEGA 328 P-PU
der ist für diese Frequenz bei 3,3V geeignet. Siehe Anhang.
Angehängte Dateien:
#3063877
Lesenswert?

Sven W. schrieb:

> Kann es an fehlenden Stützkondensatoren liegen? Hat damit jemand
> Erfahrungen gemacht?

Wie lang liest du eigentlich hier im Forum schon mit?
Wann immer jemand kommt um seinen Schaltplan begutachten zu lassen, 
läuft IMMER das gleiche Spielchen ab!
* Zwischen Vcc und GND gehört ein 100nF möglichst nah ans Gehäuse des µC
* Ja, zwischen alle Vcc/GND Pärchen
* AREF wird nicht an Vcc angeschlossen. Will man den ADC benutzen, dann
  kommt da ebenfalls ein 100nF nach Masse rann.

Entschuldige - aber diese drei Aussagen kommen von der Community JEDE 
Woche mindestens 50 mal!
Wenn jemand neuer hier her kommt, kann ich das ja noch verstehen. Aber 
du bist ja doch schon längere Zeit hier!


Allerdings: Da dein Prozessor läuft, werden es in diesem Fall die 
Blockkondensatoren nicht sein. Was aber nicht heißt, dass du auf sie 
verzichten sollst. Die kommen IMMER drann! IMMER!


> Ich habe keinen Fädeldraht benutzt

Wie dann?
Ist aber auch egal. Man macht da trotzdem schon mal Fehler. Kalte 
Löststellen, Verbdindungen die unterbrochen sind. Verbdindungen, die am 
falschen Pin rauskommen.

> , aber nach Kurzschlüssen werde ich
> nochmal suchen...

Durchklingeln. Stimmen alle Verbdingunen, gibt es ungewollte Kurze mit 
Nachbarpins?
#3064105
Lesenswert?

OK, OK, OK !
Trotz meines doch recht guten elektrotechnischen Wissens, bin ich doch 
noch recht unerfahren in der Entwicklung von Schaltungen. Aber das 
ändert sich gerade...

Mit der Taktfrequenz habt ihr völlig recht. Ist im Datenblatt aber auch 
recht unübersichtlich bzw. missverständlich.
Und das "mySmartControl" mit 20MHz taktet und einen Jumper zur Auswahl 
der Betriebsspannung (3V3 oder 5V) anbietet... (es läuft mit 3V3 
stabil.)

Also: Asche auf mein Haupt... ich werde in Zukunft die Datenblätter 
intensiver lesen.


Muss ich also eine 5V Versorgung benutzen und noch Blockkondensatoren 
einbauen.
#3064186
Lesenswert?

Abdul K. schrieb:
> Der LM317 brauch keinen Kondi!

Das kommt immer drauf an was man dahinter dran haengt und sollte jedes 
mal neu entschieden werden.
Es gibt kaum eine Schaltung die mit allen moeglichen Umstaenden klar 
kommt, und die Hersteller sichern sich bei solchen Aussagen auch noch 
mal ab.

der alte Hanns schrieb:
> "Performance may be improved with added capacitance ...
Gast #3064454
Lesenswert?

Sven, was hindert Sie, die Schaltung probehalber mit einem passenden 
Quarz oder den internen 8 MHz laufen zu lassen? Klar, die Ausgabe wird 
etwas - nun ja, breit - aber um ein schnelles Resultat zu sehen ?!
Denn die 5 V - Versorgung alleine reicht ja nicht, Sie brauchen auch 
noch Pegelwandler.
#3064637
Lesenswert?

Karl Heinz Buchegger schrieb:
> Würg Jönsch schrieb im Beitrag #3063912:
>> Ich glaube der LM317 will einen C_Out haben, oder?
>
>
> Ach was. Den empfiehlt der Hersteller nur, weil er keine Ahnung hat :-)

Karl-Heinz, bist heute richtig in Form. ;-)

Ist aber hart hier, ganz ehrlich!

"20MHz gehen nicht mit 3,3Volt!" "Doch die gehen!" "Nein die gehen 
nicht, der Dingsbums hat recht!" und "Schau doch mal da und dort ins 
Datenblatt!"

"Ich hab "so ein geballtes Wissen", aber sag mal, wie mache ich 
eigentlich den Lichtschalter an?"

Dass es da auch mal dem Karl-Heinz zu bunt werden kann, wer will es ihm 
übel nehmen?!
#3064892
Lesenswert?

Ich ignoriere hier jetzt mal einige Antworten einfach . Und danke an 
alle, die ernsthaft auf die Frage eingehen.

Ich werde als erstes den Takt mal auf intern schalten (wie empfohlen), 
um zu
sehen, ob was geht.

Die 3V3 wurden übrigens bewusst gewählt, um genau der Zusatzbeschaltung 
für die SD zu entgehen.
#3065028
Lesenswert?

Sven W. schrieb:
> Die 3V3 wurden übrigens bewusst gewählt, um genau der Zusatzbeschaltung
> für die SD zu entgehen.

Das ist ja auch gut und richtig so.

Du hast diese Reaktion und damit dich ein bisschen hoch zu nehmen auch 
etwas provoziert.

War ja keiner wirklich "bissig" hier.

Berichte doch bitte, ob es läuft und woran es gelegen hat!
#3066732
Lesenswert?

So, habs zum laufen gebracht.

Dem LM317 am Ausgang ein 1µF und dem Atmega an VCC/GND einen 0,1µF...

Und es läuft mit 3,3V bei 8MHz (nur intern Takt) und 20MHz.

Nur, daß ich nach dem Zuschalten der Spannung noch einmal ein RESET 
machen muss, aber ich habe auch noch nicht die "Brown-out detection" 
(2,7V)aktiviert. Vielleicht auch ein anderes Timing-Problem...


Da die 20MHz ausserhalb der Spezifikation für 3,3V sind und das ganze 
bei 8MHz schon läuft, werde ich der Schaltung mal demnächst einen 10 
oder 12MHz Quarz spendieren.

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