Hallo, mein Name ist Felix und seit den letzten Wochen habe ich mich in die Programmierung von Mikrocontrollern eingearbeitet und mit jetzt ein Steckbrett, nen atmega32 und nen programmer zugelegt. Ich habe mit dem Versuch gestartet einfach ne LED zum leuchten zu bringen und es ist sehr deprimierend daran gleich zu scheitern. Der Atmega lässt sich programmieren und alles, nur bekomme ich an keinem Port bzw. Pin ein high-Signal heraus, welches meine LED zum leuchten bringt :(. Kann mir vllt. einer sagen, wo da Fehlerquellen liegen könnten? wie gesagt, programmieren lässt er sich ja und ich hab auch schon internen und externen takt probiert mit nem 7,3728Mhz Oszi. vieln Dank schon im Vorraus
Zeige bitte deinen Quelltext? Sonst wird das hier ein Kaffesatz-Lesen. Gruß Frickler
wie ist die LED angeschlossen? Gegen +5v oder gegen GND? Wie es richtig geht steht unter http://www.mikrocontroller.net/articles/AVR-Tutorial:_IO-Grundlagen
Die LED leuchtet bei HIGH am PORTPIN nur, wenn sie so angeschlossen ist: Pin o----->|-----###-----o GND D1 R1 LED Vorwiderstand Damit der Portpin HIGH ausgibt, muss er korrekt vom Programm angesteuert werden. Damit das Programm läuft muss der Atmega32 korrekt beschaltet sein. Falle bei PORTC: JTAG Fuse im Werkszustand.
Hallo, ohne deinen Code und gegebenenfalls auch deinen Schaltplan gesehen zu haben kann man da nur raten;) Steven
Also: ich bastle schon seit der Hälfte meines Lebens mit Elktrozeugs rum...und ich bin erst 21 :) die LED's hab ich in beide Richtungen probiert auch gegen Vcc wenn die Pins low ausgeben sollen, JTAG ist deaktiviert, es handelt sich bei dem Problem um wirklich ALLE Pins. ich programmiere mit Bascom und mein Quelltext: $regfile = "m32def.dat" $crystal = 4000000 Config Porta = Output Config Portb = Output Config Portc = Output Config Portd = Output Config Porta = &B11111111 Config Portb = &B11111111 Config Portc = &B11111111 Config Portd = &B11111111 End als Programmer nehme ich den "my smart USB ligth" Verbindung mit PC kein Prob. und Bascom sagt mir auch immer, das das Prog aufm Atmega drauf is....fuses und so kann ich ja auch alles einstellen.
Felix schrieb: > Config Porta = &B11111111 > Config Portb = &B11111111 > Config Portc = &B11111111 > Config Portd = &B11111111 lass mal das Config weg
geht trotzdem nicht. laut simulator ändert das doch nix ob mit oder ohne config?
Felix schrieb: > geht trotzdem nicht. laut simulator ändert das doch nix ob mit oder ohne > config? Doch. Mit Config setzt du hier nochmal alle Pins auf Output. Ohne Config setzt du dann auch tatsächlich alle Pins auf 1. Jetzt kommt es nur noch darauf an, wie deine LED verschaltet sind. Daher mach ich gerne folgendes: Porta = &B01010101 Portb = &B10101010 Portc = &B01010101 Portd = &B10101010 also nur jeden 2.ten auf 1 setzen. Unter der Annahme, dass alle LED gleich verschaltet sind, leuchten dann auf jeden Fall an jedem Port 4 LED, egal ob die jetzt nach GND oder nach Vcc verschaltet sind. Wenn nicht, dann kann es jetzt höchstens noch sein, dass die LED Kathode/Anode falsch rum drinn sind.
:) es geht.....immernoch net...es muss ne einstellungssache sein, an der Hardware ist alles ok. jeder port hat 4 leds und immer 2 sind kathode anode vertauscht...es leuchtet keine :(..egal ob ich die ports auf high oder low setze...ich hab auch ne led zwischen Vcc und GND geschaltet...stromversorgung mit 7805 geht also auch einwandfrei kondis sind auch dran....ich bin zwar ein kerl....aber ich fang gleich an mit weinen :( blockieren einstellungen an fuses oder am quarz iwas? für die einstellung des internen taktes kann man ja auch 1000 unterschiede einstellen und extern....
Felix schrieb: > immer 2 sind kathode > anode vertauscht...es leuchtet keine und die sind dann auch entsprechend mal nach Vcc und nach GND geschaltet?
Felix schrieb: > :) es geht.....immernoch net...es muss ne einstellungssache sein, an der > Hardware ist alles ok. jeder port hat 4 leds und immer 2 sind kathode > anode vertauscht...es leuchtet keine :( Schnapp dir mal dein Voltmeter und miss die Pegel an den Pins nach. > blockieren einstellungen an fuses oder am quarz iwas? Nein. Wenn du dich erst mal nur auf den Port B konzentrierst: Wenn der µC an sich läuft, dann kommt da auch eine Ausgabe auf den Pins, indem du den Port auf Ausgang stellst und die Portpins auf 1 stellst. Da kann keine Fuse dazwischenfunken. > für die einstellung des internen taktes kann man ja auch 1000 > unterschiede einstellen und extern.... Alles fürs erste uninteressant. Solange der µC läuft, kommt da auch etwas auf den Pins.
Allerdings weiß ich nicht, was BASCOM macht, wenn sein Programm zu Ende ist. Du solltest es auf jeden Fall in einer Endlosschleife gefangen halten, dann stellt sich diese Frage erst gar nicht.
1 | $regfile = "m32def.dat" |
2 | $crystal = 4000000 |
3 | |
4 | Config Portb = Output |
5 | |
6 | Portb = &B11111111 |
7 | |
8 | Do |
9 | Loop |
10 | |
11 | End |
hatte ich auch schon...und gerade nochmal getestet.....keine reaktion ich finde es übrigens einfach total super wie schnell hier versucht wird einem zu helfen :) Alleine die Zeit die ihr euch nehmt ist ein großes Lob und ein noch größeres DANKESCHÖN wert! vllt fällt euch ja noch was ein :)
also ich hab mal bissl aufgeräumt ;) die kontroll-led funzt und die beiden anderen sind an Port B einmal gegen Vcc und einmal gegen Gnd. :) 78k ;)
Manchmal denkt man sich schon, die Leute glauben wir fordern das alles zum Spass an.
Felix schrieb: > Also: > ich bastle schon seit der Hälfte meines Lebens mit Elktrozeugs rum... Kaum zu glauben. Und in all der Zeit hast du noch nie etwas von Vorwiderständen für LED gehört? Also ich für meinen Teil kann noch nicht mal die Spannungsversorgung auf dem Bild nachvollziehen. Wie da Masse an die Schaltung kommt ist für mich nicht ersichtlich. Was sagt dein Voltmeter: * Spannung am Reset Pin * Spannung an den Port Pins
Masse liegt auf der untersten leiste an und wird durch den grünen Draht neben der LED geführt. Vorwiderstände für die LEDs? die gehen von 2 bis 5V. am reset bzw. Pins liegt 0V an. sry wegen dem schlechten Foto.
Felix schrieb: > Masse liegt auf der untersten leiste an und wird durch den grünen Draht > neben der LED geführt. Und das war jetzt so schwer, vom 7805 (ich geh davon aus, dass das einer ist), einfach 2 kleine Brücken vom mittleren bzw rechten Pin einfach auf die beiden unteren waagrechten Leitungen zu führen, von wo wiederrum kleine Brückrn beim Mega sich die Potentiale holen. Da könnte man ja auch auf einen Blick sehen, wie die Stromversorgung gemacht ist. OK, geb mich geschlagen: das wäre zu einfach und zu übersichtlich gewesen. denn, wo die grüne Leitung hingeht ist ja auf dem Foto nicht ersichtlich. Und wenn man das Foto ganz genau eingehend studiert, findet man auch raus, dass da tatsächlich eine der roten(!) Strippen am mittleren Pin des 7805 endet. Ist nicht gut zu sehen, weil der Elko die Sicht verdeckt, aber was solls. Es war schwer zu stecken also solls auch schwer zu entschlüsseln sein. > Vorwiderstände für die LEDs? die gehen von 2 bis > 5V. Autsch. Schon mal den Begriff Ohmsches Gesetz gehört? > am reset bzw. Pins liegt 0V an. 0V an Reset ist schon mal schlecht. Mach mal den Programmieradapter runter. Am Resetpin musst du 5V messen können.
Hi
>die gehen von 2 bis 5V.
Soll das integrierte Vorwiderstände bedeuten?
MfG Spess
ich hab schonmal was von dem gesetz gehört.....nur die 2 dingens ziehen doch net den atmega leer oder?^^ oder was meinst du? also auch ohne Programmer weniger als nischt....0V
Sag mal: Auf dem Bild - wo zeigt die Kerbe des Mega32 hin? nach rechts oder nach links. Wenn ich so die Pins abzähle, dann ist doch da gar nichts an der Stromversorgung des Mega angeschlossen.
zu meiner Verteidigung, ich hab hier leider nicht mein ganzes zeug mitgenommen und hab deshalb nur Litze gehabt...keine Drahtbrücken. ich bin, was sowas angeht ein ordentlicher Bastler. Nur leider hat mich heute die Lust gepackt, weshalb ich nicht bis zum we gewartet habe....der Programmer kam heute per post und das "allernötigste" hatte ich hier im Wohnheim rumliegen.
Karl heinz Buchegger schrieb: > Sag mal: > Auf dem Bild - wo zeigt die Kerbe des Mega32 hin? > nach rechts oder nach links. > > Wenn ich so die Pins abzähle, dann ist doch da gar nichts an der > Stromversorgung des Mega angeschlossen. Das heist: doch, ich denke ich kann in der unteren Reihe eine Verbindung nach Vcc erahnen, sogar 2 mal. Einmal über das rote Kabel das Luftlinie zum 7805 geht und einmal über ein kurzes schwarzes Kabel, welches in die Verteilerschiene unten geht. Aber ich seh keine Masseverbindung. Normalerweise würde ich sagen: reiß den Krempel runter und machs nochmal. Aber diesmal nicht die Kabel kreuz und quer, sondern vom 7805 gehts auf die beiden waagrechten Verteiler und von dort gehts mit kurzen! Brücken auf die jeweiligen IC-Pin Schienen im Steckbrett Den Programmer wild zu verdrahten ist schon ok, das geht nicht anders. Aber bei allem anderen kommt man locker ohne Kabelkreuzung hin und kann das so anordnen, dass ein Blinder greifen kann, was da verschaltet wurde.
Felix schrieb: > zu meiner Verteidigung, ich hab hier leider nicht mein ganzes zeug > mitgenommen und hab deshalb nur Litze gehabt... AUch die kann man auf das Notwendige ablängen. UNd wenn man sich dann auch noch an das Frabschema hält (Stichwort rot/schwarz) dann vermeidet man gleich die nächsten blöden Fehler.
Wenn der Mega chon programmiert ist, dann brauchst du minimal: Nur die Stromversorgung 100nF an den jeweiligen Vcc/GND Pärchen wären gut Den Programmer komplett abziehen Dann muss Reset auf 5V gehen. Wenn nicht, die Stromversorgungspins nachmessen, ob alles da ist. Und die LED klemm erst mal ab, solange du da keine Vorwiderstände drann hast.
ALSO! ich war gerade dabei euren Rat zu befolgen und nochmal Ordnung zu schaffen, da nehm ich die Brücke zwischen den Gnd-anschluss für den 7805 und den Gnd-anschluss des 32er raus...und plötzlich leuchtet die eine LED...und nach umstellen des Ports von high auf Low...leuchtet die andere :)....mir ist nur net ganz klar, warum.......doch jetzt schon.....es läuft alles aber ohne den 7805....der...nee....mom....also...ich fotografier das hier doch nochmal....vllt kann mir das einer erklären^^
Hast das Netzteil für den 7805 auf 5V eingestellt gehabt? Oder woher bekommt der sein Strom?
...so...erstmal 1000 und 2 Dänker an euch alle! ich find das einfach super.....es geht und Ordung ist halt doch das A und O... danke nochmal :) und jetzt zu dem was ich noch net ganz verstehe....wie man jetzt hoffentlich aufm foto sehen kann: Gnd ist nur am Pin 31 des atmega32, sobald ich an Pin 11 Gnd anlegen will, geht die LED aus....also kurzschluss?! und dann zum 7805....der bekommt nur V+ von meinem Trafo und keine Masse und trotzdem funzt das....da sag ich mal glück gehabt, das mein trafo schon 5, irgendwas bringt....sonst hätte ich mir womöglich meinen mikro abgeschossen...schnell rein mit der Brücke :)
Felix schrieb: > schon 5, irgendwas bringt....sonst hätte ich mir womöglich meinen mikro > abgeschossen...schnell rein mit der Brücke :) Wollt grad sagen: da fehlt doch noch was.
Aus einem Trafo? Der wahrscheinlich auch eine Wechselspannung ausgibt? Ich denke dass die LED leuchtet ist eher ein Zufall als gewollt.
Hast du vom Programmer eine Vcc Leitung rübergezogen? Eventuell wird dein µC vom Prgorammer mit Strom versorgt und gar nicht vom 7805. Falls du eine Vcc Leitung vom Programmer rüber hast, lass die mal weg. Du brauchst nur RESET MISO MOSI SCK GND
Christian D. schrieb: > Aus einem Trafo? Der wahrscheinlich auch eine Wechselspannung ausgibt? <Stossgebet> Sags nicht, bitte sags nicht
Christian D. schrieb: > :) na immerhin hat er mit der LED zwischen den Leitungen einen kleinen > Gleichrichter hust Gleichrichten bis zur Selbstaufgabe, vorausgesetzt, der macht die Massebrücken rein. :-) @TO: Mal doch mal einen Schaltplan, an dem die gewünschte Verdrahtung zu sehen ist (mit Pinnummern). Dann kontrolliere Pin für Pin, ob dein Aufbau passt.
Christian D. schrieb: > :) na immerhin hat er mit der LED zwischen den Leitungen einen kleinen > Gleichrichter *hust* Ist auch eíne Möglichkeit: Gleichrichten indem man den nicht gewollten Teil der Sinusschwingung mehr oder weniger kurzschliest. Aber das wird er ja doch nicht gemacht haben. Das wird ja wohl ein Steckernetzteil sein. Oder? Nein, das will ich mir jetzt gar nicht erst vorstellen. Ich hab schon an den LED ohne Vorwiderstand zu kauen.
nee^^ da kommt schon DC raus^^ cool...so servo ansteuern geht auch...hab ich gerade noch gefunden:D natürlich mit nem transistor davor...falls die Frage aufkommt. bin begeistert von dem Ding....ich hab seit na woche das Buch von Stefan Hoffmann "der leichte einstieg in die elektronik mit mikrocontrollern" und nach na woche wird es zeit zum experimentieren....ohne schleichwerbung machen zu wollen....*hust*....das tutorial hier und das Buch sind eine Hammerkombination :)
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.