Hallo, ich habe meinen Mikrokontroller Mega 8 wie auf http://www.roboternetz.de/wissen/index.php/Atmel_Controller_Mega8 beschrieben angeschlossen. Ich habe ihn mit dem AVR Set programmiert und auf diesem Original Board funktioniert auch alles. Aber auf meinem Steckbrett mit der absoluten Minimalbeschaltung von dem Link funktioniert es nicht. Muss noch etwas beachtet werden?
Nein, so wie es da abgebildet ist sollte es mit jeden AVR gehen so lange der nicht auf einen externen Quarz oder Oszilator eingestellt ist.
Wie finde ich raus, ob er das ist? Manuell habe ich nichts verstellt. Also ich habe den Reset PIN ohne und mit einem ca 200 ohm großen Widerstand auf den Plus Pol gelegt, bei beiden Fällen funktioniert es nicht...
10 kOhm sollten es sein, oder direkt an Vcc angeschlossen wenn du den mega nicht innerhalb der schaltung programmieren willst. 200 Ohm gehen natürlich auch, aber dann brauchst du eigentlich gar keinen. Ähem du kannst ja mal auf dem board, wo es geht den Quarz raus nehmen und schauen ob es dann noch geht. Das ist in den Fuses eingestellt, das steht im Datenblatt wie die Fusebits für die jeweilige Einstellung stehen müssen (irgendwo ganz am Anfang unter "Clock sources" oder sowas). Welches Programmierprogramm benutzt du denn?
Ein neuer Mega8 läuft mit internem RC-Oszillator mit 1 MHz. Ein zum myAVR-Board mitgelieferter Mega8 ist auf externen Quarz 3..8 MHz eingestellt, damit die UART-Schnittstelle des Boards funktioniert. Wenn Dein Mega8 also von myAVR.de stammt, dann braucht er neben Reset-PullUp, keramischen Abblock-Kondensatoren (100nF) für Vcc und AVcc auch noch einen Quarz von z.B. 3,6864MHz (oder 4MHz, wenn UART nicht so wichtig ist) und die beiden Kondensatoren um die 22pF am Quarz gegen GND. Alternativ kannst Du den Mega8 wieder auf internen Oszi zurückfusen, damit solltest Du Dich aber erst befassen, wenn Du etwas mehr Ahnung hast. Denn wenn man dabei unachtsam ist, kann man den ISP-Mode abschalten, dann hilft nur noch ein STK500 (oder andere HV-taugliche Programmer) zum Programmieren. Also Vorsicht, Du wärst nicht der erste und nicht der letzte, der den Mega8 aus Versehen ISP-untauglich fust. ...
Wie stelle ich ihn denn auf den internen Quarz um? Ist das ein Befehl im Assembler? Was würde passieren, wenn ich mir einen neuen Mega8 im Internet kaufe und mit dem Programm Sisy, was ich benutze ein Programm darauf brenne? Der neue ist ja wie gesagt wurde auf den internen Quarz eingestellt. Würde durch das Brennen mit der Software dann auch wieder der externe aktiviert? Aber am liebsten würde ich das umstellen mit dem Mega8, den ich schon habe. Ist das eine größere Sache? Grüße Jochen
Die gleiche Frage stell ich mir auch mit den Kondensatoren usw, ich würde gerne ohne irgendwelche externe Bauteile auskommen. Wenn ich mir einen neuen kaufe, klappt das dann?
Danke für den Link Und wie ist das bei Neukauf? Ist da dann alles ok oder wird mit dem neuen Brennen der AvR Software Sisy wieder alles auf den externen eingestellt?
Versuch macht schlau... Ein AVR sollte eigentlich einen 100nF Kondensator gegen GND an Vcc dran haben. Aber wie du siehst geht es auch ohne (in einem Serienprodukt würde ich den aber mit rein nehmen). Ein neuer AVR ist (wie oben bereits geschrieben) auf den internen RC-Oszi eingestellt und läuft ohne Quarz (bei 1 MHz).
> Wie stelle ich ihn denn auf den internen Quarz um? Es gibt keinen internen Quarz. Es gibt aber einen internen RC-Generator, der als Taktquelle verwendet werden kann. > Ist das ein Befehl im Assembler? Das wäre sehr schön, wenn man das per ASM-Befehl gelöst hätte oder zumindest durch Zugriff vom AVR-Programm aus. Aber leider hat man das nicht so anwenderfreundlich realisiert. Stattdessen liegen die Fusebits (eine Art elektronisch betätigbare Schalter zum Einstellen der Betriebsart des AVRs) in einem Bereich, der nur von einem externen Programmer (Software auf PC) erreicht werden kann. Einzelheiten dazu kannst Du im Datenblatt des Mega8 nachlesen. > Was würde passieren, wenn ich mir einen neuen Mega8 im Internet kaufe > und mit dem Programm Sisy, was ich benutze ein Programm darauf brenne? Der neue AVR würde im falschen Takt laufen, worauf die erzeugten Zeiten und Frequenzen nicht stimmen. Da ich nicht weiß, was das Programm 'Sisy' macht, kann ich auch nicht wissen, welche Auswirkungen ein falscher Takt hat. Falls eine Verbindung zum PC über UART dabei ist, so wird diese aufgrund der falschen Bausrate nicht funktionieren. > Aber am liebsten würde ich das umstellen mit dem Mega8, den ich schon > habe. Ist das eine größere Sache? Nein, es ist keine größere Sache, wenn mann es kann. Es ist auch keine größere Sache, Chinesisch zu sprechen, wenn man es denn kann. Das Wissen dazu kann man aber nicht kaufen, das muss man sich erarbeiten, sowas nennt man 'lernen'. Um die Fuses einzustellen sollte man unbedingt wissen (gelernt haben), welche Fuse für welchen Zweck wie eingestellt werden muss. Die Informationen dazu stehen im Datenblatt. Spielt man nur etwas mit den Fuses herum, so ist die Gefahr sehr groß, dass man Reset zum Portpin unschaltet, worauf der AVR nicht mehr per ISP programmierbar ist. > Die gleiche Frage stell ich mir auch mit den Kondensatoren usw, ich > würde gerne ohne irgendwelche externe Bauteile auskommen. Ohne irgendwelche externen Bauteile wird es nicht gehen. Abblock-Kondensatoren und Reset-PullUp-Widerstand (um die 10k, 200 Ohm ist zu niedrig) sollten für einen stabilen Betrieb schon vorhanden sein. Die Gründe dafür liegen in der Physik. Und da die Gesetze der Physik nicht im BGB stehen, kann man sie nicht ungestraft missachten. > Danke für den Link Hast Du ihn gelesen und verstanden? Wenn nicht (verstanden), dann lies ihn nochmal, lies auch im Datenblatt quer, wenn Du etwas nicht verstehst. > Und wie ist das bei Neukauf? Dann ist das kekaufte Teil neu. Falls Du den Neukauf eines Mega8 meinst, dann kommt es noch auf die Herkunft an. Denn kaufst Du ihn bei SiSy.de als Zubehör für das myAVR-Board, dann besteht die Möglichkeit, dass man den Mega8 auf externen Quarz gefust hat, damit er auf dem myAVR-Board mit UART umgehen kann. > Ist da dann alles ok oder wird mit dem > neuen Brennen der AvR Software Sisy wieder alles auf den externen > eingestellt? Nein. Das Brennen der Hexdatei ändert die Fuses nicht. Das muss man seperat erledigen. Welche Fuse-Einstellung man braucht, hängt vom Einzelfall ab, also von den Ansprüchen der Anwendung. (Fast) jedes (sinnvolle) Programm, das man für einen AVR schreibt, wird an eine bestimmte Taktfrequenz angepasst. Wird es mit einem anderen Takt als vorgesehen ausgeführt, so ist es zu schnell oder zu langsam. Wird nur ein Taster abgefragt und eine LED zum Leuchten gebracht, dann tut das nicht weiter weh. Sollen aber Zeiten eingehalten werden, dann wird es kritisch. Eine (einfach aussehende) serielle Datenübertragung zwischen PC und AVR funktioniert z.B. nur bei exaktem Einhalten des Taktes. ...
Na ja, wär auch ziemlich gefährlich, die Taktquelle per Software auswählbar zu machen. Ein kleiner Programmfehler, bei dem in nen unbeschriebenen Teil des Flash gesprungen wird und da dann zufällig genau die Kombination an Befehlen, die die Taktquelle verändert, und vorbei ists.
> und vorbei ists.
Ja, aber nur bis zum nächsten Reset, denn bei einem solchen (fiktivem)
Modell würde ich davon ausgehen, dass der Controller grundsätzlich mit
internem Takt (und auch sonst ISP-fähig) startet und erst dann durch das
Programm in einen anderen Mode geschaltet werden kann.
Aber wie gesagt, das ist fiktiv, das müssen wir nicht ausdiskutieren.
...
Ich kann bei Reichelt keinen 100 nf Keramik für GND finden. Geht da auch ein Folienkondensator? die 22 pf sind Keramik, ist ok so oder?
habs doch gefunden hab jetzt alle Kondensatoren als Keramik (die pf und nf)
Hallo, ich habe noch eine kleine Unklarheuit. Hannes meinte (weiter oben): "Wenn Dein Mega8 also von myAVR.de stammt, dann braucht er neben Reset-PullUp, keramischen Abblock-Kondensatoren (100nF) für Vcc und AVcc auch noch einen Quarz von z.B. 3,6864MHz (oder 4MHz, wenn UART nicht so wichtig ist) und die beiden Kondensatoren um die 22pF am Quarz gegen GND." Ich verstehe das so, dass ich (jeweils ) an VCC und AVCC einen 100 NF Kondensator anschließe und das andere Ende an den PLUS Pol der Batterie / des Netzteils. Jetzt habe ich aber auch den Link http://www.mikrocontroller.net/articles/AVR-Tutorial:_Equipment#Quarz_statt_Quarzoszillator und da ist VCC / AVCC direkt am PlusPol. Was ist richtig? 2. Wieso ist da noch beim Reset ein Kondensator ? Marius (weiter oben) meinte den Reset mit einen 10 kOhm Widerstand auf Plus legen.
Hannes Lux wrote: > Aber wie gesagt, das ist fiktiv, das müssen wir nicht ausdiskutieren. Beim AVR ja, aber andere MCs können das. Z.B. die Silabs C8051F33x starten immer intern mit 24,5MHz und müssen dann auf die gewünschte Taktquelle umgeschaltet werden. Peter
@jochen die kondensator reset kombination macht man normalerweise. Das liegt daran das man davon ausgehen möchte das der µC sicher Strom hat, bevor der reset "gelöst" wird. Sonst kann er eigenartig reagieren.
achso, AVCC brauchst du nciht unbedingt. glaube das ist nur für den internen ADC, hab jetzt leider nicht das datenblatt zur hand, oder keine lust drin zu suchen :)
Ja die Frage war ob ich(beim normalen Stromanschluss PLUS) da einen Kondensator brauche (siehe mein Zitat von hannes) oder ob es wie in der Skizze auf dem Link ohne Kondensator reicht. Und was ist mit dem Reset? Mit Kondensator auf GND (wie Link) oder mit Widerstand auf Plus (wie Marius oben meinte)
Hi Ist das eigentlich so schwer? VCC UND AVCC an +5V (AVCC wird unter Umständen zur Versorgung des Ports benutzt). Wenn die Verbindung zwischen beiden Pins kurz ist reicht ein 100nF so nah wie möglich am Schaltkreis. Ansonsten jeweils ein Kondensator. Reset: entweder offen lassen(hat internen PullUp) oder 10k nach VCC oder 100n nach GND und 10k nach VCC. MfG Spess
Hallo, ich habe jetzt nur die letzten Postings gelesen: AVCC und AGND sind die Betriebsspannung von kompletten ADC-Port, nicht nur vom ADC selbst. Die gehören IMMER angeschlossen und mit 100n abgeblockt. Genauso sind die 100n zwischen VCC und GND selbstverständlich. Selbst wenn es mal ganz ohne Kondensatoren spielt, gehören da welche ran, weshalb ist nun schon so oft diskutiert worden... Zu Reset: aktuelle AVR haben interne Resetschaltungen, die mit Sicherheit zuverlässiger spielen als ein RC-Glied. Ob Widerstand nach VCC oder 100n nach GND oder beides ist mehr eine philosphische Diskussion. Mit beiden wird sichergestellt, daß Störungen nicht auf dem recht hochohmigen Reset ungewollt einen Neustart auslösen. Ich bevorzuge 100n gegen GND bei allen Mega/Tiny-Typen und hatte damit noch keine Probleme. Gruß aus Berlin Michael
Hi, das gilt aber nur, wenn man einen externen Takt verwendet, oder? In dem anfangs genannten Link steht drin, dass er mit dem internen ja ganz ohne irgendwelche externen Bauteile auskommt. nach was muss ich suchen um herauszufinden warum diese Kondensatoren wichtig sind ? Ich konnte so eine Diskussion, von der du gesprochen hast leider nicht finden. Da sich ja jetzt eine von dem Tutorial abweichende Grundschaltung ergeben hat, habe ich das nocheinmal aufgezeichnet, wie ich das verstanden habe. Könntet Ihr Euch das ansehen und korrigieren bzw. ein ok geben? Für mich ist wichtig, dass es richtig funktioniert denn ich betreibe ihn mit einer Uhr da sollte der Timer schon absolut sekundengenau sein. Anbei mein Vorschlag.
Hallo, http://www.mikrocontroller.net/search?query=abblock+kondensator&forums%5B%5D=1 http://www.google.de/search?hl=de&q=abblock+kondensator&meta= reicht das als Anfang? ;) Gruß aus Berlin Michael
Ja klar das reicht, danke. Ich hatte nur das Stichwort "Abblockkondensator" nicht. Also meine Skizze ist okay?!
Skizze ist OK, ich persönlich würde noch zwischen Reset und GND einen 100n Kondensator machen, aber wie oben schon beschrieben wurde ist das wieder etwas philosophisch. Noch als Tip für Eagle, mit dem du die Skizze offensichtlich gemacht hast: Benutze für GND und +5V die entsprechenden Symbole aus die Bibliothek "Supply", dann wird der Schaltplan wesentlich leserlicher, weil die Pfade für die Versorgungsspannung nicht stören.
Hi, danke dann kann ich das morgen endlich aufbaueb. Ich habe die Skizze nur von http://www.mikrocontroller.net/articles/AVR-Tutorial:_Equipment#Quarz_statt_Quarzoszillator etwas umgezeichnet, weil sie da ja scheinbar nicht korrekt ist (100er Kondensatoren fehlen)
P.S. gilt das mit den Abblockkondensatoren zwischen Plus und minus auch bei IC's? Z.B. Latches
>gilt das mit den Abblockkondensatoren zwischen Plus und minus auch bei >IC's? Z.B. Latches Ja.
Sind die verschiendenen Kondensatoren dann nicht parallel geschaltet wenn ich z.B. eine Schaltung mit 2 Ics und einem MC habe und jeweils Kondensatoren zwischen Plus und Minus anbringe?
Hallo, stark vereinfacht: bei allen digitalen ICs, weil sie die Umschaltpeaks von der Versorgungsspannung fernhalten sollen, die andere ICs beeinflussen könnten. Bei allen analogen ICs, um Störungen auf der Versorgungsspannung vom IC fernzuhalten. Also generell immer 100n ran. :) PS: ja, man kann das mit den 100n nicht so verallgemeinern, bisher bin ich aber in den Bereichen so bis 25MHz mit dieser Variante immer gut gefahren. Fehlende Kondensatoren können schwer zu findende Beeinflussungen hinterlassen, unnütze Kondensatoren haben dagegen noch nie erkennbar geschadet. Bei mir also immer 100n an allen IC-Spannungsanschlüssen gegen das zugehörige GND möglichst dicht und kurz. Ich weiß, daß das "Gießkannenprinzip" nicht der Weisheit letzter Schluß ist, man hat aber als Hobbybastler kaum die Möglichkeit, sowas komplett zu simulieren oder zu messen und so teuer und so groß sind die Dinger nun auch nicht... Gruß aus Berlin Michael
> Sind die verschiendenen Kondensatoren dann nicht parallel geschaltet
Bei den MHz, um die es bei diesen Kondensatoren geht, sind alle
Leitungen als Induktivitäten zu sehen. Und daher stimmt das Modell der
Parallelschaltung nur bei Gleichspannung und einem
Wechselspannungsanteil mit niedriger Frequenz.
Deshalb ist auch die Leitungsführung so wichtig. Wichtig, dass der Kerko
zwischen Stromzuführung und IC liegt, und nicht in einem Seitenabzweig,
oder gar "hinter" dem IC. Grad das ist aber schwierig zu realisieren,
wenn das IC die unselige Tradition der Stomversorgungsanschlüsse an den
Ecken weiterführt.
Michael U. wrote: > > Ich weiß, daß das "Gießkannenprinzip" nicht der Weisheit letzter Schluß > ist, man hat aber als Hobbybastler kaum die Möglichkeit, sowas komplett > zu simulieren oder zu messen und so teuer und so groß sind die Dinger > nun auch nicht... Nach diesen Prenzip wird bei uns Kameras gebaut und die laufen dann auch 5 Jahre in 24/7-Betrieb dann ist die RLV am Ende.
jochen wrote: > Sind die verschiendenen Kondensatoren dann nicht parallel geschaltet > wenn ich z.B. eine Schaltung mit 2 Ics und einem MC habe und jeweils > Kondensatoren zwischen Plus und Minus anbringe? Betrachte die Abblock-Kondensatoren mal nicht als Teil der (Nutz-)Schaltung, sondern als Teil der Platine. Sie haben die Aufgabe, die extrem schnellen Änderungen der Stromaufnahme (extrem kurzzeitige, aber hohe Stromaufnahme im Umschaltpunkt eines internen Transistorpaares) direkt am IC abzufangen und den Rest der Schaltung vor diesen Stromspitzen zu schützen. Ohne sie würde der induktive Anteil der Leiterzüge zu undefinierbarem Verhalten der Stromversorgung führen. Der Abblock-C dient also als eine Art "Energiereserve" direkt am IC. Dabei ist seine absolute (genaue) Kapazität nicht allzu wichtig, es kommt aber darauf an, dass er extrem schnell "liefern" kann. Desshalb nimmt man Keramik-Vielschicht-Kondensatoren. Viele Folienkondensatoren (aber nicht alle) sind ungeeignet, da ihr induktiver Anteil zu hoch ist. Ein Eklo ist absolut ungeeignet, er ist um Größenordnungen zu langsam. Die Abblock-Kondensatoren sind soooooo selbstverständlich, dass sie in Prinzipschaltungen (besonders in Lehrbüchern) fast immer weggelassen werden, was das Augenmerk auf die eigentliche Schaltung lenkt. Ein Schaltbild, in dem die Abblock-Kondensatoren fehlen, ist also keinesfalls falsch, sondern "nur" übersichtlich (vereinfacht) gezeichnet. Du musst daher das Tutorial nicht als fehlerhaft bezeichnen. Selbst in (digital vorliegenden) Schaltbildern, die zur Entwicklung einer Platine benutzt werden (z.B. in Eagle) legt man diese Abblock-Kondensatoren oftmals in eine eigene "Ecke", in der auch die Versorgungsanschlüsse vieler Digitalchips angesiedelt werden. Schau Dir mal die Bibliotheken mit Digital-ICs (TTL, CMOS) an, da wirst Du feststellen, dass die Funktionselemente (Gatter, Flipflops, Zähler, ...) im Schaltplan keine Versorgungsanschlüsse haben. Diese müssen mittels "Invoke" explizit dazugeholt werden, um sie auf der Zeichnung darzustellen. Im Layout sind sie aber vorhanden und bereits beschaltet (Luftlinien). Bei AVRs sind die Versorgungsanschlüsse allerdings im Hauptsymbol enthalten. Der Kondensator am Reset hatte seine Berechtigung, als die AVRs noch kein BOD (siehe Datenblatt) hatten. Er sollte dafür sorgen, dass beim Anlegen der Betriebsspannung der Reset-Pin nur langsam auf H geht, um den Controller erst zu starten, wenn die Betriebsspannung stabil ist. Die Profi-Lösung ist ein externer Reset-Chip, die RC-Lösung war ein billiger Ersatz, die heutigen AVRs haben diese Schutzvorrichtung gegen Unterspannung (BOD) mit auf dem Chip. Ein zu kleiner Kondensator am Reset ist unwirksam, ein zu großer Kondensator behindert ISP, es ist also ein Kompromiss zu suchen, den Jeder nach seinen eigenen Erfahrungen woanders findet, was auch von der ISP-Hardware abhängen kann. Ähnlich ist es mit dem Reset-PullUp-Widerstand. Ich bin bisher mit 3,3k sehr gut zurecht gekommen, habe aber hier gelesen, dass einige Leute von ISP-Problemen berichten, wenn der Widerstand unter 10k liegt. Denn auch dieser Widerstand ist ein Kompromiss, er soll möglichst niederohmig sein, um Störimpulse, die die Reset-Leitung (als Antenne) einfangen könnte, kurzzuschließen. Er muss aber so hochohmig sein, dass die ISP-Schaltung in der Lage ist, den Reset-Pin (schnell genug) sicher nach GND zu ziehen. Die Kondensatoren am Quarz sollen das Anschwingen des Quarzes erleichtern. Die Größenordnung von 20..30pF ist so extrem wenig, dass bei ungünstiger Platine bereits die die Kapazität der Leiterzüge in deren Nähe kommt. Daher sollte der Bastler die Leitungen zum Quarz auch möglichst kurz halten. Der Typ der Kondensatoren am Quarz ist nicht allzu kritisch, aber in diesem Kapazitätsbereich sind Keramik-Typen gut erhältlich. Ich nehme dazu meist Keramik-Chipkondensatoren 22pF und pappe sie zwischen die Leiterzüge zum Quarz und GND. Auch für Abblock-Kondensatorten (für DIL-AVRs) bevorzuge ich SMD-Chipkondensatoren. Meist nehme ich 100nF der Größe 0805, oft aber auch 470nF etwas größerer Bauform, da ich davon mal 'ne halbe Rolle günstig bekommen habe. Und bei mir bekommt jeder Versorgungsanschluss einen Abblock-C. Der Mega8 bekommt also 3 Abblock-Cs (VCC-GND, AVCC-GND und AREF-GND), selbst dann, wenn AVCC und VCC direkt (also ohne Induktivität) miteinander verbunden sind. Dieser eine Cent macht die Schaltung nicht wirklich teurer, vermeidet aber unnötigen Stress. Den Kondensator am Reset benutze ich nicht, aber das ist ja Ansichtsache. ...
Jetzt weiß ich endlich, wozu das ganze gut ist. Es macht schon mehr Spaß wenn man die Teile nicht einfach nur verbaut sondern auch deren Aufgabe kennt! Ich habe bisher bei Ics keine Kondensatoren angebracht, es ging auch ohne eigentlich problemlos. Aber dann werde ich das in Zukunft machen, wobei ein Ende ja etwas länger sein wird als das andere (wie schon angesporchen liegen ja die Stromanschlüsse bei den Ics ungünstig). Ich danke für die netten Erklärungen, ihr habt mir viel geholfen!
> wie schon angesporchen liegen ja die Stromanschlüsse > bei den Ics ungünstig Beim Mega8 liegen sie ideal. Ungünstig ist z.B. der Mega8515.
Meiner Wissens nach sind Folien besser geeignet ls Keramik?!? Ich hatte mal gelesen, das die Kermaik sich ungünstig auswirken, da sie schwingungen verursachen können. Daher habe ich vor kurzen alles komplett von Keramik auf Folie umgestellt. Ich habe hier mal mein defektes 1000€ Ladegerät von Ericsson analysiert. Da wurde nicht ein einziger Kerko verbaut!!! doch beim Quarz, aber das wars. Nur Elkos (5 Stück oder so und bestimmt 100 Folienkondis oder so...) Und von daher bin ichd avon ausgegangen das in solch zuverlässigen Geräten aus diesem Grund auf Kerkos verzichtet wird...HF Störungen, Schwingungen etc. ISt ein 60V 30A Ladegerät Insbesondere bei A/D Wandler Eingängen sollte man nur Folie nehmen wegen eben dieser ungünsigen Schwingungsneigungen Allerdings soll das wohl bei 10 bit nicht so wichtig sein.... Der einzige grund Kerko zu verbauen liegt wohl darin, da die billiger sind....
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.