Hallo liebe Mikrocontroller Gemeinde, ich verzweifle gerade mal wieder. Ich habe mein Projekt soweit vorbereitet und mit dem Arduino UNO R3 getestet. Softwareseitig passt es, die Schaltung bisher auch. Nun wollte ich das Ganze auf einen eigenständigen 328P-PU bringen und letztendlich auf eine Platine. Also Bootloader auf den Chip, Programm drauf. Funktioniert soweit, nur die SD Karte wird nicht initialisiert. Es hängt bspw. auch ein 16x2 Display dran (via 4094 um Ausgänge zu sparen). Dieses funktioniert, wird korrekt initialisiert und kann Daten anzeigen. Aber bei der Initialisierung der SD Karte bekomme ich Fehler 1 = "timeout error for command CMD0 (initialize card in SPI mode)". Aber nur beim Standalone Chip! Baue ich denselben Chip in den Arduino und stecke die 4kabel entsprechend um, funktioniert die Initialisierung und das Ganze Programm! Außer den 4 Kabeln am 328p bzw. Arduino wird nichts umgebaut am Breadboard, die Verkabelung ist also quasi die Selbe. Die Schaltung ist bisher testweise per Breadboard aufgebaut, noch nichts gelötet. Da der Chip im Arduino Board funktioniert schließe ich falsche Fuses oder fehlerhafte Programmierung aus. Da das LCD Display funktioniert schließe ich ein generelles Versagen der Standalone Schaltung auch aus. Woran kann es liegen? Noch ein paar Daten: Standalone Schaltung ala: http://arduino.cc/en/Main/Standalone - 16MHz Quartz an pin 9/10, jeweils 22pF richtung GND - +5v an pin 7, 20, jeweils 100nF richtung GND - GND an pin 8, 22 - 10K von pin1 auf GND Stromversorgung: - geplant war 7805, im Moment zapfe ich im Standalone aber auch einfach die 5V vom Arduino um Fehler auszuschließen SD Kartenleser von "LC Studio" angeschlossen ala: http://forum.arduino.cc/index.php?PHPSESSID=1l183mgh8net2i5sbgvd1lnq72&topic=186379.msg1380090#msg1380090 - entweder an Pins 16,17,18,19 (328p) oder auf dem Arduino an Digital 10,11,12,13 (was ja das Selbe sein sollte) - verwendete Library: Arduino SdFat Library by William Greiman - init Aufruf: sdCard.begin(10, SPI_FULL_SPEED) oder sdCard.begin(10, SPI_HALF_SPEED) oder... macht keinen Unterschied Ich hoffe ich habe keine wichtigen Infos vergessen, Schaltplan hab ich grad nicht zur Verfügung, ein Foto vom Breadboard Aufbau kann ich nachreichen bei Interesse. Also, die spannende Frage: Warum funktioniert es wenn der Chip auf dem Arduino Board steckt, aber sobald der Chip Standalone betrieben wird gibt es einen Timeout? Vielen Dank, Mit freundlichen Grüßen Martin Schmidt
>Also, die spannende Frage: Warum funktioniert es wenn der Chip auf dem >Arduino Board steckt, aber sobald der Chip Standalone betrieben wird >gibt es einen Timeout? Falsch angeschlossen.
martin schmidt schrieb: > Also, die spannende Frage: Warum funktioniert es wenn der Chip auf dem > Arduino Board steckt, aber sobald der Chip Standalone betrieben wird > gibt es einen Timeout? Pullups ?
Hi, vielen Dank schonmal für die Antworten. holger schrieb: > Falsch angeschlossen. Ja, das ist möglich, aber ich hab es jetzt gefühlte 100mal durchgeschaut und find es nicht. Ich habe nun doch mal das Breadboard Foto als Anhang beigefügt, bitte nicht erschrecken :). Beim Wechsel von Standalone zu Arduino versetze ich lediglich den 328p und die 4 Kabel vom SD Reader (im Bild die 3 blauen von oben rechts links zum 328p). Ich setze sie von pins 16,17,18,19 am 328p auf Digital 10,11,12,13 am Arduino. Selbe Reihenfolge... laut http://arduino.cc/en/Hacking/PinMapping168 sollte das passen. Marc Vesely schrieb: > Pullups ? Wo vermisst du Pullups? In folgendem Diagram sehe ich am Arduino auch keine Pullups an den entsprechenden Pins: http://arduino.cc/en/uploads/Main/Arduino_Uno_Rev3-schematic.pdf Mit freundlichen Grüßen Martin Schmidt
martin schmidt schrieb: > Wo vermisst du Pullups? In folgendem Diagram sehe ich am Arduino auch SS ?
Hi Marc, an SS (=PB2, Pin16) hab ich folgende Pullups ausprobiert: 10K, 4,7K, 1K, 220Ohm. Kein Erfolg. Mit freundlichen Grüßen Martin Schmidt
martin schmidt schrieb: > - geplant war 7805, im Moment zapfe ich im Standalone aber auch einfach > die 5V vom Arduino um Fehler auszuschließen 5V <=> 3,3V ?
Hi, der SD Card Reader von "LC Studio" (China Reader, Ebay) hat einen 5Volt Anschluss und läuft auch am Arduino direkt mit 5V, ohne dass ich auf 3,3V herunterregeln muss. Hier mal ein Bild des Readers: http://cdn.instructables.com/FZT/ULKU/H9G19FWD/FZTULKUH9G19FWD.LARGE.jpg Allerdings habe ich gerade beim Bildsuchen gelesen, dass einige Leute die Signale wohl trotzdem auf 3.3V runterpegeln für diesen Reader, das schaue ich mir morgen mal noch genauer an. Mit freundlichen Grüßen Martin Schmidt
Hi das mit dem runterpegeln "mal schnell anschauen" wird wohl länger dauern, die benötigte Hardware hab ich grad nicht griffbereit (z.b. CD4050). Ich dächte aber, dass ich mit den vorgeschalteten Widerständen das nötigste getan habe, oder? Beim Arduino Betrieb gehe ich ja auch nicht über die 3,3V Schiene, sondern ebenfalls über 5V. Mit freundlichen Grüßen Martin Schmidt
martin schmidt schrieb: > - 10K von pin1 auf GND Soweit ich weiß ist Reset beim ATmega low aktiv, der µC ist mit einem Pulldown also dauernd im Reset.
martin schmidt schrieb: > Ich dächte aber, dass ich mit den vorgeschalteten Widerständen das > nötigste getan habe, oder? Wenn deine Widerstände 1/3 und 2/3 sind, ja. Auf der 5V Seite sollten 3,3V auf jeden Fall als High erkannt werden.
:
Bearbeitet durch User
Hi, also im Dauerreset ist der Chip nicht, das angeschlossene LCD funktioniert ja Bestens. Aber... du hast mit deiner Aussage recht, ich habe mich oben verschrieben (siehe Breadboard Bild), die 10K gehen natürlich gegen +5V (ich zähle besser nicht mit wie oft ich mich an der Stelle schon vertan habe, aber diesmal stimmt es in der aufgebauten Schaltung :)). Die Widerstandsbeschaltung (oben verilnkt) hier nochmal als Bild. So funktionert es wie gesagt per Arduino, nur per Standalone nicht. Falls ich statt Spannungsregler-Schaltung per Widerstände auf eine Schaltung mit cd74hc4050e gehen würde... Wie kriege ich am effektivsten die benötigten 3.3V Input schaltung für den 4050? Auf dem Arduino ist ein lp2985-33dbvr verbaut, welchen ich nicht in "meinem" Standardraster finde, oder TO-220 Gehäuse oder so. Mit freundlichen Grüßen Martin Schmidt
:
Bearbeitet durch User
martin schmidt schrieb: > Wie kriege ich am effektivsten > die benötigten 3.3V Input schaltung für den 4050? 3.3V Ausgang des SD-Karten Board?
hi ja, das will ich prüfen sobald ich wieder in der nähe der hardware bin :). Die Aussagen die ich dazu gelesen habe waren widersprüchlich, sprich es war mir nicht klar ob der 3.3V Pin ein Ausgang ist. Prüfe ich am Wochenende. Viele Grüße Martin Schmidt
Hallo zusammen, ich konnts nicht lassen, es hat mich nicht locker gelassen das Problem. Also im Conrad nen paar cd4050 gekauft (der SD Card Reader stellt 3.3V zur Verfügung). Heim. Geht nicht!! an den Arduino--> geht... erneut durchgemessen, alles OK... nach einer kurzen Pause die Erleuchtung. Statt die Messspitze in ein Loch des Breadboards zu stecken, nun mal direkt Chipbeinchen gegen Chipbeinchen gemessen. Siehe da, auf MISO kein Durchgang. Im Bild schön zu erkennen, ich nutze 2 Breadboards. ein schönes und eines was so naja ist, war irgendwo dabei, alles lässt sich schwer stecken und wie ich nun feststellte fehl in F-11 (MISO Chip Beinchen) die Verbindung. Für das Verbindungskabel an sich hatte ich versch. Löche durchprobiert, natürlich nicht fürs Chipbeinchen, muss ja in die Mitte. So kann einen so ein BilligBreadboard ganz schön aufhalten. Aua. Also, wieder etwas gelernt: Man misst Kontakt-Kontakt und nicht Breaboard-Breadboard. Ich Danke allen Lösungsvorschlägen und entschuldige mich zugleich für die Zeitverschwendung! Vielen Dank Mit freundlichen Grüßen Martin Schmidt P.S.: Eine Frage hätte ich nun doch noch. Es funktionieren ja nun sowohl die "Widerstand als Spannungsregler" Schaltung als auch die CD4050 Schaltung. Welche ist die "bessere", welche sollte ich mir für die Zukunft einprägen. Ich denke mal die CD4050er, aber ist ja schließlich auch ein Baustein mehr...
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.