PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Mysmart Usb Mk2 geht nicht



hmmm?
28.07.2012, 20:30
Guten Tag, ich bin neu hier.
Ich hatte bisher einen guten Einstieg doch jetzt komme ich vor ein Problem.

Ich besitze den Mysmart Usb Mk2: http://shop.myavr.de/Topseller/mySmartUSB%20MK2%20(Programmer%20und%20Bridge).htm ?sp=article.sp.php&artID=42
Programmiere in Bascom.
Und mein Schaltplan ist dieser: (1. Schaltung) http://www.mikrocontroller.net/articles/AVR-Tutorial:_Equipment
Ich verwende den Atmega8
Zum flashen benutze ich myAvr Progtool

Die Fehlermeldung ist folgende:
brennen...
benutze: mySmartUSB MK2 an COM10 mit Atmega8
USB-Treiber installiert, aktiv (V), Port: COM10
Prozessor:
Fehler: der eingestellte (Atmega8) stimmt nicht mit dem erkannten ()
Prozessor überein.

Ich probiere jetzt schon mehrere Tage, doch es will einfach nicht.
Ganz konkret bin ich gard an den Fuses zu brennen da ha FLashen auch nicht geht.
Ich habe Low: 0x50 und High 0xD9

Ich hoffe ihr könnt mir helfen,
MfG Hmmm?

wkrug
29.07.2012, 08:45
Welche Kennung wird denn ausgelesen?
Normalerweise werden von der Programmiersoftware die Kennungs Bytes des angeschlossenen Controllers abgefragt.
Deine Fehlermeldung sagt aus, das die erwartete Kennung nicht mit dem eingestellten Controller zusammen passt.
Deine Low und High Werte sind normalerweise die Fuse Bits und haben mit der Controller Kennung eigentlich nichts zu tun.

Zum proggen via ISP muss der Controller eine gültige Taktquelle haben.
Das kann die Controller interne, ein externer Takt, ein Quarz, oder ein externes RC Glied sein. Welche Taktquelle verwendet werden soll wird über die Fuses CKSEL0 bis 3, sowie über die beiden SUT Fuses eingestellt.
Falls Du diese mal falsch eingestellt hast musst Du die eingestellte Taktquelle anschließen um auf den Controller wieder zugreifen zu können.
Deine Fuses stehen übrigens auf Externer RC Oszillator 0...0,9MHz. Nebenbei - Brown out detection ist ein bei 4V Schwellenspannung eingestellt.

Ich vermute, das der Fehler in der falschen Takteinstellung liegt.

Die Programmierfrequenz darf übrigens nur maximal 25% der Controller Taktfrequenz betragen.

EDIT!
Hubert hat Recht, ist auf externe Taktquelle gefused!

Hubert.G
29.07.2012, 14:29
Laut Fusecalc http://www.engbedded.com/fusecalc/ ist Externer Clock eingestellt.
Wenn du wie in der von dir genannten Schaltung einen Quarzoszillator hast, ist es richtig.

hmmm?
02.08.2012, 19:16
So.
Mir wurde nun gesagt das alles richtig ist. (EInstellung des Programms Schaltung etc)
Ich habe alles schön Dokumentiert.
Nun stelle ich mir die Frage was es sonst sein kann?!
Was ich bis jetzt denke ist der M8 könnt kapput sein. Hab da den ausgewechselt ging trozdem nicht.
Schaltung irgendwo nicht richtig eingsteckt.
Hab alles mehrmals neu eingesteckt?!
MfG Hmmm?

wkrug
03.08.2012, 05:11
Welche Kennung wird denn nun aus dem Controller ausgelesen?

Ich würde es mal mit AVR Studio 4 als Prog Software probieren.
Zusätzlich ist Studio 4 auch gut zum Debuggen der Software.

hmmm?
03.08.2012, 10:25
Immernoch:
brennen...
benutze: mySmartUSB MK2 an COM10 mit Atmega8
USB-Treiber installiert, aktiv (V), Port: COM10
Prozessor:
Fehler: der eingestellte (Atmega stimmt nicht mit dem erkannten ()
Prozessor überein

Naja hab schon mehrere Programme probiert aber Myavr Progtool sollte am besten gehen.
MfG

trekko
06.08.2012, 17:29
Prozessor:
Fehler: der eingestellte (Atmega stimmt nicht mit dem erkannten ()
Prozessor überein

Hast du dich mal um die Taktgeschwindigkeit gekümmert? Siehe hier:



Ich vermute, das der Fehler in der falschen Takteinstellung liegt.
Die Programmierfrequenz darf übrigens nur maximal 25% der Controller Taktfrequenz betragen.

Also, am besten die Schreibgeschwindigkeit des Programmers deutlich runterdrehen, dann sollte es funktionieren.

Spitfire
06.08.2012, 19:13
Hallo hmmm !!!

Ich bin ebenfalls Anfänger und hatte am Anfang das gleiche Problem. Wenn ich mit `myAVR_ProgToll` den Atmega8 brennen wollte kam die gleiche Fehlermeldung. Der Fehler war auch bei mir. Mein Atmega passte nicht genau auf das Steckbrett. Ich musste die Anschlußpinns etwas zusammen bigen. DAbei hatte ich den Atmega auf den Kopf gestellt, und dann prompt verkehrt rum eingebaut. Also oben mit unten, bzw Pin1 war am platz von Pin 15, und Pin14 am Platz von Pin24. Mein Atmega hat oben eine kleine, halbrunde Einkerbung. Links davon, von oben nach unten, ist Pin1 bis 14 und rechts davon, von unten nach oben Pin15 bis 24.
Vieleicht konnte ich dir Helfen
Spitfire

Auch kleine Fehler können große Ursachen bewirken !! #-o

hmmm?
20.08.2012, 17:54
War ne Zeit lang weg und hab danach weiterprobiert.
Warum will das nicht gehen ^^

hmmm?
23.08.2012, 18:03
Guten Abend,
Ich habe eben den Atmgea8 nochmal gewechselt und nun funktionierte es.

http://www.abload.de/image.php?img=freudetcjwa.png

Leider war die Freude nur von dauer,
als ich zurück kam und flashen woltle ging es nicht mehr?

Flash-Bild:
http://www.abload.de/image.php?img=flashversuchxjua2.png


Programm :

$regfile = "M8def.dat"
$crystal = 4000000
$hwstack = 100
$swstack = 100
$framesize = 100

Ddrb = &B00000010
Portb.1 = 1

End


Fuses: 0x50 0xD9

wkrug
23.08.2012, 20:25
Hast Du an deinem ATMEGA 8 eine externe Taktquelle dran ? Also keinen Quarz, sondern einen Quarzoszillator oder ne andere Taktquelle die aktiv Takt abgibt?
Deine Fuses sind auf jeden Fall dafür eingestellt!
Guck doch noch mal in http://www.engbedded.com/fusecalc/ nach.

Das Verhalten schreit regelrecht nach verfusden Takt.

Wenn ich recht haben sollte, müsstest Du an den ATMEGA eine Taktquelle mit mindestens 1Mhz Takt mit TTL bzw. CMOS Pegel anschließen, dann sollte es der ATMEGA wieder tun.

Hubert.G
23.08.2012, 20:46
Wenn du diese Fuses hineingeschrieben hast dann ist es klar. Du brauchst einen externen Takt damit du wieder was machen kannst.

hmmm?
23.08.2012, 20:50
Naja ich nehms euch nicht böse das ihr nicht Alles gelesen habt,
hab n 4 Mhz Takt Quarzosszilator.
Also nicht verfust.
MfG und danke

wkrug
23.08.2012, 20:54
hab n 4 Mhz Takt Quarzosszilator.
Gut - Warum geht's dann anscheinend mit dem internen Takt ( Auslieferungszustand ) schon und mit dem externen Oszillator nicht mehr?

hmmm?
23.08.2012, 21:01
Also,
als ich die Fuses brennte brauchte es doch auch den externen Takt?
Naja auf deine Frage wkrug, ka bin leider noch Anfänger.
Was könnte sonst noch Ursache sein?
MfG

WL
23.08.2012, 21:17
Wie ist der Pin 1 des Oszillators beschaltet ?
Kann sein das er "Enabled" (z.B. auf VCC legen)!

Schau mal in das Datenblatt !

Hubert.G
24.08.2012, 08:51
Die Einstellung der Fuses macht der µC noch mit dem internen Takt. Anschließend wird ein Reset duchgeführt und mit dem ext. Takt gestartet.
Also kontrollieren ob der ext. Takt auch tatsächlich vorhanden ist.

hmmm?
24.08.2012, 20:06
Der Takt ist vorhanden,
hab sogar den Qosc gewechselt und trozdem ging's nicht. ;(
Hoffe auf weitere Hilfe.
MfG

Hubert.G
24.08.2012, 21:50
Wenn es mit internem Oszillator funktioniert und nach dem ändern der Fuses nicht mehr, dann ist was in deiner Hardware falsch.
Zeig vielleicht auch mal ein Foto von deinem Aufbau.

hmmm?
25.08.2012, 09:57
Guten Morgen, danke an die Hilfe.

Das Bild:

Der Rest findet ihr bei meinem 1 Post, dort steht eigentlich alles, ausserdem
ist es ziemlich sicher das der Aufbau so stimmt.

http://www.bilder-hochladen.net/files/jvr1-1-c4ca-jpg.html

MfG

Hubert.G
25.08.2012, 13:29
Ich kann kein Datenblatt für den Oszillator finden. Wie schon angesprochen gibt es Typen die auf Pin1 + benötigen.
Hast du einen Oszi um den Takt zu testen?
Um den Oszillator mal auszuschließen würde ich dir raten die Fuses mal auf Default zu lassen. Dann ladest du dir irgend ein Programm hinein, z.B. Led blink oder dergleichen. Wenn das mal funktioniert dann weisst du, Programmer OK, µC OK und dann kannst du dich um deinen Oszillator kümmern.
Wenn du einen Funktionsgenerator hast der etwa 1MHz kann, dann kannst du den mit TTL-Pegel man an Pin9 des µC anschließen und noch mal probieren.

hmmm?
25.08.2012, 14:30
Das liegt darand ass es dies nciht emrh gibt.
Aber ich weiss das bei diesem die Belegung eigentlich richtig ist.
Also Fuses ändern und ohne externen takt probieren?
MfG

Hubert.G
25.08.2012, 14:33
Ich würde die Fuses erst mal gar nicht ändern.
Was für Programme möchtest du denn mal laufen lassen. Mit dem 1MHz Takt kann man für den Anfang schon einiges machen.

WL
25.08.2012, 19:20
Aber ich weiss das bei diesem die Belegung eigentlich richtig ist.


eigentlich.............

Und was hindert Dich daran einfach mal den Pin 1 mit +5V zu verbinden ? :mad:
Kein Drähtchen mehr zur Hand ? :confused:

Entweder ist der Pin "NC" (es bleibt alles beim alten) oder er ist "Enable" und das flashen geht dann.

hmmm?
25.08.2012, 22:31
Ich hab es natürlich schon probiert.
Warum will es nid gehen.
èbrigens hab ich schon auf 4Mhz Extern Clock gefust.
MfG

Hubert.G
26.08.2012, 08:45
Wie hast du denn den Takt überprüft?
Investiere noch mal in einen neuen ATmega und ändere die Fuses nicht.

joar50
26.08.2012, 12:01
èbrigens hab ich schon auf 4Mhz Extern Clock gefust.
Wie hast du das geschafft? Laut deiner letzten Aussage hast du keinen Zugriff auf den ATMega.
Wenn ich das richtig verstehe, hast du keinen Zugriff bei internem Takt und auch nicht bei ext. Takt. Bleibt also nur noch der ext. Quarz
bzw. der R-C Generator. Ist evtl. nochmal einen Test wert.
Ansonsten HV - Programmierung oder Fuse-Doctor zum retten des µC.

hmmm?
26.08.2012, 15:40
Hä?!
Ich habe gepostet das ich die Fuses setzen konnte (Ist sogar ein Bild dabei in diesem Thread)
Nun wollte ich noch das Programm drauf flaschen, aber daies ging nicht.
Daraus ziehe ich das die Verbindung zum Quarzoszillator nicht besteht.
Wobei ich aber die richtige Pinbelegung habe.

Ich sehe jetzt die Option das Myavr was falsches ausgespuckt hat,
oder der Quarzoszillator kapput ist.

MfG

joar50
26.08.2012, 15:59
Wenn du keine Möglichkeit hast das Taktsignal zu überprüfen (Oszilloskop) und auch keine Möglichkeit der HV - Programmierung hast, bleibt dir nur der Vorschlag von Hubert.G. Neuen ATMega besorgen Fusebits nicht anrühren und erst mal mit internem Oszillator versuchen den Programmcode zu brennen.
Im übrigen kannst du das Taktsignal auch Testweise mal mit einem 555 erzeugen, wenn du hast. So könnte man einen Fehler beim Quarzoszillator feststellen, wenn die Fuses dafür auch gesetzt sind.

hmmm?
26.08.2012, 17:16
Ehm, kann es nicht eher sein dass der Quarzoszillator kapput ist.
Ein Oszilloskop besitze ich LEIDER nicht.
Was ist ein 555er?
Werde nochmal Hv Programmierung nach einer Anleitung probieren.
MfG

joar50
26.08.2012, 17:34
Natürlich kann auch der Quarzoszillator defekt sein.
Ein 555 ist ein weit verbreiteter Timer-Schaltkreis mit dem man einen Takt erzeugen kann (einfach erklärt).
Für HV - Programmierung brauchst du entsprechende Hardware (z.B. STK500, AVR-Dragon). Es gibt noch mehr, dies sind die bekanntesten.

hmmm?
26.08.2012, 17:57
Hab den Mysmart usb Mk2,
was sollte ich jetzt am besten machen?
Dachte an auf 1Mhz internen Takt Fusen und mir M8 und Quarzoszillator bestellen.
MfG

joar50
27.08.2012, 09:24
was sollte ich jetzt am besten machen?
Dachte an auf 1Mhz internen Takt Fusen und mir M8 und Quarzoszillator bestellen.
Da du keinen Zugriff mehr auf deinen ATMega hast (der verfuste) kannst du auch die Fuses nicht auf 1MHz internen Takt einstellen.
Ein neuer ATMega8 ist im Auslieferungszustand immer auf internen Takt (1MHz) eingestellt. Du brauchst also zum testen die Fuses nicht programmieren.
Spannung und Abblockkondensatoren an den ATMega, auf richtige ISP-Verbindungen achten und .hex-File brennen.
Sollte dein Quarzoszillator nicht defekt sein, bleibt dir nur die Möglichkeit der HV-Programmierung oder der AVR-Doctor (ext. Hardware) um die verfusten Chips zu retten.
Nochmal, es gibt 2 Möglichkeiten.
1. Neuen ATMega, Fuses nicht anfassen und testweise mit internen Takt arbeiten.
2. Quarzoszillator tauschen und testen. Funktioniert es dann war der Oszillator defekt, wenn nicht ist dein ATMega total verfust.
Wie sind deine Hex-Werte für L-Fuses und H-Fuses die du gebrannt hast (das eine Mal wo es ging).

Rone
27.08.2012, 09:58
Hab den Mysmart usb Mk2

Der hat doch eine Rettungsfunktion implementiert. Schau mal in die Anleitung.

MfG
Rone

joar50
27.08.2012, 10:12
@Rone:
Habe gerade mal auf der MyAVR-Website nachgesehen.
Wenn ich nichts überlesen habe, kann erst der MySmart USB MK3 eine HV-Programmierung. Beim MySmart USB MK2 konnte ich nichts finden.
Sollte ich etwas überlesen haben, wäre ich über eine Info dankbar. Da ich nicht mit diesen Programmern arbeite ist es immer interessant etwas Neues darüber zu erfahren.

Rone
27.08.2012, 11:01
Hallo!

HV programmmieren kann er nicht. Aber es gibt da ein Tool (mySmartUSB Terminal oder so ähnlich ) mit dem kann der Programmer ein Rescue-Clock ausgeben.(anstelle eines externen Taktes )
Hab das aber noch nicht gebraucht.

MfG
Rone

joar50
27.08.2012, 11:59
@Rone:
Danke für die Info. hast du evtl. einen Link. Bei MyAVR hält man sich sehr bedeckt, oder ich habe es nicht gefunden.
Einzig in der Beschreibung zum Download von "MySmartUSB MK2 Terminal" findet sich folgender Satz.

Diese Version ermöglicht das Aktivieren des RESCUE-Mode des mySmartUSB
Weder in der Produktbeschreibung noch in der Techn.Beschreibung zum MySmartUSB MK2 findet sich ein Wort zum RESCUE-Mode.
Ein Manual zum MySmartUSB MK2 Terminal scheint es auch nicht zu geben. Steht dann wahrscheinlich alles in der Hilfe.
Wenn du genauere Informationen hast, bist du im Moment der einzige der "hmmm?" evtl. weiter helfen kann.
Somit könnte sich dann der Kauf eines neuen Quarzoszillators und evtl. auch neuen ATMega (wenn der alte nicht total verfust) erübrigen.

Rone
28.08.2012, 02:39
Hallo!

Hier mal der Link:http://shop.myavr.de/index.php?ws=download_file.ws.php&dlid=80&filename=treiber/tool_mysmartusb-terminal.zip

Und hier noch ein Screenshot:23122

Hoffe das hilft ein wenig weiter.

MfG
Rone

joar50
28.08.2012, 17:13
Hallo,
mit dem Screenshot und dem Link zur Software sollte "hmmm?" ja schon ein Stück weiter kommen.
Verstehe nur nicht, dass MyAVR so ein "Geheimnis" daraus macht. Ein paar Worte in der Doku zum Programmer wären ja nicht schlecht.
Mal sehen , wann sich "hmmm?" meldet und uns über den Stand der Dinge informiert.