Hallo! Habe gerade meine ersten erfolgreichen ARM(7) Schritte hinter mich gebracht und versuche nun den "OSE Epsilon" Kernel + GNU auf einem ARM7 zum laufen zu bekommen. Leider gibts zu der Eval-Version nicht gerade üppig Doku und der Controller, den ich verwende ist in keinem der mitgelieferten BSPs vorhanden (TI TMS470) Gibt es hier vielleicht jemanden, der schon Erfahrungen mit OSE Epsilon hat (vielleicht auch auf anderem Controller), der mir mal ein paar grundsätzliche Fragen beantworten könnte?
Warum muss es denn unbedingt OSE Epsilon sein? Es gibt doch eine ganze Reihe von frei verfügbaren Betriebssystemen für ARM7-Prozessoren (zwar auch nicht unbedingt für den TMS470) mit guter Dokumentation (z.B. eCos). Ciao, Fabian
Schau mal hier: http://www.tnkernel.com/ TMS470 ist zwar nicht direkt als Beispiel dabei, sollte sich aber mit recht wenig Aufwand anpassen lassen.
OSE Epsilon solls sein, weil ich gerne ein anderes Projekt, was auf Epsilon läuft (ganz anderer Controller) auf ARM portieren würde. Für weitere RTOS Tipps bin ich aber jederzeit empfänglich. :-) Ebenso für TMS470 Resourcen. Die Teile gefallen mir unheimlich gut, nur findet man leider kaum etwas darüber im Netz. Kein Vergleich mit LPC oder Atmel. Dabei sind das richtig ausgereifte ARMs, die nicht so ellenlange Errata-Sheets wie z.B. die LPCs haben...
hallo arm-fan, den grund, warum es vom tms470 keine ellenlangen errata-sheets gibt, würde ich darin vermuten, dass dieses teil für die breite masse erst seit kurzem verfügbar ist. speziell die typen mit größerem speicher gibt es erst seit kurzem. aus meiner sicht ist das verhältnis on-chip flash zu ram etwas zu gross, soll heissen das ding hat zu wenig ram. speziell bei einsatz eines rtos kann das ein problem werden. gruss gerhard
Hm, verstehe ... Der TMS470 ist deshalb relativ unbekannt, weil TI diesen Mikrocontroller relativ defensiv vermarktet, ansonsten ist das ein schickes Teil, hat sogar eine MPU. Eine Anpassung von OSE Epsilon auf den TMS470 dürfte sich recht schwierig gestalten, zum einen weil OSE wohl kaum die Sourcen für OSE Epsilon rausrückt und weil die Anpassung wohl nicht ganz sooo trivial sein dürfte. Verschiedene ARM-Mikrocontroller haben oft auch verschieden Interruptcontroller etc., eine solche Derivatanpassung ist schon etwas mehr, als eine Anpassung für ein neues Board. Hat der OSE Epsilon Kernel eigentlich eine OSEK-API, oder ist das OSEck auf der Enea-Homepage nur ein "Wortspiel"? Aber selbst wenn das so sein sollte, freie OSEK-Implementierungen findet man wohl auch kaum. Ciao, Fabian
Die Quellen vom OSE Epsilon hat "man" automatisch. Der Kernel ist ein einziges - zugegebenermaßen schlecht lesbares - Assemblerfile, welches von einem Config-Tool ausgespuckt wird. Dort sollte man im Normalfall meines Wissens nach auch nichts mehr drin anzupassen haben. Man muß lediglich an 3-4 Stellen eben seinen eigenen Interrupthandler einbauen, sowie dafür sorgen, dass zyklisch der Systemtick vom OS aufgerufen wird. Soweit die Theorie... ;-) In der Praxis funktionierts leider nur -- fast. Naja, ich gebe noch nicht auf. Zu den TMS470: Wie ich gestern auf der Embedded World gelernt hab, sind die TMS470 schon seit vielen vielen Jahren (ausschließlich) im Automotive Bereich im Einsatz und dort millionenfach verkauft worden -> daher von der ARM-Implementierung alleine schon sehr ausgereift. Nun sollen sie auch der breiten Masse in Industrial-Versionen angeboten werden. Was das Flash/RAM-Verhältnis angeht, muß ich leider zustimmen. Ist wirklich etwas zu groß ausgefallen. Aber man kann nicht alles haben. Ansonsten würde ich auch mal einen Block auf den High-End-Timer (HET) werden. Der hats von der Leistungsfähigkeit auch in sich. Außerdem unterstützen die Teile "atomare Bitoperationen" an den I/O Ports, was für eine Read-Modify-Write Maschine ja auch sonst nicht gegeben ist. Samples zum Ausprobieren liefert TI innerhalb von 2 Tagen... schwärm
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.