Forum: Mikrocontroller und Digitale Elektronik Suche kleines Echtzeitbetriebsystem für at90s8535


von user0815 (Gast)


Lesenswert?

Hallo,

ich habe mir ein Eva Board mit dem at90s8535 aufgebaut.
Für eine Applikation benötige ich ein kleines Echtzeitbetriebssystem.
Kann mir jemand ein bestimmtes Echtzeitbetriebssystem empfehlen?
Dieses sollte, wenn möglich, kostenlos sein.

von Klaus W. (mfgkw)


Lesenswert?

Wozu braucht man bei einem at90s8535 ein Betriebssystem?

Oder anders gefragt: Für welchen Zweck, wo man ein
Betriebssystem braucht, ist ein at90s8535 geeignet?

von Peter D. (peda)


Lesenswert?

user0815 schrieb:
> Für eine Applikation benötige ich ein kleines Echtzeitbetriebssystem.

Welche Funktionen brauchst Du denn?

Wenn Du nur Aufgaben zeitgesteuert starten willst, tuts ein Scheduler.

Wenn Du mehrere blockierende Tasks ausführen willst, benötigst Du ein 
RTOS. Oder Du schreibst die Tasks auf nichtblockierend um (zurück zum 
Main statt warten).

Der at90s8535 dürfte mit einem RTOS schnell überfordert sein. Oder die 
Tasks sind so klein, daß man auch ne Mainloop nehmen könnte.


Peter

von user0815 (Gast)


Lesenswert?

Ok ich hab mich für den Scheduler entschieden.
Gibt es bereits ein Beispiel für den Scheduler?

von (prx) A. K. (prx)


Lesenswert?

Ob das hier nun lohnt oder nicht, aber mit AvrX existiert ein sehr 
kleines RTOS, das unter 2K wegfrisst.

von Peter D. (peda)


Lesenswert?


von Karl H. (kbuchegg)


Lesenswert?

user0815 schrieb:
> Ok ich hab mich für den Scheduler entschieden.
> Gibt es bereits ein Beispiel für den Scheduler?

Gehst du in die Codesammlung und tippst ins Suchfeld "Scheduler" ein.

von user0815 (Gast)


Lesenswert?

Ich bin zufällig auf das Minibetriebssystem FemtoOs im Internet 
gestoßen.
Würde dieses Betriebssystem auch auf meinem at90s8535 laufen?

von Thomas K (Gast)


Lesenswert?

Von der Seite von femtoOS:

Ports (Atmel)
mega128  mega3250  mega88P
mega1280  mega3250P  tiny2313
mega1281  mega325P  tiny24
mega1284P  mega48  tiny25
mega162  mega48P  tiny261
mega164P  mega64  tiny43U
mega168  mega640  tiny44
mega168P  mega644  tiny45
mega16  mega644P  tiny461
mega2560  mega645  tiny48
mega2561  mega6450  tiny84
mega324P  mega8  tiny85
mega328P  mega8515  tiny861
mega32  mega8535  tiny88
mega325  mega88

Also wirst Du Hand anlegen müssen!

Gruss
Th

von Thomas K (Gast)


Lesenswert?

aehm... da steht es doch: mega8535

von Peter D. (peda)


Lesenswert?

Thomas K schrieb:
> aehm... da steht es doch: mega8535

mega8535 != 90s8535


Peter

von http://www.tinyos.net/ (Gast)


Lesenswert?


von user0815 (Gast)


Lesenswert?

Danke für die Info.

Das TinyOs kann ich wirklich dafür nutzen?

von Karl H. (kbuchegg)


Lesenswert?

user0815 schrieb:
> Danke für die Info.
>
> Das TinyOs kann ich wirklich dafür nutzen?

Aus der FAQ

For microcontrollers, TinyOS supports the Texas Instruments MSP430 
family, Atmel's Atmega128, Atmega128L, and Atmega1281, and the Intel 
px27ax processor. There is work underway to support the Cortex M3.



Ebenfalls aus der FAQ

It's been designed for very reasource-constrained devices, such as 
microcontrollers with a few kB of RAM and a few tens of kB of code 
space.


Du hast keine 'few tens of kB of code space'


Fangen wir mal von vorne an:
Warum denkst du, dass du ein kleines Betriebssystem brauchst? Die 
Applikationen, die üblicherweise auf kleinen µC wie dem 90s8535 laufen, 
kriegt man auch ohne dezidiertes Betriebssystem ganz gut in den Griff, 
wenn man eventorientiertes Arbeiten betreibt, eventuell garniert mit 
einer Zustandsmaschine.

von Purzel H. (hacky)


Lesenswert?

Wozu braucht man ein RTOS ? Um dynamisch neue Appliktionen nachzuladen 
... nach Bedarf eine neue Pipe kreieren... eine floatingpoint Matritze 
laden und rechnen...

Auf nem 8535 hat bequem ein Timerinterrupt platz plus eine 
Zustandsmaschine. Dann kriegt man auch noch was erledigt, innerhalb der 
uebrigen Zeit, und innerhalb des verbleibenden Flash und RAM, mein ich.

von xyz (Gast)


Lesenswert?

erst mal sollte man klähren was Betriebystem heist. Und wie dieser 
begriff entstanden ist.

Ein Betriebsystem sind teile einer software, die bei der Softwrae 
entwicklung immer wieder benötigt wurden. (so in den frühzeiten der PC 
geschichte, als diese noch ganze gebäude/räume benötigten) und dei denen 
man es irgend wann mal leid war sie immer und immer wieder neu zu 
implementieren.
(Copy Past ging halt damals bei lochkarton streifen halt nicht wirklich)

z.B. ein- und ausgabe rotinen für Monitor  Tastatur  Massenspeicher / 
Drucker / ...

Da die PCs der damaligen zeit nicht gerade preiswert waren, ( meist 
einzelanfertigungen) sollten diese auch effizent genutzt werden. Heist 
stillstand ist rausgeschmissenes geld. daher wurden Batch syteme 
davorgeschaltet die einzelne rechenaufgaben in eine Queue aufnahmen und 
dann nach einander abarbeiteten.

weiter gings dann mit dynamischer verwaltung einem quasi paralelrechnen, 
Multiuser, ....

Für mich sollte ein Betriebsystem im Embedded bereich Multitasking und 
deren Prozess synchronisation bereitstellen.

gruss

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.