Hallo zusammen! Ich lese hier oft mit und finde viele Antworten und Anregungen. Dafür Dank. Nun habe ich ein Problem für das ich in den letzten 4 Stunden keine Lösung Antwort Erklärung fand. Ich betreibe 5 ATmega8 auf baugleichen Platinen. Hier ein Link zu meinem Projekt: http://www.razyboard.com/system/morethread-wrdkontrollekamikrokontrolle-wiesollichnurheissen-1542510-4190906-0.html Die Mikros werden mit externem Takt von 3,6864 Mhz versorgt. Ich habe jeweils das Fusebit (Clock) auf "externen Clock" gesetzt. Zum Programmieren habe ich mir einen "Sample Electronics AVR Programmer" Kabel an das parallele Port "gelötet". AVR ISP 10Pin. Ich benutze den Programmer der BASCOM Software. Nachdem alle ATmega8 auf die gleiche Weise programmiert wurden habe ich nun folgende Situation: ZWEI der mega8 laufen auf allen FÜNF Platinen. Die ZWEI werden auf allen Platinen vom Programmer als ATmega8 erkannt. Ihre Fusebits richtig gelesen und wiedergegeben. DREI der mega8 laufen "irgendwie" auf allen FÜNF Platinen. Die drei komischen mega8 antworten und senden "gaga" Zeug. Z.B. "²CxCxCCx" Das Port zum Überwachen des ADC läuft zu schnell, ~ doppelt so schnell. Schlimmer ist, die DREI werden nicht mehr erkannt, ich kann sie nicht mehr programmieren. "Could not identify chip with ID:FFFFFF" ? Auf allen FÜNF Platinen. Jede Hilfe herzlich willkommen, etwas ratlos ... heute hätte ich Zeit und die Läden sind zu ... mfg werner
Mit Fuses falsche Taktquelle eingestellt? (z.B. external clock) Dann könnte ein extern zugeführter Takt ISP-Kommunikation ermöglichen, um die Fuses zu überprüfen und korrekt zu setzen. ...
Hi, ich vermute mal, das Dein Einfachst-Programmer den Reset nicht richtig hinbekommt. Zusätzlich muss er gegen den R13 und den C14 auf Deiner Platine arbeiten. Wie Du sagst bekommst Du als ID FFFFFF was darauf hindeutet, dass der ATMega noch keine Taktung auf SCK annimmt und der interne Pullup auf MISO/MOSI noch wirksam ist. Du könntest allerdings auch den Reset per Fuse Bit zum Ausgang gemacht haben. Dann hilft nur noch ein HV-Programmer. Gruß, Klaus
Hallo, 4,7k und 1µ am Reset sind für jeden Programmer eine erhebliche Last. Die 4,7k mögen noch gehen, aber 100n am Reset reichen. Ich kann mir vorstellen, daß einige Mega8 auf die verzögerte L/H bzw. H/L-Flanke beim Programmierstart/-ende etwas unberechenbar reagieren. Der Widerstand gegen Ub ist ohnehin Dauer-Diskussionsthema hier, der Mega8 hat einen internen PullUp am Reset, ich beschalte bei allen Megas Reset nur mit 100n gegen GND, bisher ohne Probleme. Gruß aus Berlin Michael
Ständiges Thema Reset-pin und Widerstand,ich verwende in allen Schaltungen 10 kohm und bekomme keine probs.100 nF sind wie schon gesagt ausreichend.Vermute wie vorher gesagt,das dies die ursache ist. Nicht jeder mega8 gleicht wie ein Ei dem anderen.
Hallo, das geht ja schnell hier. Hannes: Es ist ein externer Takt eingestellt und liegt auch an. Der mega8 tut ja auch etwas, DREI Stück eben nur Unsinn. Klaus und Michael: Yoh, da habe ich wohl falsch gedacht. Wenn ich dem RESET Pin zusehe, sehe ich wie das Druckerport doch Mühe hat. R13 ist nun raus und C14 habe ich auf 100nF verkleinert. Die ZWEI guten tun's noch immer. Die Drei doofen spinnen weiter. Ich habe nun festgestellt, dass die komischen mega8 garnicht auf den RESET Eingang reagieren. Der ADC Monitor toggelt fleissig weiter? Da sind wohl einige Fuses durcheinander? Das mit dem HV Programmer habe ich im Datenblatt des ATmega8 gefunden. Wo findet man eine Anleitung Schaltung Software dazu? Wie geht das genau und im Detail? Vielen Dank und Grüße werner
HV-Programmer ist das STK500 von ATMEL und ein abgespeckter Nachbau von Tobias Hammer. Mal hier im Forum nach 'hv-prog' und/oder 'Hammer' suchen. Ich verwende am Reset meist einen Widerstand von 3,9k und hatte damit noch keine Probleme. Allerdings setze ich keinen Kondensator gegen GND ein, denn der war meiner Meinung nach bei den Classic-AVRs (die noch kein BOD hatten) ein billiger Ersatz für eine Einschaltverzögerung des Reset. Bei den heute üblichen AVRs schalte ich stattdessen BOD ein. Du schreibst, dass ein externer Takt anliegt. Da das hier im Forum oft durcheinander gewürfelt wird und ich vermutlich nur oberflächlich las, ging ich davon aus, dass Du damit einen externen Quarz meintest, der vom internen Quarzoszillator zum Schwingen gebracht wird. Das ist natürlich Zweierlei. Falls es ein Quarz ist, könnte die CK-Opt-Fuse hilfreich sein, mit der man die Amplitude des Quarzgenerators beeinflussen kann. Manche Quarze mögen's nämlich etwas kräftiger. ...
Hi, es ist ein externer Quartzoszillator. Wenn ich ihn abklemme geht nichts mehr. Solange er dran ist laufen die "gaga" Mega8 zu langsam, die 4 AD Kanäle werden ~ alle 30mS anstatt 6mS ausgelesen. ?? Faktor 5, dafür habe ich keine Erklärung. Irgendwie scheint der RESET Pin disabled zu sein. Das habe ich definitiv nicht gewollt / bewusst gemacht. "High-Voltage Programming" , ich habe mir das angesehen: "Autsch, billiger und weniger geht nicht?" mfg werner
Werner wrote: > es ist ein externer Quartzoszillator. Gut, mein Fehler... > > Wenn ich ihn abklemme geht nichts mehr. > Solange er dran ist laufen die "gaga" Mega8 zu langsam, die 4 AD Kanäle > werden ~ alle 30mS anstatt 6mS ausgelesen. ?? > Faktor 5, dafür habe ich keine Erklärung. Woran erkennst Du das? > Irgendwie scheint der RESET Pin disabled zu sein. > Das habe ich definitiv nicht gewollt / bewusst gemacht. Man liest hier öfters, das bei Verwendung einfacher ISP-Adapter die Fuses verstellt sind, ohne dass bewusst dran gedreht wurde. Die Schnittstellen-ICs der PCs sind zu unterschiedlich, da arbeitet ISP manchmal schon an der Grenze des Machbaren, wenn dann gelegentlich mal ein Bit kippt, kann ein ganz anderer Befehl rauskommen. > "High-Voltage Programming" , ich habe mir das angesehen: > "Autsch, billiger und weniger geht nicht?" Nö, gutes Werkzeug hat nunmal seinen Preis. Wobei ich den HV-Mode meines STK500 für mich noch nie brauchte. Ich habe damit aber schon diverse AVRs anderer Leute reanimiert. Da käme es auf Deine auch nicht mehr an... ;-) > > mfg werner ...
Hallo, >> Solange er dran ist laufen die "gaga" Mega8 zu langsam, die 4 AD Kanäle >> werden ~ alle 30mS anstatt 6mS ausgelesen. ?? >> Faktor 5, dafür habe ich keine Erklärung. >Woran erkennst Du das? PD2 toggelt nach jeweils vier AD Konvertierungen, falls da noch irgendeine Logik in den "Kapputen" ist. Nur so aus neugier. Ich habe mir gerade dieses hier gegoogelt: http://elm-chan.org/works/avrx/report_e.html Sollte ich soeinen 74HC299 hier finden probiere ich das 'mal. Sonst komme ich gerne auf Dein Angebot zurück... :o) Wie kommt es eigentlich, das ATmega8 zwischen 1,65 und 9++ EURO kosten sollen? mfg werner
> Sonst komme ich gerne auf Dein Angebot zurück... :o) Sofern es sich um DIL28-Gehäuse handelt. Mit SMD komme ich nicht klar. > Wie kommt es eigentlich, das ATmega8 zwischen 1,65 und 9++ EURO kosten > sollen? Weil es halbwegs faire Händler gibt, aber auch welche, die mit Macht reich werden wollen. Und weil es Kunden gibt, die das nicht merken. ...
@Werner Den HV-Programmer von Elm-Chan habe ich vor ca. einem Jahr nachgebaut und er hat mir schon gute Dienste erwiesen. Die Effekte, die Du beschreibst, hatte ich speziell mit ATmega8 auch schon. Nachdem ich sie alle auf die Werkseinstellung zurückgesetzt und neu geladen hatte, war das Problem behoben. Investiere die Zeit und eine Universalplatine für den HV-Programmer. Es lohnt sich auf jeden Fall. MfG Paul
Hi, von Paul ermutigt habe ich den Elm-Chan Programmer angefangen. Für ein Universalboard schien mir die Schaltung zu konfus. Ich habe BC307 und BC317 (SMD) genommen und die internen Widerstände der originalen Transistoren diskret bestückt. Dieser ist für ATmega8. Ob's geht? Noch nicht fertig. Wenn's klappt melde ich mich nochmal. mfg werner
... und weil ich nur einen Anhang hinbekomme, das Layout dazu.
Hi, Der HV-Programmer funktioniert. Die "gaga" ATmega8 sind "repariert". Er funktioniert tadelslos an einem 40cm langen Flatcable mit aufgequetschten DB25 Steckern. Ohne diese Seite wäre ich noch dran... http://www.b-redemann.de/hvprog1.shtml Nun hatte es natürlich Fehler, deshalb in dem angehängten ZIP die richtige EAGLE Datei, Layout und Fotos. Im wesentlichen waren die internen Widerstände der Transistoren falsch. Chan hat den Emitter oben gemalt, ich hatte daraus den Kollektor gelesen. Die Transistoren heissen natürlich BC807 und BC817 , sorry. Ein - Zwei Brücken fielen noch weg... Ein richtiges Schaltbild habe ich nicht gemacht, es ist eigentlich wie Chans. Meine Version wird mit 12Volt versorgt und ein 78L05 macht die 5Volt auf der Platine. Wie gesagt, ich habe "normale" Transistoren benutzt und die Basis-Vor- und Basis-Neben-Widerstände diskret bestückt. mfg werner P.S. auch sorry für das MegaBild im letzten Anhang, sollte eigentlich die ZIP-Datei davon sein, aber im Zeitalter von DSL ...
@Werner Freut mich, daß Du Dich entschlossen hast, den Programmer zu bauen. Ich habe die Schaltung deshalb auf Universalplatine aufgebaut, weil ich noch diverse Fassungen für andere Typen mit drauf habe. Da wurde es mit dem Layout so konfus, daß es mit einer Universalplatine besser ging. Als Transistoren habe ich KF517 und SF126 drin. Die sind zwar überdimensioniert, aber sie mußten "mal weg" :-) Anbei ein Bild meines "Kunstwerkes". (Ich habe schon schönere Sachen gebaut, aber da war ich in Eile) MfG Paul
... alles klar Paul doch noch ein Schaltplan ... mfg werner P.S. Einziges Problem soweit: Wenn der LapTop in "StandBy" oder "Sleep" geht, dann gehen die 12 und 5 Volt wieder an. ? mfg werner
@Werner Das ist bei mir auch so. Während des Betriebs dieses "Apparates" kannst Du nur Sleep und Standby außer Kraft setzen. Aber da man ihn ja nicht pausenlos benutzt, kann ich damit leben. Frohe Ostern und keine "Eier" in den Fusebits ;-) Wünscht Paul
Hallo Leute, ich habe seit kurzem das Problem, dass bei einem meiner beiden AtMega32 in bascom beim programmer nur kommt: "Could not identify chip with ID: 1E1E1E" Ich vermute das ich die Fusebits etwas falsch eingestellt habe (war gestern relativ spät) Jetzt hab ich das problem, dass ich den einen AtMega32 nicht brennen kann. Hab schon den Quarzoszillator herausgenommen und es getestet obs so geht. Fehlanzeige... Hab hier im verlauf von den HV-Programmern gelesen. Vllt könnten die mir helfen. @Paul Baumann: Würde es dir was ausmachen mir deinen Schaltplan zu senden? Könnte man den AtMega32 'einfach' dann in den DIP 40 steckplatz stecken und so wieder durch die exe wiederbeleben? Sry, hab von den Fusebits generell wenig ahnung... Und hatte als MC bisher nur den AtMega8 und AtMega32... Danke schon mal für die Hilfe. MfG J.P.
Das ist nicht "meine" Schaltung sondern ein Nachbau von hier: http://elm-chan.org/works/avrx/report_e.html Dazu gehört das Programm "AVRPP", welches von der Kommandozeile ausgeführt werden muß. Man kann damit die Werkseinstellungen des Controllers wieder herstellen, aber auch "ganz normal" den Flash oder den EEPROM beschreiben oder die Fuse-Bits verändern. MfG Paul
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.