AT89C51RD2 durch AT89S52 ersetzen

OP #3093182
Lesenswert?

Hallo zusammen,

hat jemand eine Ahnung ob ich einen AT89C51RD2 durch einen AT89S52 
ersetzen kann? Sollte ja normalerweise problemlos gehen, da sie 
pinkompatibel sind. Habe das ganze nämlich versucht, aber es will 
einfach nicht funktionieren. Ich kann mein Programm auf den Controller 
laden, aber mein Gerät zeigt mir Mist an...Von der aüßeren Beschaltung 
dürfte sich ja auch nichts ändern!?

Grüße Janis06
Gast #3093185
Lesenswert?

Janis H. schrieb:
> Hallo zusammen,
>
> hat jemand eine Ahnung ob ich einen AT89C51RD2 durch einen AT89S52
> ersetzen kann? Sollte ja normalerweise problemlos gehen, da sie
> pinkompatibel sind. Habe das ganze nämlich versucht, aber es will
> einfach nicht funktionieren. Ich kann mein Programm auf den Controller
> laden, aber mein Gerät zeigt mir Mist an...Von der aüßeren Beschaltung
> dürfte sich ja auch nichts ändern!?
>
> Grüße Janis06

Sind die auch Binärkompatibel? Wohl wahscheinlich nicht.
Gast #3093216
Lesenswert?

Sicher kann man ein besseres Teil nehmen um einen miderwertigen Typ zu 
erstezen, aber anderherum wird es wohl nicht gehen.

Der RD2 hat z.B. 64kByte Flash, der S52 aber nur 8kByte.
Der RD2 hat internes XRam, der S52 gar keins und so weiter.


RD2:
64K Bytes On-chip Flash Program/Data Memory
– Byte and Page (128 Bytes) Erase and Write
– 100k Write Cycles
•
On-chip 1792 bytes Expanded RAM (XRAM)
– Software Selectable Size (0, 256, 512, 768, 1024,
1792 Bytes)
– 768 Bytes Selected at Reset for T89C51RD2 Compatib
ility


ich glaube - das kannst Du vergessen.

gruß Thilo
OP #3093232
Lesenswert?

@THaala: Kommt darauf an was man damit machen möchte denke ich, auch 
wenn ich ein kleines Assembler Programm mit 5 Zeilen schreibe 
funktioniert es nicht. Also sollte es an den 8KByte Flash nicht liegen.


> Dann hab ich das falsch verstanden. Hatte gedacht du versuchst die
> gleichte Datei in beide zu laden. Nicht für ungut :)

Nein soweit habe ich dann ausnahmsweise doch gedacht ;)
#3094123
Lesenswert?

... wenn der "kleinste gemeinsame" Nenner der beiden Controller 
verwendet wird, sollte der Code der in einem S52 läuft auch in einem RD2 
laufen.

Umgekehrt hängt es davon ab, welche interne Zusatzhardware verwendet 
wird (oder auch nicht)...

Der S52 besitzt in der inneren Hardware prinzipiell nur die Funktionen 
eines 80C52.

Wenn also Code geschrieben wurde, der auch auf einem S52 laufen müßte, 
wird wohl der Controller selbst falsch geflasht worden sein.

Der S52 kann definitiv nicht über Atmel's Flip programmiert werden !!!!!

Ich kann mich täuschen, aber meines Wissens kann an den S52 maximal ein 
24MHz Quarz angeschaltet werden (und nicht ein 33 MHz Quarz)... 
allerdings :-) hast du ja nur einen 12er verwendet.

Zum Flashen:

Ich hatte versucht, mit einem ISP-Programmer der für die AVR-Serie 
gedacht ist, einen S52er zu flashen (es stand im Handbüchchen dass das 
gehen sollte) ... Ging allerdings nicht, weil die scheinbar in der 
Firmware des ISP-Sticks die Resetleitung falsch programmiert hatten 
(weil ein Reset bei der AVR Familie mit einer 0 ausgelöst wird, bei 
einem S52 aber mit einer 1).

Das Problem war also schlicht das Flashen eines S52 Controllers.

Es ist bei einem S52 zwingend ein ISP-Programmer oder ein 
Parallelprogrammer notwendig, um den Code in den Controller zu bekommen.

Einen Bootloader wie der RD2 besitzt der S52 nicht .....

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