Darf nur den selben Mikrocontroller verwenden?

OP #4254027
Lesenswert?

Hallo,

ich benutze einen Atmega 8. Ich habe ein Programm dafür geschrieben, und 
es funktioniert auch einwandfrei.

Jetzt kam ich auf die (offensichtlich) verrückte Idee, einen anderen 
Mikrocontroller (gleiches Modell) zu verwenden. Wenn ich diesen jetzt in 
den Sockel setze und mit dem Atmel Studio DAS GLEICHE Programm 
draufspielen will, kommt folgende Fehlermeldung:

"Unable to enter programming mode. The read device ID does not match the 
selected device or any other supported devices.

Please verify device selection, interface settings, target power and 
connections to the target device.

Unexpected signature 0x00000000 (expected 0x001e9307).

Unable to enter programming mode. Verify device selection, interface 
settings, target power and connections to the target device."

Kann mir bitte jemand erklären was das soll? Sobald ich den alten 
Mikrocontroller wieder einstecke, funktioniert alles bestens. Ich 
verwende einen externen Oszillator, aber wenn ich die Fusebits setzen 
möchte, bekomme ich die gleiche Fehlermeldung. Kann mir Jemand helfen?

Ich habe übrigens beide Mikrocontroller verglichen. Es sind ABSOLUT die 
selben "1426, Atmega8-16PU, H8A237-5, 354VAN, 6-P1426 e3". Die Schrift 
auf der Ober- und Unterseite ist absolut die selbe.

Habe echt keine Idee was das sein könnte, habe schon das Internet 
abgesucht und nichts gefunden. Ich drehe gleich durch...
Gast #4254048
Lesenswert?

Guest schrieb:
> Nicht wenn er zu schnell lesen will.
> Erkennt denn hier keiner mehr Standardfehler?

Dann stellt er zwischen den beiden µCs immer den ISP-Takt um? Mit dem 
anderen gehts doch!

Es sei denn, der zweite µC ist nicht neu, sondern schonmal anders 
programmiert worden. Und dabei wurde er verfust oder sonst irgendwie 
versaut.
Ich ging aber davon aus, daß der zweite Controller neu ist.
Gast #4254057
Lesenswert?

?!? schrieb:
> Dann stellt er zwischen den beiden µCs immer den ISP-Takt um? Mit dem
> anderen gehts doch!

Nein... aber wenn er neu ist... dann is CKDIV8 und 1 Mhz aktiv. Wenn er 
sein "alten" Mega8 auf 8Mhz ohne CKDIV8 hat, und danach seine ISP 
Geschwindigkeit einstellte, ist diese für den neuen zu schnell bevor 
nicht die Fuses gesetzt wurden.
#4254059
Lesenswert?

?!? schrieb:
> Guest schrieb:
>> Nicht wenn er zu schnell lesen will.
>> Erkennt denn hier keiner mehr Standardfehler?
>
> Dann stellt er zwischen den beiden µCs immer den ISP-Takt um? Mit dem
> anderen gehts doch!

Deswegen kann es immer noch ein zu hoher ISP Takt sein.

Sein originaler Mega8 läuft offenbar mit einer anderen Taktfrequenz als 
1Mhz. Sonst hätte er keinen externen Oszillator.

Dem neuen ist aber der Oszillator piepegal. Der läuft erst mal auf 1Mhz 
bis er entsprechend umgefused wird.

-> die ISP Frequenz, die beim alten funktioniert, muss beim neuen noch 
lange nicht funktionieren.
OP #4254061
Lesenswert?

-Der externe Oszillator hat 4MHz
-Programmer ist der AVR MK2
-Der 1. Mikrocontroller (der funktioniert) wurde bereits von mir 
programmiert und mit diesem habe ich schon lange gearbeitet. Der 2. 
Mikrocontroller, der nicht funktioniert ist nagelneu aus der Verpackung.
-ISP Taktfrequenz werde ich gleich mal schauen...

danke für die schnellen Antworten :)
#4254066
Lesenswert?

René W. schrieb:
> -Der externe Oszillator hat 4MHz
Aha


> -Der 1. Mikrocontroller (der funktioniert) wurde bereits von mir
> programmiert und mit diesem habe ich schon lange gearbeitet. Der 2.
> Mikrocontroller, der nicht funktioniert ist nagelneu aus der Verpackung.

Und wurde dieser dann auf externen Oszillator umgefused? Sonst sind die 
4 MHz doch völlig egal. Entweder nagelneu oder bereits gefused.
Gast #4254075
Lesenswert?

René W. schrieb:
> Der 2. Mikrocontroller, der nicht funktioniert ist nagelneu
> aus der Verpackung.

Und läuft mit intern 8Mhz + CLKDIV8 macht 1Mhz. Der ISP-Takt darf nicht 
schneller als CLK/8 also 125kHz sein.
Der einzige Fehler der genauso oft auftaucht ist PortC bei der 
Mage32-Familie (JTAGen)
OP #4254076
Lesenswert?

Ok, es war der ISP Takt! Der neue Mikrocontroller hatte noch nicht die 
entsprechenden Fuses gesetzt, um mit einem externen Oszillator zu 
arbeiten. Ich habe den Takt des ISP auf 250 kHz gesetzt, dann die Fuses 
entsprechend für den externen Oszillator gesetzt und danach wieder den 
ISP Takt auf 1 MHz gesetzt. Kann jetzt endlich wieder weitermachen :)

Danke euch, das macht echt Spaß, wenn die Community hier so motiviert 
ist und einem schnell hilft. Danke euch :)

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren