Forum: Mikrocontroller und Digitale Elektronik Unterschiede 825x <-> Atmel ATMega8


von Maxim (Gast)


Lesenswert?

Wie groß ist der Unterschied zwischen diesen beiden uC? Ich meine jetzt 
nicht die Leistung / Daten, sondern die Assembler-Befehle.

In der Schule lerne ich gerade den i825x kennen und zuhause habe ich 
einen ATMega8. Kommt man da nicht durcheinander?

von A.K. (Gast)


Lesenswert?

Das "i" vorne klingt zwar danach, aber 825x in diesem Zusammenhang nicht 
wirklich nach Intel, denn 82xx waren bei da traditionell die 
Perphieriebausteine, nicht die Prozessoren oder Controller. Du meinst 
wahrscheinlich die 8051 Familie.

Ob man durcheinander kommt, muss jeder selbst rausfinden. Mir ging es 
mit Programmierung auf allerlei verschiedenen Prozessoren 
unterschiedlichsten Kalibers eher andersrum - es wurde einfacher. 
Jedenfalls solange sie nicht völlig aus der Art schlagen (MaxQ2000 wär 
so eine schräge Nummer).

Vergleich einzelner Befehle ergibt anfangs keinen Sinn. Insbesondere 
wenn die Grundarchitektur abweicht. 8051 ist einigermassen 
Akkumulator/Speicher-orientiert, AVR konsequent Register-orientiert. Da 
gilt es, diese Grundarchitektur zu verstehen und die jeweiligen 
Programmiertechniken. Die Befehle sind überwiegend eine Folge davon und 
dementsprechend verschieden.

Vergleichen lasst sich Möglichkeiten und Problemfelder. 8051 entstand zu 
einer Zeit, in der die meisten Daten kein Vorzeichen hatten, und Intel 
liess deshalb da einiges weg. Dementsprechend schwer tut man sich beim 
Vergleich von Daten mit Vorzeichen. AVR hat dieses Problem nicht, dafür 
aber welche mit atomaren I/O-Operationen. Dies nur als Beispiel.

von Peter D. (peda)


Lesenswert?

i825x sagt mir nichts.

Wenn Du aber 8051/52 meinst, die sind ziemlich ähnlich.
Beide haben 32 Register.

Die größten Schwierigkeiten hatte ich mit den MOV-Befehlen.
Beim 8051 gibts nur MOV, MOVC und MOVX.
Beim AVR muß man immer nach Quelle und Ziel unterschiedliche Befehle 
nehmen (MOV, IN, OUT, LDI, LDS, LD, LDD, ST, STS, STD, BLD, BST, LPM, 
SPM usw.).

Der AVR hat keine Kombibefehle (DJNZ, CJNE, JB, JNB, JBC, XCH, XCHD, 
MOVC A,@A+PC), muß man dann aus 2 oder mehr zusammenbasteln.


Peter

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.