Forum: Mikrocontroller und Digitale Elektronik Compiler für TUSB6250 --> Tasking Keil SDCC?


von Paul (Gast)


Lesenswert?

Guten Abend!
Auf der Suche nach einem Compiler für eben erwähnten USB/ATA Controller
von TI sind mir die 3 erwähnten Kandidaten in die Hände gefallen. Der
offensichtliche Nachteil der Compiler von Tasking und Keil ist: teuer.
Doch: es gibt Trial/Evaluation Versionen.

http://www.keil.com/dd/chip/3751.htm
http://www.tasking.com/8051/derivatives/

Leider schweigen sich beide Seiten weitgehend darüber aus, was an der
Testversion fehlt/eingeschränkt ist/sie eben zu einer Testversion macht.

--> Wenn dazu jemand genaueres weiß, währe ich für eine kurze Antwort
sehr verbunden.

Der eindeutige, und vermutlich alle Bedenken bezüglich Testversion oder
nicht überragende Vorteil der beiden Kommerziellen Compiler ist: der
TUSB86250 wird direkt unterstützt, während der SDCC ein Compiler für 
eine
Hand voll 8051/2 Derivate, aber eben nicht den TUSB6250 ist.

http://sdcc.sourceforge.net/  <-- Hier wird allerdings direkt in der
ersten Zeile nahe gelegt, das der SDCC leicht auf andere 8052 Derivate
anzupassen ist. Mir stellt sich nun die Frage, ob das rein zufällig
schon mal jemand für den TUSB6250 oder einen anderen uC gemacht hat, 
oder
was dabei alles zu beachten ist. Schön wäre natürlich, wenn es
ausreicht, ein Headerfile wie dieses:
http://www.keil.com/dd/docs/c51/reg52.h  einzubinden.

Mit morgendlichem Gruß,
Paul

von Εrnst B. (ernst)


Lesenswert?

Einfach mal ausprobieren.

Ich hab damals mit dem SDCC Code für einen AN2131 geschrieben, der hat 
nen '52er Kern, ist aber sonst recht "anders" (IO-Ports mit 
Tristate-Register, Programausführung aus dem RAM, XMEM und CODE 
verweisen auf dasselbe Segment, usw)

Hauptproblem war eigentlich nur, ein entsprechendes device header File 
zu bekommen. Rest ließ sich mit einem Rattenschwanz von 
Kommandozeilenoptionen am sdcc erschlagen...

Das Beispielheader-file, dass du oben verlinkt hast, wirst du so nicht 
verwenden können, die Syntax weicht da etwas ab. (Ist mit nem kleinen 
Perl-Script oder RegEx-Search&replace gleich geschehen)

z.B.
statt
sfr P0    = 0x80;

heißt es
sfr at 0x80 P0;


HTH,
/Ernst

von Thomas (Gast)


Lesenswert?

für den Keil steht das hier.
http://www.keil.com/demo/limits.asp

Mit den 2k wirst du nicht sehr weit kommen.

Beim SDCC ist in deinem Fall das Problem die Code Grösse. Je nach 
Komplexität deiner Anwendung wirst du Probleme bekommen den Code später
im EEprom unterzubringen. Der SDCC optimiert nicht so gut.
Versuch es mal mit uC51 von Wickenhäuser. Die Eval kann 8k und sollte
wohl reichen.

Thomas

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.