Hallo, ich habe einen Mega 32 folgendermaßen angeschlossen: [img]http://rowalt.de/mc/avr/twinavrh.png[/img] Den Quarz und die anliegenden Kondensatoren habe ich weggelassen, weil TwinAVR den Prozessor nicht erkannt haben. Es war so, dass ich in dem Programm auf Config geklickt habe und dann folgendes BIld erschien: [img]http://img518.imageshack.us/img518/532/avr2tv5.jpg[/img] Ziehe ich dann, solange das FEnster noch offen ist, den Stecker vom PC, erscheint auf einmal folgendes Bild: [img]http://img525.imageshack.us/img525/2308/avr1jt2.jpg[/img] Genau das gleiche Problem tritt auch mit Quarz und ohne Quarz auf! BASCOM erkennt den Prozessor auch nicht. Wisst ihr, woran das liegen kann?
An ziemlich vielem ... PC (Parallelport) defekt, AVR defekt, Schaltung falsch aufgebaut, Bauteile auf der Schaltung defekt, Kabel falsch belegt, Kabel gebrochen, Kabel zu lang, Stromversorgung nicht eingeschaltet, Stromversorgung defekt, Software falsch eingestellt, Software falsch bedient usw. Wenn du ein Oszi hast, würde ich mal nachschauen, ob auf der SCK-, MOSI- und MISO-Leitung - wenigstens kurzzeitig - Signale anliegen, ob die halbwegs digital aussehen und ob sie an den entsprechenden Pins des AVR ankommen. Der PC müsste auch bei nicht angeschlossenem AVR kurzzeitig etas auf SCK und MOSI ausspucken, sonst hast du ein Software-, Einstellungs- oder Parallelportproblem. Wenn der PC etwas sendet, der AVR aber nichts von sich gibt, liegt der Fehler auf AVR-Seite. Versorgungsspannung am AVR und Resetsignal prüfen. Letzteres sollte vom PC für die Dauer der Kommunikation auf low gezogen werden. Wenn du kein Oszi hast, kannst du auch einen Piezolautsprecher an die Leitungen anschließen. Du solltest mindestens ein kurzes Knacken hören, wenn der PC di Kommunikation initiiert. Bei längerer Kommunikation (aber dann sind wahrscheinlich auch die Probleme schon gelöst) hörst du ein Geräusch ähnlich dem eines Modems. Ist dein AVR neu oder möglicherweise schon defekt oder zerfust? Vielleicht hast du noch einen zweiten zum Testen.
Hallo, ich habe nur einen AVR und der ist v..t. 1 Monat alt. Die Schaltung des Programmieradapters habe ich schon 3 mal neu gelötet, daran kanns also nicht liegen. Was meinst du mit Kabel zu lang? wie lang dürfen die sein? Dass das Kabel gebrochen ist, kann nicht sein, da ich schon mit dem Durchgangsprüfer alle Leitungen geprüft habe. Einen Oszilator habe ich leider nicht zur verfügung, auch keine Piezolautsprecher. Dass der Paralellport defekt ist, glaube ich auch nicht, da ich an meiner Schaltung 4,5V vom Paralellport erhalte. > Der PC müsste auch bei nicht angeschlossenem AVR > kurzzeitig etas auf SCK und MOSI ausspucken, sonst hast du ein > Software-, Einstellungs- oder Parallelportproblem. Wie lange und wie viel müsste der auf SCK und MOSI ausgeben? Und kann es sein, dass im BIOS was falsch eingestellt ist? (bezügl. Parallelport) Was ich auch (hofffentlich) ausschließen kann, ist ein Defekter Prozessor, da er ja manchmal die RIchtigen Daten erkennt und mir anzeigen kann. Auch an Fusebits habe ich nichts verändert, also kann man das auch ausschließen. Ich hoffe, ich habe das Problem ausreichend beschrieben und ihr könnt was damit anfangen. Über Antworten würde ich mich freuen!
Nachtrag: Sollten die Fusebits, wie sie dritten Bild dargestellt sind, tatsächlich vom AVR gelesen worden sein (immerhin ist wohl ein ATmega32 erkannt worden, oder hast du den MCU-Typ vorher irgendwo eingegeben?), dann sind die Fuses gegenüber der Werkseinstellung völlig verändert. Insbesondere die CKSEL-Bits sind auf externen Oszillator eingestellt, d. h. du must einen externen Takt anschließen (keinen Quarz, sondern einen kompletten Oszillator), sonst läuft der AVR gar nicht erst an. Aber nee, dann hätten die Bits ja gar nicht gelesen werden können. Also kommen sie wohl doch nicht vom AVR. Oder er hat durch das Rumstöpseln ein Störsignal auf den Takteingang bekommen, das ihn kurzzeitig zum Leben erweckt hat. Ziemlich schwierig halt, die richtigen Schlüsse zu ziehen, wenn man nicht davor sitzt.
Ohje.... soll ich mal versuchen, die FUsebits zu verändern? Oder mach ich da eher mehr kaputt? Und wie wären denn die Werkeinstellungen? Erstmal danke für deine Hilfe, hier kriegt man noch freundliche Antworten, ganz im Gegensatz zu gewissen anderen Foren ;-)
hallo, hast es auch mal mit einem anderen PROGGI probiert???? ich selber benutze YAAP. funzt super. der Dongle dafür ist in 2min gebaut!!! siehe hier: http://www.myplace.nu/avr/yaap/if_jesper.gif gruss und viel glück
stimmt, sieht recht einfach aus! hast du einen link / beschreibung zu dem ding?
Der Jespers Original funktioniert auch mit PonyProg! Ich bin yaap sehr abgeneigt, seit dem es mir durch einen Programmfehler 2 uC's zerschossen hat >.< http://www.lancos.com/ppwin95.html
hallo, bei mir hat YAAP bisher immer gut gefunzt, noch keinen murks gehabt. ok ;-) einmal hats mir au 2 ATRMEGA8 zerschossen, aber was solls. sonst nie probs. @ich: willste eine beschreibung von dem PROGGI???? http://www.myplace.nu/avr/yaap gruss
Thx! Aber ich bräuchte eine Beschreibung zu der Schaltung (Jespers Original), um sie zu verstehen ;-)
http://www.myplace.nu/avr/yaap/ da steht nicht, dass es auch mit dem Mega32 geht.... Meint ihr, es klappt trotzdem?
Hallo, wer kommt eigentlich immernoch auf die "geniale" Idee, einem Einsteiger zu empfehlen, eine AVR-Schaltung zum programmieren aus dem Parallelport eines Rechners zu speisen? So hat man speziell mit neueren Rechner ja alle Unbekannten beisammen, um für Mißerfolge zu sorgen... Passiver Adapter, der sowieso schon empfindlich auf ungünstige Parallelports reagiert, weil die Flanken und Pegel im Eimer sind, womöglich noch lange Kabel (für solche Schaltungen können 20cm schon zu lang sein). Da Einsteiger meist auch keine sinnvollen Meßmöglichkeiten haben und ihnen logischerweise die Vorkenntnisse meist fehlen, um notfalls selbst die Anzeige eines Multimeters an Reset/SCK/MOSI/MISO interpretieren zu können, hat man wohl alles ungünstige beisammen. Meine Empfehlung: für stabile 5V sorgen, stabilisiertes 5V-Netzteil oder einfaches 9V...12V-Netzteil und ein 7805 dahinter. Wenigstens ein aktiver ISP, STK200 Dongle-Nachbau mit 74HC(T)244 drauf. Dongle direkt am Parallelport, Kabel von dort als 10pol. Flachbandkabel mit Pin 1,3,5,7 an beiden Seiten an GND. Dann Spannung vom Netzteil ran, kontrollieren, ob am HC244 vom ISP auch die 5V ankommen (hinter der Diode sind es noch ca. 4,4V). Dann ISP an den PC ran, Pony calibrieren, Test machen, muß ok sein, Einstellung des Treibers normalerweise AVR ISP I/O an LPT1. Das testet nur den Zugriff auf den Parallelport und ob die Brücke im Dongle da ist. Wenn das nicht klappt -> Problem mit dem Portzugriff, speziell unter WinXP und neuen Rechnern? Vorsichtshalber den Kram mal an einen älteren Rechner stecken, Win98 und Win2000 sind da unproblematischer. Wenn es soweit klappt, AVR ran, Typ einstellen (nicht auf die automatische Erkennung von Pony vertrauen, wenn man nicht weiß, ob überhaupt was geht!) Fusebits LESEN. Es darf keinerlei Fehlermeldung geben und die gelesenen Fuses müssen mit dem Datenblatt übereinstimmen, wenn der AVR neu ist! Dann Flash LESEN. Muß alles FF sein, wenn der AVR neu ist. Wenn bis hier alles klappt, irgendeine kurze .hex-Datei in den Flash schreiben. Einfach aus irgendeinem Beispiel nehmen, egal, für welchen AVR es war und was es mal machen sollte, es soll ja nicht wirklich laufen. Das muß ohne Fehler gehen, Verify muß ohne Fehler gehen, Zurücklesen muß gehen, Löschen und nochmal programmieren muß gehen usw. Dann kann man so halbwegs sicher sein, daß man mit dem Kram sinnvoll anfangen kann und nicht mit allen Unbekannten gleichzeitig kämpft... PS: Die Teile für diese Übung incl. HC244 und einem AVR kosten sicher unter 10 Euro, den Kram hat vermutlich selbst ein völlig Ungeübter an einem Wochenende überstanden und man hat ein Stück halbwegs stabils Werkzeug danach. Konkret fragen, wenn es irgendwo klemmt, kann man hier immer, auf Ausweichmöglichkeiten sollte man am Anfang immer eingerichtet sein, speziell anderer PC, anderes Betriebssystem sind zum "mal schnell testen" günstig. Auch ein besserer (teurerer) ISP kann fällig werden, wenn es so nicht zu Ziel führt. PonyProg ist auch nicht Pflicht, avrdude und was es noch so gibt, geht sicher auch. Ich habe Ponyprog genommen, weil ich es elbst nutze und gut kenne und weil es bisher auf allen Rechnern in 5 Minuten eingerichtet war und (das sehe ich hier mal als Vorteil an) keine Zusatzinstallationen von I/O-Treibern oder Kommandozeilensachen benötigt. Gruß aus Berlin Michael
@Mihchael vielen Dank für deine Ausführliche Beschreibung! Allerdings ist das ein Schulprojekt, welches morgen laufen sollte. Deshalb kann ich keinen Spannungswandler mehr bekommen! Das Kabel von meinem Adapter ist60cm lang, könnte das das Problem sein? Und hast du einen Schaltplan zu dem oben beschriebenen Adapter?
Kannst dir auch mal diese Seite angucken. http://s-huehn.de/elektronik/avr-prog/avr-prog.htm fallst du die Bauteile für die serielle Version hast, kann ich dir nur raten ihn zu bauen. Ich benutze ihn auch an mehreren PCs und mit mehreren AVRs. jonny
Der Paralellport muß natürlich auch im BIOS aktiviert werden! Sonst geht gar nichts.
ja, der parallelport ist aktiviert, aber welchen modus muss ich im bios einstellen? bauteile für den seriellen port hab ich leider nicht...
was ist mit der schaltung hier? http://s-huehn.de/elektronik/avr-prog/avr-parallel.gif hat die schonmal jemand getestet?
also ich hab jetzt den adapter vom anfang nochmal getestet, allerdings mit nur 30cm kabel und ohne ext. Quarz. Jetzt sieht es so aus, dass nach längerem warten etwas angezeigt wird. (so ca. 5 Min) Ist es normal, dass das so lange dauert?
nach kürzen dse kabels auf 30cm ging es dann doch irgendwie mit dem ersten adapter. ich habe jetzt ein Programm draufgespielt. wie kann ich sehen, ob es richtig gespeichert wurde?
Hallo Ich, >ich habe jetzt ein Programm draufgespielt. >wie kann ich sehen, ob es >richtig gespeichert wurde? verify und macht es das, was es soll ? Otto
wie verify? hab jetzt nur mal ein programm drauf gemacht, das einen text ausgibt... muss mich ja noch einarbeiten
Dein Programmiertool sollte Funktionen zum Schreiben (die hast du offensichtlich schon benutzt), Lesen und Überprüfen (Verify) des Flashinhalts haben. Letztere liest den Flashinhalt aus dem µC aus und vergleicht die Daten mit einer Datei auf dem PC (typischerweise diejenige mit der der µC geflasht wurde). Stimmen die Inhalte überein, kann man ziemlich sicher sein, dass die Daten richtig geflasht wurden. Diese Prüfung kann unabhängig davon, was dein µC-Programm tut und ob es schon korrekt arbeitet, angewandt werden.
komisch, hat mein programm nicht naja, ich muss jetzt mal BASIC lernen! wo gibts ein gutes tutorial? (auf AVRs bezogen) sollte das morgen einigermaßen beherrschen, also am besten eins auf deutsch ;-)
Hallo Ich, > komisch, hat mein programm nicht hat jedes - wahrscheinlich wird dies bereits automatisch nach dem Programmieren > naja, ich muss jetzt mal BASIC lernen! > wo gibts ein gutes tutorial? (auf AVRs bezogen) > sollte das morgen einigermaßen beherrschen, > also am besten eins auf deutsch ;-) fänst Du nicht etwas spät damit an ? Bis morgen lernst Du evtl. die Befehle auf keinen Fall aber das Programmieren. Aber suche mal nach "BASCOM" und sieh die Jörg Wolframs Basic-Computer an. Gruß Otto
Ich weiß, wollte eigentlich auch früher anfangen! NUr ist das Problem, dass es ja bis vor kurzem überhaupt nicht ging! morgen muss mein Programm halt fertig sein... Habe ja auch erfahrung in anderen Sprachen, also ist das kein so großes Problem
Hallo Ich, dann pfeif Dir mal schnell dies rein: http://www.jcwolfram.de/projekte/avr/chipbasic32/basic.php http://www.jcwolfram.de/projekte/avr/chipbasic32/examples.php Otto
danke! noch ne frage: wie muss ich das jetzt anschließen, wenn ich z.B. ne LED an PB0 hab? dass die leuchten kann
kommt darauf an, wie hell die leuchten soll. ohne Transistor und mit einer normalen LED (keine "low power") Widerstand 470 Ohm an Anode der LED und Kathode an Masse. Bei einer "low-power" können es auch 1-2k sein. Gruß Otto
> öh was meinst du damit? :-)
das Basic auf der genannten Seite von
Jörg Wolfram ist nicht "Bascom".
Da gibt es kleine aber feine Unterschiede.
Ich fand nur, daß die Beispiele einen
schnellen Einblick geben.
Otto
kommt drauf an - aber mit: AREF 100 nF an Masse GND an Masse und AVCC an Vcc (+5V) sollte es funktionieren Otto
ist das dann die stromversorgung für die einzelnen pins, oder für was braucht man das?
Also brauch ich die, wenn ich nur 3 Ausgänge habe, die in regelmäßigen Abständen von High auf Low wechseln? (und umgekehrt)
Nach Datenblatt sollen die auch beschaltet werden, wenn ADC nicht verwendet wird - und falls Du ihn später doch brauchsr, wird es Dir dann keine Probleme bereiten - also beschalte sie jetzt.... Otto
ok... ich hab hier mal ne zeichnung gemacht: [img]http://img511.imageshack.us/img511/7325/stimmtdasrj5.jpg[/img] hab ich das so richtig verstanden?
kann man mit BASIC eigentlich auch irgendwie funktionen definjieren? (wie z.B. in PHP)
normalerweise nein - nur Unterprogramme, die dann mit "gosub" aufgerufen und mit "return" beendet werden. Bascom selber kenne ich allerdings nicht. Otto
ähh ich hab das jetzt hingelötet und jetzt wird der prozessor nichtmehr erkannt
er geht doch! wie kann ich jetzt erreichen, dass mit der prozessor einen für einen Binärzähler erträglichen Takt ausgibt?
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.