Forum: Mikrocontroller und Digitale Elektronik Unstieg von AT90S8535 auf Atmega 16L8 DIP


von Matthias (Gast)


Lesenswert?

Nun hat es mich auch erwischt. :-(
Reichelt bietet den AT90S8535 nicht mehr an.

Also muss ich umsteigen, vielleicht auf den
Atmega 16L8 DIP.

Kann mir jemand kurz sagen, was ich da
alles beachten muss?

Die Datenblätter sind mit 350 Seiten ziemlich
mächtig. Muss ich mich wirklich erst durch
den Umstieg auf den mega8535 und dann den
Umstieg auf den mega16 fräsen?

Muss ich das Layout der Platine anpassen?
Bisher hatte ich den 10-pol Connector
für das ISP-Teil am Parallelport.

Geht das noch so, oder sollte ich auf JTAG
gehen und umverdrahten, also am Layout
ändern?

Ist der Atmega 16L8 DIP eine stromsparende
Variante?

Sorry für die vielen Fragen. Natürlich kann
ich mir selbst alles rausziehen. Aber das
dauert . . .  Vielleicht könnt Ihr mir ein
wenig auf die Sprünge helfen. Neben dem
Beruf habe ich nur wenig Zeit.

Es wird noch mehr Leute geben, die umsteigen
müssen . . .

von Tobi (Gast)


Lesenswert?

da ich dein programm nicht kenne kann ich da nichts zu etwaigen
änderungen sagen, wobei die chance ist das du wenn du asm benzutzt eher
was ändern musst als bei einer hochsprache. auf jtag musst du
keinesfalls umsteigen, die haben alle immer noch den isp anschluss
das layout der platine musst du eher annpassen weil die pinbelegung
abweichen könnte.

die erste seite vom m16 dateblatt solltest du trotzdem mal durchgelesen
haben :)

von Wolle (Gast)


Lesenswert?

Der Umstieg auf den mega8535 fällt wohl leichter.
Identische Pin-Belegung und per Fuse-Bit(s) auf S8535 umschaltbar.

von Ingo Henze (Gast)


Lesenswert?

Warum nicht zum ATmega8535 wechseln?
Der Name impliziert zumindest einen hohen Verwandschaftsgrad, was
eventuell einen fast schmerzfreien Umstieg ermöglichen könnte.
Dazu gib es auch eine Appnote bei Atmel:
AVR086: Replacing AT90S8535 by ATmega8535
http://www.atmel.com/dyn/resources/prod_documents/doc2520.pdf

Gruß
Ingo

von Matthias (Gast)


Lesenswert?

@Tobi:
es ist alles in Assembler geschrieben.
Also werd ich wohl an der Initialisierung
der Register was machen müssen.

Und wohl an der Interrupttabelle, weil
die beim Mega16 wohl breiter ist.

Und das Includefile muss ich ändern auf
den mega16.

Das JTAG würde ich natürlich schon gerne
mal nützen wollen. Zum Debuggen ist das
angenehmer.

Kann ich den ISP dann trotzdem lassen?
Brauche ich den dann überhaupt noch?
Ich müsste doch auch über Jtag den
Baustein programmieren können.

Da müsste ich doch nur ein Kabel bauen.
Dummerweise habe ich es nicht bei Olimex
bestellt, aber so ein Hexenwerk kann es
ja nicht sein . . .

Meinst Du, daß die Pinbelegung anders ist.
Ich habe das mal ausgedruckt und werde
schauen. Danke für den Hinweis.

Wenn es doch nur ein Blatt von Atmel zum
direkten Umstieg auf den mega16 gäbe . . .
Die Zwischenschritte brauche ich doch nicht,
die verwirren doch nur.

@Wolle:
wenn ich muss steige ich lieber gleich auf
die zukunftsträchtigeren Jtag-Teile um.
TI hat ja auch Jtag.

Ich müsste doch das Jtag-Kabel für den
MSP verwenden können. Oder?

@Ingo:
das habe ich mir gerade ausgedruckt und werde
es studieren.

von Ingo Henze (Gast)


Lesenswert?

Eventuell kär dann noch dieses hier hilfreich:
"AVR088: Migrating between ATmega8535 and ATmega16"
http://www.atmel.com/dyn/resources/prod_documents/doc2537.pdf

Vielleicht kommt man ja mit diesen Dokumenten zusammen vom 90S8535 zum
Mega16, wenn auch über der nur virtuellen Zwischenschritt Mega8535.

Naja, zumindest sollte man mit den Dokumenten einen Eindruck gewinnen
könnne, wie aufwendig das wird und was zu beachten ist.

Ich habe sowas mal für Mega8 -> Mega88 -> Mega48 gemacht.

Gruß
Ingo

von Matthias (Gast)


Lesenswert?

@Ingo:
Danke für den Hinweis. Beides habe ich
ausgedruckt und schau es an.
Ich möchte nicht in Etappen upgraden
sondern in einem Schritt. Daher wäre halt
eine direkte Anleitung besser/schneller
gewesen.

Nun muss ich mich wohl leider durch
Pin-Listen und die ganzen Register
kämpfen. Lästig . . .   351 Seiten . . .
wer soll das alles im Kopf behalten.

von Ingo Henze (Gast)


Lesenswert?

Deshalb meinte ich ja auch "virtueller Zwischenschritt".

In meinem Beispiel hab ich mir zunächst aus dem Dokument "AVR094:
Replacing ATmega8 by ATmega88" die Sachen rausgesucht, die hier den
größeren Schritt vom Mega8 nach Mega88 betreffen.
Dann habe ich, weil ich aber den Mega48 verwenden will, mit "AVR095:
Migrating between ATmega48, ATmega88 and ATmega168" die Besonderheiten
des 48ers herausgesucht. Insgesamt ging das vermutlich schneller, als
nur mit den Datenblättern selber als vergleichen und anpassen zu
wollen.

Kann allerdings beim Schritt vom 90S8535 zum Mega16 auch anders sein,
damit hab ich mich noch nicht beschäftigt.

Gruß
Ingo

von Matthias (Gast)


Lesenswert?

ich habe nun die Pinbelegungen verglichen.
Sind beide genau gleich.

Am Uart muss ich was beachten. Es gibt jetzt
wohl ein FIFO.
Ich habe nur noch nicht genau begriffen was
ich jetzt konkret zu beachten/ändern habe.
Ich habe bisher gepollt und auch mit dem
Interrupt der ser. SS gearbeitet.
Vielleicht kann hier jemand was dazu sagen.

Ein paar Bitnamen und Registernamen sind anders.

Im PWM-Mode ist einiges anders. PWM nutze ich
aber bisher nicht.

Clear Timer Counter on Compare match. Da muss
ich mal schauen.

Ärgerlich klingt die Sache mit dem EEPROM.
Bisher lag die Wartezeit bei 2.5ms und nun
sollen es 8.4ms sein. Ich kann da keinen
Fortschritt erkennen. Da warte ich ja die
3-fache Zeit bei dem neueren Controller . . .
Improvement nenne ich das nicht gerade.

Wenn ich den JTAG nicht von den Pins her
benutzen kann sollte ich ihn wohl abschalten.
Also müsste ich die eine Fuse verstellen
und mir dazu wohl einen neuen Ponyprog holen.
Oder was meint Ihr dazu?

Oszillators und Start-up-time ist ein anderes
Kapitel. Da braucht man ja bald einen Kurs,
bis man das Teil korrekt programmiert bekommt.

Ich bin gespannt, ob dann der Nachfolger 1500
Seiten users manual bekommt . . .

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
Noch kein Account? Hier anmelden.