Hallo,
ich bin neu in dem µControllergebiet und habe bzw. vielmehr hatte ein
funktionierendes Controllerboard.
Dies hat auch bis jetzt funktioniert jedoch habe ich versehentlich einen
Kurzschluß gebaut bin mir nicht sicher wie aber auf alle Fälle roch es
verbrannt und der Mega128 war glühend heiß.
Danach ging auch nichts mehr also dachte ich ich tausche den Mega
einfach aus.
Nachdem ich dies gemacht hatte konnte ich trotzdem mit den Mega nicht
kommunizieren weder per ISP noch JTAG.
Ich denke ich hätte etwas machen müssen bevor ich ihn eingelötet habe.
Ich habe noch ein weiteres Board ist mehr oder weniger nur eine Platine
bei der die Anschlüsse auf Pfostenstecker herausgeführt sind.
Das funktioniert, also kann ich Kabelbruch etc. ausschließen.
In der Anleitung des Board steht als Auslieferkonfiguration
– ISP: AN
– JTAG Interface: AUS
– Brown-out Detection: AUS
– CKSEL0..3: 1111 (16MHz externer Takt)
– SUT0..1: Start-up Time 16k CK + 64ms
– Mega103 Compatibility Mode: AUS
Muss ich den Mega zuerst programmieren bevor ich Ihn einlöte.
Gibt es hierzu eine Vorgehensweise was und in welcher Reihenfolge ich
etwas machen muss.
Achja ISP Frequenz habe ich alles probiert von ...Hz bis 250kHz.
Ich verwende AVR Studio, AVRISP MK2 und JTAGICE MK2.
STK500 und Adapterplatine ist auch vorhanden habe diese jedoch bis jetzt
noch nicht verwendet.
Gruß
Tom
Hallo,
ISP über SPI funktooniert immer, unabhängig wie der Mikrocontroller
programmiert und gefused ist.
Wenn das nicht geht, ist noch mehr defekt.
Viele Grüße,
Peter
Hallo,
ich habe nun versucht per ISP und JTAG auch den Mega128 zuzugreifen
jedoch ohne Erfolg.
Meine zweite LP funktioniert mit JTAG und ISP nur die erste nicht.
Nachdem ich den defekten 128 abgelötet hatte habe ich alle Leiterbahnen
durchgepiepst somit sollten diese OK sein.
Die ganze LP besteht ja nur aus einer hanvoll Kondensatoren einen Pullup
für Reset und 4 Stiftleisten an denen die IO etc. verbunden sind und ein
Quarz und so teste ich auch ohne externe Beschaltung.
An was könnte es noch liegen?
Ich habe mir ein anderes Board geätzt und dort habe ich auch die
gleichen Probleme, bin etwas Ratlos.
Tom
@Dennis,
ein Kurzschluß liegt nicht vor der Strom bewegt sich um die 40mA.
Die Spannung per ISP oder JTAG gemessen ist auch 5.1Volt.
Ich habe nun mal einen Oszilator 12MHz genommen und XTAl 1 gehängt und
schwups kann ich die Fuse Bits lesen nur nicht setzen oder mache ich da
was falsch?!?
Häckchen setzen und auf Program drücken läuft alles normal durch.
Lese ich die Fuse wieder aus hat sich nicht geändert.
Mache ich etwas falsch?!?Sorry ich mache es zum ersten mal und bin etwas
unsicher.
Danke
Tom
Hallo mochmal,
also irgendwie ist der Wurm drin, ich kann lesen aber nicht schreiben
(Fuse).
Wenn ich schreibe und das Häckchen vei vergleichen reinmache kommt
eine Fehlermeldung das die ISP Frequenz 1/4 der Taktfrequenz sein soll
und das ist sie auch 250kHz zu 16MHz.
Lesen kann ich ohne Probleme nur schreiben geht nicht.
Habe nun mal das EEPROM und den Flesh beschrieben und verglichen auch
ohne Probleme.
Ich bin jetzt kurz davor mir noch ein solches Adapterboard zu bestellen
um zu sehen ob mein JTAG MK2 und ISP MK2 noch richtig funktionieren.
Denn seltsamerweise wenn ich den JTAG als ISP Programmierer verwende
zeigt mir AVR Studio eine andere Fuseprogramierung als der ISP MK2.
Naja es ist spät neuer Tag oder vielmehr Morgen neues Glück.
Tom
Hallo Ivan,
sie ISP Frequenz soll doch < 1/4 der Taktfrequenz sein also bei 16MHz <
4MHz somit ist doch 250 kHz OK.
Oder stehe ich ganz auf dem Schlauch?1?
Tom
ich habe gerade versucht mit 4MHz die Fuse zu schreiben laut AVR Studio
Fuse schreiben OK
Fuse lesen OK
Fuse vergleichen Fehler
Wenn ich Devive ERASE mache laüft alles durch mit OK.
Ich kann die Fuse jedoch nur lesen und nicht schreiben.
Muss ich etwas spezielles beachten ?
Danke schon mal
Tom
Tom wrote:
> ich habe gerade versucht mit 4MHz die Fuse zu schreiben laut AVR Studio>> Fuse schreiben OK> Fuse lesen OK> Fuse vergleichen Fehler>> Wenn ich Devive ERASE mache laüft alles durch mit OK.> Ich kann die Fuse jedoch nur lesen und nicht schreiben.>> Muss ich etwas spezielles beachten ?
Ja, du musst den MISO (oder MOSI, kann natürlich auch sein) Draht
anschließen.
@Simon,
ich habe das Kabel nochmals durchgeprüft und es ist OK incl. Adapter
6pin-->10pin Stecker.
Habe das Kabel durch ein kürzeres ersetzt somit ist das 6Pin kabel
orginal dann Adapter und dann 5cm 10Pol Kabel zur Platine.
Habe irgendwo gelesen hier im Forum das ein zu langes Kabel auch zu
Problemen führen kann.
Das eigenartige ist jedoch manchmal stecke ich alles an und ich kann die
Fuse schreiben zumindest ohne Fehlermeldung stecke ich dann den uC ab
und wieder an, lese die Fuse aus sind andere Fuse eingeschaltet wie
zuvor.
Wenn ich dann wieder schreiben will Fehler.
Ich kapier es nicht manchmal scheint es zu funktionieren aber im
Endeffekt doch wieder nicht.
Achja wenn ich mein Programm flashe und danach vergleiche funktioniert
das auch ohne Fehlermeldung und der Flashinhalt ist i.O laut Verify.
Gibt es irgendwo im Netz eine Anleitung Schritt für Schritt wie man die
Fuse unter AVR Studio ändert habe leider noch nichts gefunden.
Ich denke das ich etwas falsch mache da es das erst mal ist das ich mich
an die Fuse wage.
Bin nun nach dem 3 Tag wirklich ratlos und würde mich über Hilfe echt
freuen.
Tom
das hört sich danach an, als hänge am SPI vom Controller noch ein
anderes Gerät, dass ohne Pullupwiderstand auf der CS/CE Leitung die
Programmierung stört, wenn der Mikrocontroller keinen Pegel (für CS/CE)
ausgibt.
@Andreas,
ca 40mA lese es von einem Zeugerinstrumrnt ab daher könnte es auch
weniger sein.Es ist auch eine LED auf der Platine die anzeigt das die
Versorgungsspannung anliegt also sind es noch ~25mA für den uC.
@Simon,
habe jetzt folgendes herausgefunden, wenn ich den ISP Stecker stecke und
der Controller dabei eingeschaltet war kann ich nur lesen und nicht
schreiben.
Schalte ich den Controller ab secker den ISP Stecker und schalte den
Controller wieder an kann ich die Fuse setzen usw. ohnen Fehler also mal
ein Schrittchen weiter.
Vergleiche ich nun die Fuse Einstellungen mit einem zweiten Controller
sind diese gleich nur beim einen läuft ein LED-Blink Programm und beim
anderen nicht.
Programm geflasht und vergliechen allse OK.
An was kann das schon wieder liegen.
Tom
Also 25mA sind für den Controller immernoch etwas arg viel.
Dächte doch eher so an 5-10mA, wenn er was tut, da er aber neu ist und
nur NOPs ausführend dürfte, halte ichs für etwas arg hoch.
@Andreas,
ich habe nun mal mit einem Multimeter nachgemessen 43 mA.
Ich habe 2 Möglichkeiten den Controller zu versorgen einmal direkt mit 5
Volt und einmal mit 7-15 Volt über einen Festspannungsregler alles auf
der platine.
Egal ob ich 12 oder 5 Volt anlege der Strom bleibt gleich.
Könnte auch sein, das bei Versorgung mit 5 Volt trotzdem ein Strom über
den Festspannungsregler fließt.
Beide Module sind gleich --> Stromverbrauch, beim einen läuft ein
Programm und beim anderen nicht obwohl die Fuse und Lock Bits gleich
eingestellt sind.
Muss ich beim einrichten der Fuse noch auf etwas besonderes achten?
Tom
Hallo,
ich habe nun noch folgendes probiert.
Ich habe 2 identische Module Mega128 auf Stiftleisten mit Quarz,
Kondensatoren und einem Festspannungsregler sonst nichts.
Ich lade auf beide das gleiche Blinkprogramm und vergleiche es --> OK.
Die Fuse Bits und Lock Bits sind identisch gesetzt.
Wenn ich den Quarz mit dem Oszi messe habe ich auf beiden Module die
gleiche 16MHz Schwingung.
Wenn ich nun den Portpin am Oszi anschliesse fängt der eine am zu
schalten AN-AUS-AN-AUS...... im 1ms Takt und der andere nicht.
Hat jemand eine Idee an was es liegen könnte.
Ansonsten löte ich den Mega ab und ersetze diesen mit meinem letzten
Neuen wobei der jetzige erst vor 4 Tagen aufgelötet wurde.
Tom