Hallo! Da mir geraten wurde,einen eigenen Thread aufzumachen, tue ich das hier mal. Ich habe mir eine Leiterplatte fertigen lassen. Darauf befindet sich ein ATmega32 16AU mit dem ich 2 Sensoren auslesen möchte.Getaktet wird mit einem 16MHZ Ceramic Resonantor (CSTCE16M0V53A) Das alles funktionierte vorher einwandfrei,wo ich allerdings einen ATmega16 und einen Takt von 8MHz verwendet habe. Betrieben wird alles mit 3,2V. Heute nun hab ich das Board in Betrieb nehmen wollen und der Sensor, den ich über SPI auslese, gibt mir nichts zurück. Ich programmiere mit der aktuellsten Version des AVR Studio und JTAG ICE mkII. Beim messen der SPI-Signalpegel habe ich festgestellt,dass der Highpegel vom Taktsignal SCK anstatt etwa 3V nur 450mV beträgt!! Meine Vermutung ist,dass ich beim Einstellen der Fuse Bits etwas falsch gemacht habe. Meine Einstellungen sind: JTAGEN 1 SPIEN 1 CKOPT 1 SUT_CKSEL Ext. Crystal/Resonator,High Freq,Start-up: 16K CK+64ms Brown out Vcc 2,7V Fusebit High 0x89 Low 0xFF Ein Routingfehler auf der Leiterplatte kann ausgeschlossen werden.Hab ich ebenfalls schon durchgemessen. Hat jemand eine Idee,was da falsch sein könnte?
Du betreibst den Mega32 mit 3,2 V außerhalb seiner Spezifikationen. Das geht nur mit der L Ausführung, dann aber mit max. 8 Mhz. Gruß Einhart
> Wenn mit Oszi: Erkennt man an der Signalform ungewöhnliches?
Ich messe mit dem Oszi und Ungewöhnliches kann ich nicht erkennen.
Mein Programm läuft auch durch und auf der MOSI-Leitung sind die Pegel
auch einwandfrei. Highpegel ist dort 3,25V
Nur auf der SCK-Leitung ist eben das Highsignal 480mV.
Mein Bustakt ist 250KHz.
> Du betreibst den Mega32 mit 3,2 V außerhalb seiner Spezifikationen. Das > geht nur mit der L Ausführung, dann aber mit max. 8 Mhz. Du hast recht.Jetzt seh ich das auch grad im Datenblatt.Das wird dann wohl der Fehler sein. :(
Guten Morgen. Ein Nachtrag von mir: Ich habe gestern den 16MHz Keramik Resonator durch einen 8MHz ausgetauscht und das Problem besteht weiterhin. > Du betreibst den Mega32 mit 3,2 V außerhalb seiner Spezifikationen. Das > geht nur mit der L Ausführung, dann aber mit max. 8 Mhz. Das ist doch nicht das Problem, da ich auf meinem funktionierenden Board einen ATmega16 (ohne L-Bezeichnung) drauf habe und diesen auch mit 3,2V versorgen kann. Dabei läuft das Programm auch einwandfrei.Laut Datenblatt dürfte dies ja aber nicht gehen,da dort Vcc 4,5...5,5V sein sollte! Komischerweise hat mein I²C-Takt den 3,2V Highpegel?!
Des wegen gibt es ja die L-Typen, die laufen zuverlässig bei niedriegen Spannungen, bei den normalen Typen wird das nicht garantiert. Das kann bedeuten, dass das meiste läuft und nur ein Teil, wie z.B. bei dir die SPI-Schnittstelle, nicht.
> Das kann bedeuten, dass das meiste läuft und nur ein Teil, wie z.B. bei dir >
die SPI-Schnittstelle, nicht.
Dann wäre das aber denke ich schon großer Zufall,wenn ich hier 3
Controller habe,die mir bei 3,2V alle keine Probleme auf sämtlichen
Leitungen machen oder?
Maik schrieb: > Dann wäre das aber denke ich schon großer Zufall,wenn ich hier 3 > Controller habe,die mir bei 3,2V alle keine Probleme auf sämtlichen > Leitungen machen oder? Man betreibt Bauteile nicht außerhalb ihrer Spezifikation. Basta. Versuch doch mal die schaltung mit 5V zu speisen und schau mal, wie dann die Highpegel aussehen. Da siehst du dann, ob es an dem nicht-spec-konformen Betrieb liegt. Gruß Skriptkiddy
Hmm, ich dachte (hoffte) das mit der Out-of-Spec wär's gewesen. Mein Verdacht liegt immer noch eher bei der Hardware. Wenn die externe SPI-Hardware abtrennbar ist oder nicht stören kann (sieht man mangels Schaltplan leider nicht), dann den SCK-Pin mal als IO-Pin programmieren und klappern bzw. messen ob der ohne die SPI-Unit einen sauberen HIGH produzieren kann. Und ich würde mit der Tastspitze des Oszi mal suchen, wo der Rest meines SCK-Signals versickert. Also: Hat irgendein anderer Pin ebenfalls den SCK-Takt - speziell MISO, der direkt neben SCK liegt (Lötbrücke).
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.