Hallo,
seit knapp zwei Wochen bekomme ich meine µC Schaltung nicht ans laufen.
Inzwischen konnte ich mir ein Oszi ausleihen und musste feststellen ,das
der externe Quarz nicht schwingen will.
Ich verwende einen ATMEGA168A-PU mit 20MHz.
Der Schaltplan und meine FuseBit-Einstellungen habe ich als Bilder
beigeführt. Könnte bitte jemand da drüber gucken und mir sagen, was ich
ändern muss, damit ich den µC zum laufen bekomme?
Danke
mfG Hans
EXTXOSC ist falsch, da will er einen externen Oszillator haben, von dem
aus der Takt in den Prozessor eingespeist wird.
Ich hab jetzt den Fuses-Dialog nicht griffbereit, aber in der Liste
steht noch was mit EXTFSC oder so ähnlich, also Fullscale-Crystal.
Schau mal nach, findest du schon. Allerdings kriegst du den Prozessor
ohne Takt nicht umprogrammiert. Du mußt jetzt von extern einen Takt
einspeisen. Oder du machst das mit HV-Programmierung.
Wie misst du die Schwingung vom Quarz? Wenn der richtig verschaltet ist
sollte er schon schwingen.
Oder ist mit den Fuses ein Problem da, so dass der interne Quarz vom
atmega noch schwingt und ansich alles funktioniert?
Ein Bild vom Aufbau zeigt auch gerne mal die Fehlerquellen...
Auch wenn Du schrecklich sparsam, was Kondensatoren betrifft, gewesen
bist, sollte es eigentlich gehen. Ich hätte noch dicht bei Vcc und AVcc
einen Kondensator platziert und wenn Du mal Analog sprechen willst auch
bei AREF.
Wichtig beim Quarz ist, dass Du Dich an die Layout-Vorschriften hältst.
D.h. Verbindungen so kurz wie möglich.
Vielleicht hilft auch das alte Kinderlied: ... with a beep, beep here
...
Oder anders Ausgedrückt: Mit einem Ohmmeter alle Pins befragen.
amateur schrieb:> Auch wenn Du schrecklich sparsam, was Kondensatoren betrifft, gewesen> bist, sollte es eigentlich gehen.
Nein, geht nicht!
Mit den Kondensatoren hast du recht, und auch eine Drossel muß noch
rein, wenn man Analogmessungen mit dem ADC machen will.
Hier kann man sich darüber informieren:
http://www.kreatives-chaos.com/artikel/avr-grundschaltungen
Aber das ist nicht der Grund, weshalb der Quarz nicht schwingt. Der
Grund sind die Fuses, das sieht man auf dem linken Bild.
Danke für die ersten Antworten.
erst mal zum Programmieren:
ich Programmiere auf dem STK500 und dem AVRISPII mittels ISP. Das geht
auch alles wunderbar. Nur scheint es mir auf dem STK500 so zu sein, das
der Quart extern zum schwingen angeregt wird.
Die FuseBits habe ich jetzt auf "EXTFSXTAL_16KCK_14CK_65MS" umgestellt.
Das hat aber keine Verbesserung gebracht.
Den Takt habe ich mit dem Oszi direkt am Pin XTAL1 gemessen. Das
Ergebnis ist wieder als Bild dabei.
Des weiteren habe ich Layout und Platinen-Foto mit bei gefügt.
Bitte bei dem Platinen-Foto nicht wundern. Das ist halt ein Prototyp.
und dank zahlreicher Einträge in diversen Foren habe ich schon das ein
oder andere mit Umlöten versucht ...
mfG Hans
Hi
> Der Grund sind die Fuses, das sieht man auf dem linken Bild.
Quatsch. EXTXOSC_8MHZ_XX_16KCK_14CK_65MS bedeutet:
Ext. Crystal Osc. 8.0- MHz; Start-up time PWRDWN/RESET: 16K CK/14 CK +
65 ms
Aber möglicherweise liegt es am Aufbau.
MfG Spess
Spess53 schrieb:> Hi>>> Der Grund sind die Fuses, das sieht man auf dem linken Bild.>> Quatsch. EXTXOSC_8MHZ_XX_16KCK_14CK_65MS bedeutet:>> Ext. Crystal Osc. 8.0- MHz; Start-up time PWRDWN/RESET: 16K CK/14 CK +> 65 ms>> Aber möglicherweise liegt es am Aufbau.>> MfG Spess
Ich will mich bestimmt nicht streiten, aber heißt nicht "Ext. Crystal
Osc", daß ein externer Oszillator an XTAL1 angeschlossen wird, der den
Takt liefert? Und der TO hat eben keinen Oszillator, sondern nur einen
Quarz.
Da müssen die Fuses auf EXTFSXTAL_16KCK_14CK_65MS (oder so ähnlich)
gestellt werden. Ich habe das Studio nicht hier, sondern auf der Arbeit.
Deshalb "so ähnlich"...
Korrigiere mich bitte, wenn ich unrecht habe. Ich schaue morgen gern
nach und schreibe nochmal die genaue Bezeichnung.
Hi
>Ich will mich bestimmt nicht streiten, aber heißt nicht "Ext. Crystal>Osc", daß ein externer Oszillator an XTAL1 angeschlossen wird, der den>Takt liefert? Und der TO hat eben keinen Oszillator, sondern nur einen>Quarz.
Ein externer Oszillator läuft z.B. unter 'EXTCLK_6CK_14CK_65MS'
Aber vielleicht funktioniert es mit
Ext. Full-swing Crystal; Start-up time PWRDWN/RESET: 16K CK/14 CK + 65
ms"
->
Danke für eure Anworten. Sobald ich wieder zu hause bin, werde ich alle
vorgeschlagenen Einstellungen ausprobieren.
Als Notlösung stelle ich einfach jede sinnfoll mögliche Kombination an
FuseBits mal ein. Kann es ja mit dem STK500 rückgänig machen.
Aber noch mal zur Hardware, diese soll keine AD-Aufgaben übernehmen. Von
daher sollte das doch so passen oder?
mfG Hans
Hi
>Aber noch mal zur Hardware, diese soll keine AD-Aufgaben übernehmen. Von>daher sollte das doch so passen oder?
Nein. Es fehlen die Abblockkondensatoren (100n) zwischen VCC und GND und
zwischen AVCC und GND. AREF gehört nicht an VCC. Da auch nur 100n nach
GND.
Deine Masseführung auf dem Bild sieht nicht sehr optimal aus.
MfG Spess
:-( hat alles nichts gebacht .. Ich bekomme immer noch kein sauberes
Signal.
Hat eventuell noch jemand eine Idee?
Ich habe eben auch den Quarz gegen einen 8MHz Quarz getauscht und einen
ATMega 8 eingesetzt, auch das brachte keinen Erfolg.
mfG Hans
Hast Du mal, wenn Du die Sicherungen noch umstellen kannst, den ganzen
Kram zurückgestellt?
Also auf 8 MHz internen Tick-Tack ev. mit Div8 und dann versucht
irgendwas, auf irgendeinem Port, auszugeben?
Wenn das dann funktioniert könntest Du auch gleich mal versuchen, ob die
Ports B6 und B7 noch unter den Lebenden weilen. Ein bisschen Rumgezappel
dürfte auch mit eingelötetem Quarz gehen - und was ganz wichtig ist, bei
der Gelegenheit feststellen was am Quarz ankommt.
Wenn mich nicht alles täuscht, ist im Quarzbetrieb einer der Beiden
Ausgang und der Andere Eingang. Siehe Handbuch.
Mehr fällt mir auf die Schnelle auch nicht ein oder zwei:-)
Wenn du mit einem Oszi direkt an den Quarzpins misst, dann kann es
vorkommen dass die zusätzliche Kapazität usw. die Schwingung stört.
Woraus schließt du dass der Quarz nicht läuft?
Ich Vergaß:
Am besten einen Test nach dem Andren und bei Ausgabeversuchen möglichst
schnell messen. Ich habe keine Ahnung wie lange ein eventueller
Kurzschluss an einem I/O-Pin dauern darf.
spess53 schrieb:> AREF gehört nicht an VCC.
Das kann man so nicht sagen. Wenn man z.B. an Spannungen relativ zum
tatsächlichen Vcc interessiert ist (und nicht relativ zu einem
tiefpaßgefilterten Vcc-Verschnitt), kann Aref sehr wohl an Vcc gehören.
Genau deswegen gibt es übrigens auch die Möglichkeit, die Referenzbits
in ADMUX entsprechend zu konfigurieren...
Net_Hans schrieb:> Den Takt habe ich mit dem Oszi direkt am Pin XTAL1 gemessen. Das> Ergebnis ist wieder als Bild dabei.
Hoffentlich mit Tastkopf 10:1. Bei 1:1 macht jeder Quarz schlapp.
@amateur
mit dem Internen Tackt läuft der µC supper, sauberes Rechtecksignal an
den Ausgängen von XTAL1 und XTAL2
@meckerziege
Das macht sich dadurch bemerkbar, das die Signale an den Ausgangspins
einer Entladekurfe von einem Kondensator gleichen. Sobald der µC den
Ausgang auf High schaltet, habe ich kurz eine Spitze auf 5V und dann
eine Entladekurve ... ganz komisch
Net_Hans schrieb:> mit dem Internen Tackt läuft der µC supper, sauberes Rechtecksignal an> den Ausgängen von XTAL1 und XTAL2
Nanu! Mit internem RC-Oszillator sind die Pins doch normale IO.
Das mit dem Tastkopf habe ich noch nicht berücksichtigt. Das probiere
ich gleich aus.
Muss ich die XTAL Pins im DDRB-Register gesondert betrachten, als
Ausgang/Eingang?
Net_Hans schrieb:> Muss ich die XTAL Pins im DDRB-Register gesondert betrachten, als> Ausgang/Eingang?
Nein. Wenn für Quarz konfiguriert, dann sind die Pins fest dafür
konfiguriert und DDRB6/7 sind funktionslos.
hI
>Wenn man z.B. an Spannungen relativ zum>tatsächlichen Vcc interessiert ist (und nicht relativ zu einem>tiefpaßgefilterten Vcc-Verschnitt), kann Aref sehr wohl an Vcc gehören.
Was für ein 'tiefpaßgefilterten Vcc-Verschnitt' meinst du?
MfG Spess
Dann bleiben eigentlich nur noch Quarz und Kondensatoren über. Stehen
die beiden Kondensatoren auch mit beiden Beinen auf der Erde (0V).
Übrigens ich weiß nicht mit welchem Studio Du arbeitest, aber Anno 4
bekam das Teil es nicht mit, wenn Du dem Prozessor geändert hast und er
gerade zuhause ist. Keine Ahnung ob Du in einen beliebigen Prozessor die
Fuses eines "anderen" reinbrennen darfst bzw. ob deren Bedeutung
variiert.
Zum Thema Quarz nur so viel: In der Liste gibt es zwei Sorten sehr
ähnlich "klingender" Einträge. Die Verzögerungszeiten dürften bei deiner
Anwendung, noch unwichtig sein aber die einen beziehen sich auf einen
externen Tacktgeber (1 Draht) und die anderen auf einen externen Quarz
8MHz... Wie die sich allerdings später melden weiß ich nicht.
Hallo,
so das Problem ist gelöst und ich schäme ich schon fast für die Ursache.
Zum einen waren die Fuse-Bits anfangs falsch gesetzt.
Aber zum Anderen hatte mir mein Elektronikhandel des Vertrauens die
falschen Stützkondensatoren zugeschickt. Es waren nicht 22pF im Tütchen,
es waren 22nF ... hätte ich vorher die Aufschrift gelesen hätte ich es
schon beim Bestücken festgestellt :-( ... naja aus Fehlern lernt man.
Danke noch mal an alle, die mir mit ihrem Wissen zur Seite standen.
DANKE
mfG Hans
Spess53 schrieb:> Was für ein 'tiefpaßgefilterten Vcc-Verschnitt' meinst du?
Nun, den der effektiv rauskommt, wenn man die REFS-Bits in ADMUX auf
AVCC setzt und an AREF einen Kondensator bastelt. Der Kondensator stellt
eine Hälfte eines Tiefpasses dar, der Rest (Widerstand und sogar
Induktivität) steckt in der internen Schaltung des Analogteils.
Nicht, daß das falsch wäre, für viele ADC-Anwendungen ist das sogar
genau richtig. Aber eben nicht für alle.
Net_Hans schrieb:> so das Problem ist gelöst...
Hallo Hans,
das ist doch mal eine gute Nachricht. Aber so ist das eben. Das gleiche
hätte jedem passieren können, wenn man z.B. in die falsche SMD-Schachtel
greift und statt 22p eben 22n nimmt. Bei SMD sieht man das nicht mal, da
steht nix drauf, und die C's sehen gleich aus.
Kleine Ursache, große Wirkung. Hauptsache, es geht jetzt.
Glückwunsch!