Forum: Mikrocontroller und Digitale Elektronik Freies Keil (8051)??


von Keiler (Gast)


Lesenswert?

Hi,

ich habe hier vor einer Weile etwas von einer freien Keil-Version 
gelesen, die es von irgend einem Chip Hersteller "gesponsort" gibt.
Leider konnte ich dazu nix ergoogeln, höchstwahrscheinlich fällt mir nur 
das passende Suchwort nicht ein.

Aus nostalgischen Gründen möchte ich mich nochmal mit dieser Familie 
beschäftigen.
Mein Keller brachte mehrere AT89C51AC3 + ..ED2 und selbtgebaute 
minimal-Boards hervor, bin aber auch bereit mir ein Dev-Board eines 
anderen Herstellers zuzulegen, wenn es dazu Keil gibt.

Mit der "mcu8051ide" und sdcc habe ich nen kompletten Tag verbracht, ein 
Projekt aufzusetzen und die LED zum Blinken zu bringen. Danach eine 
ältere Demo-Version von Keil probiert, das ging immernoch aus dem FF - 
nach gut 10 Jahren :)

von W.S. (Gast)


Lesenswert?

Leg dir ein Eval-Board mit einem PSOC3 zu. Da ist der 8051-Keil dabei.

W.S.

von Gretel (Gast)


Lesenswert?

Silabs hat da wohl auch was.

von Thomas Z. (usbman)


Lesenswert?

Nun du könntest bei Silabs vorbeischauen dort gibt's denn Keil für deren 
Chips. Du bekommst dann natürlich nur die Header für die Silabs und nur 
die Silabs Chips im Projekt vorgeschlagen, niemand hindert dich aber 
daran andere Header einzubinden.

Nichts desto trotz gilt das Nutzungsrecht aber trotzdem nur für Silabs 
MCUs. Du darfst das deshalb nicht für Amel MCUs verwenden. Da kannst du 
auch gleich einen Keygen verwenden das kommt aufs gleiche raus.

Was ist den das Problem mit dem SDCC? Der ist komplett es fehlt nur eine 
IDE.

von Alex P. (ra_p)


Lesenswert?

> Was ist den das Problem mit dem SDCC? Der ist komplett es fehlt nur eine
> IDE.

Der Keil compiler ist grausam, aber SDCC ist noch schliemmer :( Nur der 
IAR ist besser, aber manchmals ist es zu klug und macht was doofes und 
manchmals ist es einfach zu doof, es gibt Strukturen die bringen es 
durcheinander, genau mit Strukturen hat echte Probleme.
Ich würde es in assembly programmieren, leider nicht "MISRA" 
compliant..... wer hat sich so was ausgedacht...

von Thomas Z. (usbman)


Lesenswert?

Alex P. schrieb:
> Der Keil compiler ist grausam, aber SDCC ist noch schliemmer :( Nur der
> IAR ist besser,

Das sehe ich anders, ich finde IAR unmöglich, was aber eher an deren Lib 
Konzept bzw kaputter IDE liegt der Compiler selbst ist ganz ok. So als 
Hinweis probier mal memcpy beim IAR

von Keiler (Gast)


Lesenswert?

Prinzipiell ist am SDCC nix falsch, nur fehlt mir die AllInOne IDE ;)

Ich bin so lange schon aus dem Thema raus und möchte, wie damals 
schonmal, einen Mix aus C und Assembler durchprobieren und mich wieder 
mir der MCU an sich befassen.
Wir haben das damals inkl. Board so in der Berufsschule vorgesetzt 
bekommen und so will ich gern nochmal anfangen.

Einzelne Compiler+Tools zu nutzen bin ich von AVRs in den letzten Jahren 
gewohnt, aber mit denen werde ich nicht warm. Hab da auch noch nie mehr 
als Blinky in Assembler gemacht, immer nur C.

Ich werde mir morgen mal die PSOC und die Silabs Teile ansehen, heute 
keienen Kopf mehr dafür.

Vielen Dank :)

von Keiler (Gast)


Lesenswert?

Achja,

auf Keygen-Virus-Mist wollte ich verzichten, wenn man die IDE für lau 
bekommt, beim Kauf eines Boards...
Ziemlich sinnlos alles andere....

von TomA (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Keiler,

ich schreibe mir gerade so etwas unter Linux. Der Editor und das 
compilieren / assemblieren funktionieren schon recht gut. Es fehlt noch 
der ganze Simulations- Debugger- und Downloadkram und natürlich die 
zugehörige Oberfläche.

Soll so ähnlich wie Keil werden, aber mit Syntaxhighlite, Klammern 
finden und so neumodernen Kram. In ein paar Wochen gibt es vermutlich 
etwas zum ausprobieren.

Gruss. Tom

von Lothar (Gast)


Lesenswert?

Visual Studio Code geht mit SDCC. Es werden zwar für einige korrekte 
SDCC Konstrukte Warnungen angezeigt.

Silabs Eclipse mit Keil hat aber ähnliche Probleme z.B. wird Warnung für 
Keil Interrupts angezeigt.

von Philipp Klaus K. (pkk)


Lesenswert?

Code::Blocks hat auch Unterstützung für SDCC.
Für MCS-51 wohl sogar mit Projektwizard.

von Gunnar F. (gufi36)


Lesenswert?

ich war vor einiger Zeit in derselben Situation wie der TO , habe mich 
auch mit MCU8051 befasst. Das funktioniert, ist aber weit entfernt von 
Keil.
Die ganz normale uVision IDE ist beschränkt auf 2kB Objektfile, aber bis 
dahin uneingeschränkt.
Besonders genial ist der Simulator, der alle SFR ( des AT89C51ED2) 
simulieren kann.
Das hat mir viel geholfen, denn ich kenne keinen HW-Debugger für diese 
MCU.

von Georg (Gast)


Lesenswert?

TomA schrieb:
> Soll so ähnlich wie Keil werden, aber mit Syntaxhighlite, Klammern
> finden und so neumodernen Kram

Lobenswert, aber was motiviert dich zu so einem Mammutprojekt? Ich 
glaube nicht dass man heute noch mit Software für 8051 reich werden 
kann.

Keine Kritik, einfach Interesse.

Georg

von MaWin (Gast)


Lesenswert?

Georg schrieb:
> Lobenswert, aber was motiviert dich zu so einem Mammutprojekt? Ich
> glaube nicht dass man heute noch mit Software für 8051 reich werden
> kann.

Während AVR auf dem absteigenden Ast ist, gibt es viele chinesische 
Controller auf 8051 Basis mit teilweise entscheidenden Features (LED 
Multiplextreiber, niedrige bzw. hohe Betriebsspannung, LCD Treibern).

Reich wird er wohl nicht mehr, das sind Kein und IAR geworden, aber 
vielleicht macht er es besser.

(und, wenn er SDCC unterstützt, kann er auch PIC und Puolop).

Sicher, ARM Cores sind weit interessanter, und gerade dort wäre 
herstellerübergreifende Peripherieunterstützung wichtig, aber das ist 
dann doch zu komplex für einen Einzelkämpfer, da scheitern ja schon 
Firmen wie ST dran selbst wenn sie herstellerzentriert arbeiten.

von Lothar (Gast)


Lesenswert?

Gunnar F. schrieb:
> ich kenne keinen HW-Debugger für diese MCU

Silabs 8051 Boards haben J-Link mini Debugger drauf. Auch die "normalen" 
J-Link z.B. EDU unterstützen viele Silabs 8051

https://www.segger.com/products/debug-probes/j-link/technology/cpus-and-devices/silabs-efm8-c8051-support/

von TomA (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Georg,

ich habe gerne, unter Windows, mit Keil gearbeitet und mir dabei einen 
ansehnlichen Park an Schaltungen mit MCS51 für die Ausbildung und 
Experimente geschaffen. Nach dem Umstieg auf Linux vermisste ich Keil 
deutlich. Es gibt auch bei Linux gute Ansätze, wie die MCU8051IDE. Aber 
für meine Arbeit ist sie als IDE nicht wirklich brauchbar. Anstatt den 
Simulator auszubauen, verliert sich der Autor in der Simulation 
irgendwelcher Hardware.

Ein Lichtblick dagegen ist das SDCC-Packet, damit stehen brauchbare 
Werkzeuge für die grundlegende Arbeit mit den Bausteinen, zur Verfügung.

Ich hatte schon begonnen das Projekt als Plugin für Geany zu schreiben. 
Aber Geany machte mir da das Leben schwer. Zusätzlich zu den Hürden der 
Programmiersprache (C++) und Funktionsbibliothek (GTK) kamen dann auch 
noch die Hürden von Geany. Von daher steht mir aber noch der 
funktionierende 8051-Simulator, den ich programmierte zur Verfügung.

Also habe ich das Projekt nun neu aufgesetzt mit wxWidgets und C++ um 
die bestehenden Teile zu nutzen. Hatte vor vielen Jahren, unter DOS, 
schon mal einen 8051 Simulator geschrieben. Der ist hier im Forum auch 
veröffentlicht, aber inzwischen "etwas" angestaubt.

Aber zu deiner Frage. Mir ist derzeit jede Arbeit weggebrochen, so habe 
ich Zeit. Die könnte ich dazu nehmen mit dem Schicksal zu hadern, oder 
etwas vernünftiges damit anzustellen. Habe mich für Zweiteres 
entschieden.

Hätte noch vieles über das Projekt zu schreiben, aber der Text ist jetzt 
schon zu lang.

Gruss Tom

von Peter D. (peda)


Lesenswert?

Probier doch mal den Wickenhäuser, der ist Freeware:

https://www.batronix.com/versand/software/uC51/c-compiler.html

: Bearbeitet durch User
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.