Hallo, ich würde gerne wissen, was ich Minimal für die Programmierung eines ATMega16 minimal brauche.... Würde mir gerne selber ein Board bauen, einzige besonderheit, ISP-Schnittstelle und das die Ports auf Kontaktbuchsen rausgehen... Also was alles auf das Board soll (mein Wissensstand): 01) ATMeag16 02) IC-Sockel für 01) ---------------------- (Spannungsreglerteile) 03) Spannungsregler 5V ET7805 04) ELKO 10uF 05) 100nF Keramik oder Folienk. 06) 100nF Keramik oder Folienk. 07) Diode 1N4001 ---------------------- 08) Kontaktbuchse für die Ports (mindestens 32) 09) Stiftleiste für ISP So habe ich noch irgendwas vergessen ??? auf dem bild unter diesem Link sind noch Kondensatoren und nen 10k zur +5V Spannung, brauch ich das auch, wofür isn das ?? Wenn euch was einfällt sagt mir bitte was mir noch fehlt
ach hier der link, wo eine minimalbeschaltung beschrieben steht... http://www.mikrocontroller.net/articles/AVR-Tutorial:_Equipment
Für 05 und 06 um himmels willen keine Folienk.s! Wofür die Diode 07? Den 10k zur Vcc - wohin das andere Ende? Und wo ist das Bild bzw. der Link? Gruß Johannes
Zum Bild: Achso. War Überschneidung. Ich würde dann noch einen extra C direkt an den Vcc/Gnd Pins des AVR plazieren und keinen (teuren) riesigen Quarzoszi, sondern einen 3pin-Keramikresonator nehmen. Bleibt dann noch die Frage, womit Du die ISP machen willst. Dafür ist schließlich auch noch irgendwelche Adapter-Hardware nötig. Gruß Johannes
Also so nun richtig ?? 01) ATMeag16 02) IC-Sockel für 01) ---------------------- (Spannungsreglerteile) 03) Spannungsregler 5V ET7805 04) ELKO 10uF 05) 100nF Keramik 06) 100nF Keramik 07) Diode 1N4001 ---------------------- 08) Kontaktbuchse für die Ports (mindestens 32) 09) Stiftleiste für ISP Die Diode 07) ist als Verpolungsschutz, um den ET7805 zu schützen, steht unter demselben Link nen paar Bilder weiter runter :) Danke Johannes für die schnelle Hilfe... was schlägst du für einen zusätzlichen Kondensator zwischen GND/VCC vor, so wie in dem Schaltbild 100nF ??und was ist mit der RESET Leitung ? mus ich die auch so beschalten, wie in dem Bild, also dort noch nen 47nF zu GND und zu VCC ein 10k ?? Zu deinem Oszilator, da würde ich den 16-HC49U-S von www.reichelt.de nehmen, der kostet auch nur 0,44 EUR, also der kommt dann an XTAL1, aber muss da nicht noch auch noch irgendwo nen Kondensator zwischen und auch irgendwas an XTAL2 mit Kondensator??
Ach ja Johannes, die ISP habe ich schon, steckt schon am Parallelport, fehlt nur noch mein Eigenbauboard :)
Der 16-HC49U-S ist wohl ein Quarz (ich hab nicht extra nachgesehen), der braucht dann noch zwei 22pF Kondis von beiden Anschlüssen jeweils nach Gnd. Ja, der zusätzliche C direkt am AVR ist ebenfalls 100nF, wahrscheinlich wird es reichen, den im Bild am Regler angeordneten zu verschieben. (Ab Regler können es 3-5cm zum C sein, ab AVR sollten es max 1cm sein.) Am RESET dürfte auch ein 100nF noch in Ordnung sein - oder Du spendierst noch zwei extra 10k-Pullups (nach +5V) für MOSI und SCK, dann kann der C am RESET normal ganz entfallen. Alle Fragen beantwortet? Gruß Johannes
Guten morgen, also ich habe mal einen Schaltplan gezeichnet :) lol naja ist ja auch egal, nicht lachen..... ist auf jeden fall im anhang ! @Johannes: Ich habe aber an der Spannungsreglerschaltung nicht wie du vorgeschlagen hast den 100nF richtung AVR verschoben, sondern einfach einen zweiten eingebaut, sollte doch auch gehen oder ?? Bei der Belegung der ISP ist es mir nicht ganz geheuer, ob ich das alles so richtig habe, denn ich habe die Belegung von meinem ATMega32 Dev.-Board abgeschaut (also MOSI, MISO...., nicht direkt die Pins)... Ich habe mich dann doch dafür entscheieden, einen 47nF zwischen RESET und GND zu legen, und nicht über die 10k Pull-ups zu gehen, denn so kann dann von der ISP noch nach dem schreiben das Reset ausgelöst werden, richtig ?? Habe ich alles bzw. soweit alles richtig ?? DANKE Leute und entschuldigung wegen des beschissenen Schaltplans ;)
Ach ja bei der ISP habe ich den Anschluss für NC nicht gefunden, habe also bei meinem ATMega32 Dev.-Board geschaut und da war von der ISP PIN3 (NC) mit GND verbunden, wenn ich mich nicht verschaut habe... heißt NC zufällig Not Connected ?
beim STK200 war am "not connected" noch eine Leuchtdiode angeschlossen, die während des Programmiervorgangs leuchtete: http://www.lancos.com/e2p/betterSTK200.gif
Jo danke für die antwort Christoph, ist denn der rest meiner schaltung deiner meinung nach soweit korrekt ?? ich will ja nicht, das ich mein Board so waufbaue und dann feststellen muss, das das so nicht funktioniert :(
Jo, NC heißt normalerweise (und in diesem Fall bestimmt auch) "not connected". In früheren Postings hab ich schon öfter gelesen, dass man den Reset-Kondensator weglassen kann. Auch die Diode ist nicht zwingend nötig, da man ja wahrscheinlich ein Steckernetzteil (mit Gleichrichter) hat bei dem die Polarität bekannt ist. Wenn man allerdings auf der sicheren Seite sein möchte kann man auch statt einer Diode direkt einen Gleichrichter einbauen. Die Diode verhindert nur dass bei falscher Polung nichts passiert, beim Gleichrichter wäre die Polung dann egal. Was die Kontaktbuchsen angeht würde ich die zu 4x10er planen (jeweils ein Port + VCC und Masse). Die Belegung kann man sich dann entweder selber ausdenken oder auch vom STK500 übernehmen.
Ich würde an AREF und AVCC noch irgendwas anschließen, sicherheitshalber. Einen AVR mit AD-Wandler hab ich noch nicht benutzt, aber AVCC mit VCC verbunden und AREF mindestens mit einem 100n abgeblockt ( ist da intern eine Refenz eingebaut?) kann nicht schaden.
Nachtrag: Da Du von minimal sprichst kannst Du den externen Takt weglassen, da die meisten (ich meine sogar alle) AVR's einen eingebauten RC-Oszillator drin haben. Beim Mega16 sind damit standardmäßig bis zu 8 MHz zu erreichen. Der letzte 100nF Kondensator sollte möglichst nah am uC (VCC, GND) plaziert werden. Willst Du auch die Analogeingänge nutzen können mußt Du glaube ich auch noch die AVCC und AREF beschalten.
AREF, AVCC AVcc auf jeden Fall nach + geben. Mit nem extra 100nF nach Masse abblocken. ARef: ARef hat eine Dualfunktion. Entweder man benutzt die interne Referenz, dann wird hier die Referenzspannung vom Mega zur Verfügung gestellt. -> Pin ist Ausgang Oder man benutzt eine externe Referenz. In diesem Fall wird hier die Referenzspannung hineingeschickt. -> Pin ist Eingang. Was du auf jeden Fall machen solltest. ARef mit nochmal 100nF gegen Masse abblocken, damit die Referenzspannung sauber bleibt. Wenn du den Fall externe Referenz nie hast, dann wars das schon, ansonsten würde ich da noch einen Lötnagel oder sowas vorsehen damit man da auch eine Spannung anhängen (oder auch abgreifen!) kann. Was ich noch machen würde: Einschaltkontroll-Led. Nach dem Netzteil eine stinknormale Led, Led gegen Masse, Vorwiderstand (220 Ohm) gegen Vcc Für die Portanschlüsse: Ebenfalls 10 polige Wannenstecker: 8 Pins für die Port + Masse + Vcc. Ist ungemein praktisch für Interfaceplatinen wenn man da noch die Versorgungsspannung mit drauf hat. Nimm die Belegung vom STK200: Pins 1-8 sind die Portpins (Px0 bis Px7), Pin 9 ist Vcc und Pin 10 ist GND. Zum Thema Schaltplan: Besorg dir gleich mal die Freewareversion vom Eagle. Damit kannst du einerseits schöne Schaltpläne zeichnen andererseits gehts dann gleich weiter zur Platine. Bin schon neugierig: Ich musste 3 Brücken setzen um mit einer einseitigen Platine durchzukommen. Ich hab allerdings auch noch einen MAX232 mit auf der Platine. so: Pin
Ok,habe mir Eagle gesaugt. dauert aber noch, bis ich in der anwendung davon fit bin, solange müsst ihr euch halt noch mit meinem eigenem layout zufrieden geben.... es heisst zwar minimalbeschaltung, aber nen externen taktgeber wollt ich doch schon haben, damit ich den uc voll ausreizen kann, wenn man schon 16MHz haben kann, und das nur 1 oder 2 euro mehr kostet, wieso also nicht ?? ;) also hier ist die (hoffentlich) entgültige version des schaltplanes :) wem jetzt noch was einfällt der pekommt nen Punkt ;) vielen dank schonmal für euere bemühungen.... !!!
> aber nen externen taktgeber wollt ich > doch schon haben, damit ich den uc voll ausreizen kann Hast du doch: Quarz + 2 Stück 22 pF Kondensatoren. Kostet nicht die Welt. Weiter oben warst du unsicher wegen dem Reset: Vom Reset-Pin gehst du über 10kOhm nach Vcc. Was ich noch vorschlagen würde: Einen Taster von Reset nach Masse. Einen Taster drücken um den µC zu resetten ist einfacher als jedesmal den Strom abschalten. Und wenn du erst mal einen Bootloader im µC hast, wirst du den Taster lieben :-)
Jaja, schon richtig aber weiter oben meinte jemand ich könnte auch auf den Quarz verzichten, wenn ich ein minimalboard haben will. Das ist mir klar, bin ja bisher bei meinen anderen boards auch ohne externe beschaltung ausgekommen, das ich die nicht zwingend haben muss ist klar, doch hätte ich das für spätere fälle trotzdem gerne :) Und das mit dem Taster halte ich für eine sehr sehr gute Idee, daran habe ich garnicht gedacht, aber wie genau soll ich den anschliessen ?? nochmal ne leitung von RESET zu masse legen und dann den Taster als schlißer dazwischen(also quasi parallel zu dem Kondensator bei RESET-GND) ?? oder einfach mit in den strang von RESET - C - Taster - GND und dann als öffner ??
Die volle Reset Beschaltung +---------+ RESET ----+------+---| |------- Vcc | | +---------+ | | 10 k | | ----- / ----- / | / | | | | +------+---------------------- GND
> Die volle Reset Beschaltung
Du willst ja haben, dass bei einem Druck auf den Taster
der Reset Pin auf Masse gezogen wird.
wow vielen dank für das anschauliche beispiel ;) wirklich sehr sehr nett von dir KHB genau so hatte ich mir das auch gedacht, war mir aber nicht ganz sicher. Aber ist ja logisch, da das ja ein (Nicht)RESET ist, der ist ja negiert.... dann habe ich jetzt denke ich alles und kann dann ja die tage mal bei reichelt bestellen :) FREU, vielen Danke Leute superspitzenklasse ;)
Hallo, habe mal Eagle bemüht und folgendes noch gezeichnet ist mein erstes Schaltbild mit Eagle, daher noch so "dirty" und unstrukturiert, sorry ;) hier in diesem post einmal als jpg und im folgenden als Eagle datei
Hallo, habe mal Eagle bemüht und folgendes noch gezeichnet ist mein erstes Schaltbild mit Eagle, daher noch so "dirty" und unstrukturiert, sorry ;) hier in diesem post einmal als Eagle-datei und im vorherigen als JPG datei Ist damit soweit alles richtig ?? THX
- An Pin 2 von der ISP-Buchse noch VCC dranhängen, damit ggf. der Programmer versorgt wird. - Diode vom Spannungsregler-Ausgang zum Eingang um den Regler zu schützen, wenn die Platine auch zusätzlich direkt ohne den Regler versorgt werden soll.
Diode vom Spannungsregler-Ausgang zum Eingang um den Regler zu schützen, wenn die Platine auch zusätzlich direkt ohne den Regler versorgt werden soll. da weiß ich jetzt nicht ganz genau was du meinst ??? sorry kann mir grad nicht vorstellen wie das angeklemmt werde soll :( mal einfach in den jpg-schaltplan und poste mal ;)
Die LED ist falschrum ;-) und den Vorwiderstand kannst du ruhig größer machen. Die leuchtet dann immer noch. ich nehm bei 5V meistens 1K.
ok habe die LED umgedreht, hab sie einfach eingebaut, wie sie aus der lib kam (doof) :P und was nun mit der zusätzlichen Diode, die den spannungsregler schützen soll, wenn ich mal den controller direkt an 5v betreiben will und die reglerschaltung grade nicht brauche ??? wo soll die diode dann hin malt das mal bitte einer in den schaltplan ;) danke danke danke
>und was nun mit der zusätzlichen Diode, die den spannungsregler schützen >soll, Lineare Spannungsregler mögen es nicht besonders gerne, wenn die Ausgangsspannung grösser als die Eingangsspannung ist. Das ist für sie gelegentlich tötlich...
> und was nun mit der zusätzlichen Diode
Einfach eine Diode vom Ausgang des Reglers (Pin3) zum Eingang (Pin1)
| /|
+-----| |----+
| | \| |
| |
---+--- 7805 ---+----
|
|
|
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.