Hallo zusammen, ich bitte um ein (kurzes) Review meines Schaltplanes eines ATmega1284p. Er beschränkt sich lediglich auf das notwendigste: - Spannungsversorgung - Quarz - Reset-Schaltung - JTAG Verbindung zum Programmieren / Debuggen Da es mein erster Versuch einer eigenen Schaltung ist, würde ich mich sehr darüber freuen, falls jemand von euch Fehler findet und mich darauf hinweisen könnte. Leider konnte ich den JTAG Anschluss nicht sauberer verkabeln, da wollte die Software und ich nicht zusammenarbeiten (Leitungen durch Beschriftung gezogen). Ebenso ist der GND Ausgang leider nicht im Bild. Die beiden unteren Leitungen (links / rechts) führen jeweils zum GND. Ich hoffe ich habe nichts elementares übersehen. In diesem "Schaltungszustand" sollte der ATmega nach meinem Verständnis per JTAG programmierbar / debugbar sein, und natürlich durch seine eigene Spannungsquelle stabil versorgt werden, sodass ich dann die Schaltung um die Peripherie erweitern kann. Viele Grüße, David
Da fehlen noch zwei 100nF Abblockkondensatoren. Laut Datenblatt sollst du dem 7805 am Eingang 330nF verpassen. Und wenn du genaue ADC Messungen durchführen möchtest, solltest du AVCC noch filtern. C1 kann man sich auch durchaus sparen.
Hallo, 59pF am Quarz? Das hängt doch direkt vom verwendeten Quarz und der Eingangskapazität ab. Meistens ergibt sich beim Nachrechnen 18pF - 27pF.
Danke erst einmal für die Hinweise. >Da fehlen noch zwei 100nF Abblockkondensatoren. Hier muss ich jetzt (leider) ganz doof nachfragen: Wo? >Laut Datenblatt sollst du dem 7805 am Eingang 330nF verpassen. Stimmt, hätte ich mal ins Datenblatt geschaut statt in das Tutorial :/ >Und wenn du genaue ADC Messungen durchführen möchtest, solltest du AVCC noch filtern. Das ist (zum Glück) nicht notwendig. Habe den AVCC nur angeschlossen, weil es laut div. Beiträgen "zum guten Ton" gehört... >C1 kann man sich auch durchaus sparen. Habe ich entfernt. Habe den Schaltplan entsprechend angepasst. Viele Grüße, David
100nF von VCC nach GND 100nF von AVCC nach GND Die 59pF am Quarz würde ich ändern auf 22pF
> Habe den AVCC nur angeschlossen, > weil es laut div. Beiträgen "zum guten Ton" gehört... "Guter Ton"? Wie man es nimmt - wenn man auf Port A komplett verzichten kann: "AVCC is the supply voltage pin for Port A ..."
> 100nF von VCC nach GND > 100nF von AVCC nach GND > > Die 59pF am Quarz würde ich ändern auf 22pF Oh, manchmal hat man wirklich Tomaten auf den Augen ... Danke! Die Stärke am Quarz habe ich angepasst, da muss ich zugeben hatte ich Probleme beim ausrechnen. > "Guter Ton"? Wie man es nimmt - wenn man auf Port A komplett verzichten > kann: > > "AVCC is the supply voltage pin for Port A ..." Hmm, ich meine gelesen zu haben, dass VCC und AVCC intern mit einer Diode eh verbunden sind... kann mich aber gerade nicht an die Quelle erinnern. Dann sollte es jetzt passen. Waren ja doch einige Fehler drin. Muss mich noch intensiver mit der Thematik befassen. Trotzdem vielen Dank für die Hilfe! Viele Grüße, David
> C1 kann man sich auch durchaus sparen.
Eigentlich andersrum. Der Bulkkondensator kommt immer rein. Da würde ich
470µ eingangsseitig und 47µ nach dem 7805 einbringen. Die Kondensatoren
sind relativ klein, im Vergleich zu einem DIP40 Gehäuse. Warum also
weglassen?
> VCC und AVCC intern mit einer Diode eh verbunden sind
Wie dem auch sei: versorge ich einen ATmega1284P-PU per Vcc mit 5.0 V
und lasse AVcc offen, messe ich dort 4.2 V; belaste ich AVcc mit 40 mA,
sind es noch 3.6 V.
Mach noch 100nF an den Reset Pin (parallel zum Taster). Bei langen Leitungen (ISP Kabel) reagiert er sonst manchmal unerwünscht auf Radiowellen.
Warum beschäftigst du dich als Anfänger gleich mit so einem großen Modell? Es gibt wesentlich handlichere mit weniger Pins, zum Beispiel den ATmega328P.
neuer PIC Freund schrieb im Beitrag #5342873: > Eigentlich andersrum. Der Bulkkondensator kommt immer rein. Da würde ich > 470µ eingangsseitig und 47µ nach dem 7805 einbringen. Der 7805 ist ein Spannungsregler. Warum willst du dem Regler das Leben mit einer "dicken" kapazitiven Last am Ausgang schwer machen. In welchem Datenblatt hast du das so gefunden? Zumindest ON Semi, ST und TI sind sich einig, dass an den Ausgang 100nF sollen und nicht mehr - wozu auch.
> In welchem Datenblatt hast du das so gefunden?
Der 47µ gehört zur Stromversorgung der Last und wird deshalb nicht im
Reglerdatenblatt aufgeführt. Zumindest Microchip weist in deren
Datenblättern auf die Verwendung eines TANK-Kondensators von bis zu 47µ
hin.
Ansonsten einfach mal in anderen Schaltplänen (z.B. STK500, Arduino,
...) nachsehen. Die haben sowas.
neuer PIC Freund schrieb im Beitrag #5343079: > Zumindest Microchip weist in deren > Datenblättern auf die Verwendung eines TANK-Kondensators von bis zu 47µ > hin. Wie du schon sagst "bis zu". Das ist eine Obergrenze. Mit einer größeren Ausgangskapazizät verschlechterst du das Regelverhalten. Deswegen gehört die Kapazität auch vor den Regler, wenn es nicht unbedingt notwendig ist. > Ansonsten einfach mal in anderen Schaltplänen (z.B. STK500, Arduino, > ...) nachsehen. Die haben sowas. Bei Arduino-Boards hab ich schon genug schlechte Eigenheiten gesehen. Das ist eher eine "so macht mans nicht"-Referenz. Wenn du Referenzen suchst, dann bitte wenigstens welche, bei denen das Regelverhalten eine Rolle spielt. Bei einer einfachen Mikrocontrollerschaltung können auch ein 100mV Ripple auf der Versorgung sein - das stört den µC nicht.
Ich habe schon 7805 (noname) schwingen gesehen, die einfach nur datenblattmäßig geblockt waren. In der Eingangsstufe nach dem Gleichrichter waren sowieso fette Elkos. Also noch einen kleinen am Ausgang nachgelötet, und die Kiste lief. Vielleicht diese schlechte Erfahrung, weswegen ich bevorzugt 317, 1086, 4941, 1117 einsetze. Für die Stabilität des Reglers würde ich eher eine definierte Mindestlast einsetzen.
Nochwas: benutze im Schaltplan bitte das GND Symbol und verbinde nicht alle GND Punkte über eine Leitung quer über den Schaltplan :).
Stefan U. schrieb: > Warum beschäftigst du dich als Anfänger gleich mit so einem großen > Modell? Es gibt wesentlich handlichere mit weniger Pins, zum Beispiel > den ATmega328P. Vermutlich weil man als Anfänger noch nicht so effiziente Programme schreibt und daher viel RAM nützlich ist ;)
Ich habe vor vielen Jahren drei 40-Pinner gekauft, weil ich damals die größt möglichen haben wollte. Die liegen immer noch in meiner Bastelkiste und werden ranzig. Am häufigsten verbaue ich stattdessen den ATtiny13. Das hätte ich damals nicht erwartet.
> Nochwas: benutze im Schaltplan bitte das GND Symbol und verbinde nicht > alle GND Punkte über eine Leitung quer über den Schaltplan :). Danke für den Hinweis, werde ich umsetzen. Ist mein erster Schaltplan. Dürfte auf jeden Fall die Übersicht verbessern! John Doe schrieb: > Stefan U. schrieb: >> Warum beschäftigst du dich als Anfänger gleich mit so einem großen >> Modell? Es gibt wesentlich handlichere mit weniger Pins, zum Beispiel >> den ATmega328P. > > Vermutlich weil man als Anfänger noch nicht so effiziente Programme > schreibt und daher viel RAM nützlich ist ;) Was soll ich jetzt sagen? Vermutlich hast du Recht, kann auch noch nicht wirklich abschätzen wie viel RAM ich tatsächlich brauchen werde. Ich sah aber grundsätzlich (von den etwas höheren Kosten) keinen Unterschied ob ich nun einen "großen" oder "kleinen" IC nehme.
Hi, ok. AVR 042 Appnote hat noch ein paar Designvorschläge im Zweifelsfalle. (Reset-Pin Beschaltung, JTAG Probe etc. pp.) Hier finde ich die jetzt, die meisten Links sind ja durch den Firmenchange nicht mehr wo sie früher standen. http://www.mouser.com/ds/2/36/doc2521-41636.pdf z. B. Seite 14 ciao gustav
:
Bearbeitet durch User
ob nun 328er oder 1284er ist Jacke wie Hose in dem Fall, die Beschaltung mit dem Spannungsregler ändert sich deswegen nicht. Zum probieren und testen nehme ich auch gern größere µC.
Stefan U. schrieb: > Warum beschäftigst du dich als Anfänger gleich mit so einem großen > Modell? Es gibt wesentlich handlichere mit weniger Pins, zum Beispiel > den ATmega328P. Ich finde das einen sehr sinnvollen Ansatz (nicht nur) für Anfänger. Ich selber entwickle jedenfalls fast alles für AVR8 erstmal auf einem 1284P. Man kann damit praktisch alles programmieren und testen, was mit den "üblichen" AVR8 geht (also Sonderperipherie wie USB oder CAN aussen vor), leider mit Ausnahme des USI (dafür benutze ich dann entweder einen Tiny841 oder einen 4313, auch wieder so ziemlich die "größten"). Der Punkt ist: man kann das Entwickeln tun, ohne sich erstmal groß um Beschränkungen bezüglich der Pins oder Speicherresourcen kümmern zu müssen. Und glücklicherweise ist es bei den AVR8 so, dass die "großen" nicht komplizierter sind als die kleineren, eher ist das Gegenteil der Fall. Wenn die Anwendung erstmal auf dem 1284P läuft, kann man immer noch darüber nachdenken, ob es den Aufwand wert ist, die Sache zu shrinken und man kann vor allem auch sehr einfach ermitteln, was man dann aus dem Fundus des Verfügbaren minimal brauchen wird. Naja: Manchmal (sehr selten) schreibt man dann tatsächlich nochmal irgendwas in nennenswertem Ausmaß um, um nochmal etwas mehr shrinken zu können. Aber in aller Regel beschränkt sich der Aufwand für's Shrink auf das Umbenennen einer Handvoll Symbole. Man muss schon ganz schöne Stückzahlen produzieren wollen, um darüber hinaus gehende Aufwendungen rechfertigen zu können.
Ich habe noch ein Schlagkräftiges Argument für die 40 Pinner: Man kann eine Beschriftung mit den Port-Nummern drauf kleben :-)
Stefan U. schrieb: > Ich habe noch ein Schlagkräftiges Argument für die 40 Pinner: Man kann > eine Beschriftung mit den Port-Nummern drauf kleben :-) Bei den kleinsten Bauformen der 1284P würde das schon einigermaßen schwer fallen. Die sind übrigens nur unwesentlich größer als etwa die kleinste Bauform des von dir präferierten 328P... Aber ich sehe sowieso keinen Grund, warum eine Entwicklungsumgebung mit ICs bestückt sein sollte, die durch einen Atemfilter fast durchrauschen. Da will man doch im Gegenteil immer überall möglichst gut rankommen können. Jedenfalls würde das wohl schon jeder geistig Normalbegabte rein instinktiv anstreben, gelernte Ingenieure mit einiger Erfahrung natürlich sowieso... Denn die wissen, was praktisch nützlich ist...
Ich meinte natürlich die DIP Versionen. Die SMD Chips sind zu klein - zumindest für meinen Drucker und meine Augen.
Einen Kondensator direkt am Reset ist aber auch schlecht für den Programmer. Ich habe dann mal versucht alle Tipps zu versammeln.
> Einen Kondensator direkt am Reset ist aber auch schlecht für > den Programmer. Die die ich kenne, vertragen das. Das steht auch so in der App Note AVR042 Figure 2-2 und dem zugehörigen Text. leider sagt die Note nicht aus, wie groß der Kondensator maximal sein soll. Beim Pollin NET-IO Board war mal 100µF drauf, das war zu viel. 10µF gingen aber, haben die inzwischen auch geändert.
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.