Hallo, ich bin noch ein Neuling und versuche mich langsam in das Thema mit dem Arduino Uno Board (Mikrocontroller ATmega 328) einzuarbeiten. Jetzt möchte ich den Mikrocontroller ohne das Board verwenden, doch dazu habe ich ein paar Fragen, auf die ich im Internet leider nicht die richtigen Antworten gefunden habe: 1. Ich brauche in diesem Fall keinen zusätzlichen Oszillator, mir reicht der interne Takt. Soll ich die Eingänge für den Oszillator nun gegen Masse oder +5V schalten, oder sollte ich sie frei hängen lassen? 2. Auch den AD-Wandler und die Analogen Pins brauch ich nicht. Sollte ich trotzdem eine Stromversorgung an die Pins AVCC / AREF und AGND anschließen, sie frei lassen oder woanders anschließen? Ich hoffe ihr könnt mir helfen, danke im Voraus.
Micha schrieb: > 1. Ich brauche in diesem Fall keinen zusätzlichen Oszillator, mir reicht > der interne Takt. Soll ich die Eingänge für den Oszillator nun gegen > Masse oder +5V schalten, oder sollte ich sie frei hängen lassen? Frei lassen, nicht beschalten. > 2. Auch den AD-Wandler und die Analogen Pins brauch ich nicht. Sollte > ich trotzdem eine Stromversorgung an die Pins AVCC / AREF und AGND > anschließen, sie frei lassen oder woanders anschließen? AVBB und AGND auf jeden Fall anschliessen. Sonst passieren tolle Dinge. Auch den 0.1uF Kondensator zwischen AVCC und GND nicht vergessen. Er kann nicht schaden, nur helfen. AREF kann offen bleiben.
:
Bearbeitet durch User
Micha schrieb: > Soll ich die Eingänge für den Oszillator nun gegen Masse oder +5V schalten Das eine davon ist ein Ausgang - s. Datenblatt. Bei solchen Anfängerfragen hilft oft ein Blick in bereits veröffentlichte Schaltung. Und nicht nur in eine, weil nicht jede veröffentlichte Beschaltung richtig ist. Hier im Forum werden in vielen Threads die Schaltunge diskutiert, so das sich Fehler schnell rauskristallisieren.
Hi
>Das eine davon ist ein Ausgang - s. Datenblatt.
Wenn der interne Oszillator aktiv ist, sind die XTAL-Pins ganz normale
Port-Pins (PB6 und PB7).
MfG Spess
Du solltest mal auf der Atmel Seite unter dem Controller schauen, den du verwenden willst. Dort findest du jede Menge PDF's und unter anderem auch die Apnote (weiß gerade nicht welche das ist), in der das Hardware Design beschrieben ist. Es stehen dort auch sehr deutliche Erläuterungen, sodass du dann auch den technischen Hintergrund viel besser verstehst.
Micha schrieb: > 1. Ich brauche in diesem Fall keinen zusätzlichen Oszillator, mir reicht > der interne Takt. Soll ich die Eingänge für den Oszillator nun gegen > Masse oder +5V schalten, oder sollte ich sie frei hängen lassen? Zweite Grundregel der CMOS-Technik: keine offenen Eingänge! Unbenutzte Portpins entweder auf Eingang mit internem Pullup oder auf Ausgang und Low-Pegel schalten. Die Pins für den Quarz sind bei Verwendung des internen RC-Oszillators auch normale Portpins. > 2. Auch den AD-Wandler und die Analogen Pins brauch ich nicht. Sollte > ich trotzdem eine Stromversorgung an die Pins AVCC / AREF und AGND > anschließen, sie frei lassen oder woanders anschließen? Siehe oben: AVCC und AGND werden immer gebraucht, zB zur Versorgung der Treiber mit analogen Zweitfunktionen. Und dann noch die erste Grundregel der CMOS-Technik: Zwischen jedes VCC-GND-Pärchen gehört ein 100n Abblockkondensator, wobei die Länge der Zuleitungen zu minimieren ist. Auch AVCC-AGND gehören dazu. fchk
Wichtig ist vor allen, dass du dir das Datenblatt zum jeweiligen Controller dazu nimmst. Da werden eigentlich alle deine Fragen beantwortet. Dann die AVR042 und fürs Programmieren solltest du dir auch noch mal die AppNote AVR4027 anschauen. Das kann nicht schaden.
Vielen Dank für eure Antworten, das hat mir geholfen!
Hallo Micha, da es bisher nicht konkret angesprochen wurde: Um die Taktquelle des 328 zu ändern musst du die fuse-bits umschreiben, da der µC sonst außerhalb des Arduino-Boards einen 16MHz-Quarz an den dafür vorgesehenen Eingängen erwartet und ohne diesen nicht anläuft. Die fuse-bits wirst du allerdings nicht mit der Arduino-IDE umprogrammieren können, dafür brauchst du ein Programmiergerät für Atmel-AVR (z.B. einen originalen AVRISP MKII) und die passende Software (z.B. AVRDude - kostenlos). Ich bin außerdem noch auf einen (allerdings englischen) Thread gestoßen, in dem von weiteren Fallstricken berichtet wird: http://forum.arduino.cc/index.php?topic=24474.msg185950#msg185950 Du wirst auch die boards.txt-Datei der Arduino-Entwicklungsumgebung anpassen müssen (und wenn du einen fabrikneuen Uno anschließen willst wieder zurückändern müssen), um den neuen Takt des Prozessors anzugeben.
Hinweis schrieb: > Du wirst auch die boards.txt-Datei der Arduino-Entwicklungsumgebung > anpassen müssen (und wenn du einen fabrikneuen Uno anschließen willst > wieder zurückändern müssen), um den neuen Takt des Prozessors anzugeben. (Natürlich nur, wenn du den 328 weiterhin im Uno über USB programmieren willst. Natürlich kannst du das dann auch mit dem Programmiergerät über die ISP-Pins des Uno-Boards.)
Hinweis schrieb: > Die fuse-bits wirst du allerdings nicht mit der Arduino-IDE > umprogrammieren können, Falsch!
Arduino F. schrieb: > Falsch! Dieser Post hätte hilfreich sein können, wenn du gezeigt hättest, wie es "Richtig" gemacht werden könnte...
Lothar M. schrieb: > Arduino F. schrieb: >> Falsch! > Dieser Post hätte hilfreich sein können, wenn du gezeigt hättest, wie es > "Richtig" gemacht werden könnte... Nunja... Wenn du möchtest... Frage: Wie brenne ich die Fuses in/mit der Arduino IDE? Antwort: 1. ich wähle das gewünschte Board aus 2. ich suche den Knopf "Bootloader brennen" 3. ich drücke auf den Knopf "Bootloader brennen" Und dabei ist es völlig egal, ob die Boarddefinition einen Bootloader vorsieht. Die Fuses werden geschrieben. Besser so? Und wie der Vorposter schon richtig sagte: Dazu ist ein ISP Adapter von Nöten.
Micha schrieb: > Vielen Dank für eure Antworten, das hat mir geholfen! Also inzwischen kann er es oder er lässt es. Sein letzter Post ist vom 05.04.2014.
F. F. schrieb: > Also inzwischen kann er es oder er lässt es. Nicht unbedingt "oder". Evtl. gehört da ein "und" hin. .. ich weiß es nicht ..
Wie auch immer. Man muss nicht mehr nach fast drei Jahren auf solche Anfängerfragen antworten, zumal er sich anschließend bedankte, mit den Worten, dass ihm das geholfen hätte.
Richtig, bin auf den vor mir verfassten (inzwischen gelöschten) Post reingefallen ohne aufs Datum zu achten.
Das passiert mir auch ab und zu, wenn ein Vorposter so einen alten Beitrag beschreibt.
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.