[TUT][SOFT] RTOS for AVR

41 posts / 0 new
Last post
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Somewhat related are Adam Dunkels ProtoThreads at http://www.sics.se/~adam/pt/ . From the website:

Quote:
Protothreads are extremely lightweight stackless threads designed for severely memory constrained systems, such as small embedded systems or wireless sensor network nodes. Protothreads provide linear code execution for event-driven systems implemented in C.

"Some questions have no answers."[C Baird] "There comes a point where the spoon-feeding has to stop and the independent thinking has to start." [C Lawson] "There are always ways to disagree, without being disagreeable."[E Weddington]

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Femto OS is another RTOS for AVR architecture.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Not sure if I can post a question here, but why would someone want an operating system for an AVR, a microcontroller? Could someone here who uses such please explain, as I'd never considered such a thing but would like to understand the motivation.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:

why would someone want an operating system for an AVR, a microcontroller?

Here we go again.. Just do a search here at AVRfreaks on RTOS and similar and you will find more pro's and con's than you actually care about.

Oh, well... I am not necessarily ruling in OSes in all cases for AVRs (I'm not that stupid). But I can easily think of situations where it would help.

What if you want to run several parallell processes where some need to be higher prioritized than others? What if you want to want TCP/IP connectivity? What if you want to access an IDE hard disk with a FAT file-system? Sure you can say that you can write code for those without having an operating system, but then we'd just be playing with words.

Once upon a time I used machines with 64KB of RAM (for both program and data, Von Neumann architechture) that ran operating systems that where more complicated than several of the "small footprint" RTOSes for AVRs that are out there. The biggest AVR has 256 KB of (program) FLASH and 8KB of (data) RAM...

"Some questions have no answers."[C Baird] "There comes a point where the spoon-feeding has to stop and the independent thinking has to start." [C Lawson] "There are always ways to disagree, without being disagreeable."[E Weddington]

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I often think there's a limit (somewhere between 32K and 64K but not exactly sure where) at which program complexity probably becomes so great that there's a call for multi-tasking but it could be as simple as non-premeptive, perhaps even just protothreads.

Cliff

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

That is the conditions to the OS be inclided to this list?

I know about two another free OSes
scmRTOS (is a C++ cooperative OS with Mit license) http://scmrtos.sourceforge.net/
and iRTOS (is a C preemptive OS with LGPL license ) http://irtos.sourceforge.net/

I am writing RTOS may be someone will look at it ;-)
http://sourceforge.net/projects/irtos/
http://irtos.sourceforge.net/

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

No, it's not correct. scmRTOS is preempteve OS.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I think I've found another one.
http://www.embedded.com/shared/-printableArticle.jhtml?articleID=190302110

They call it SST (Super Simple Tasker) and it's about as simple as protothreads. They also call it preemptive but I think it's "only" cooperative. It's about 500 bytes in size (on a x86) and completely written in C.
It is not specifically written for AVR, but I believe it's easy to port.

Have Fun, Paul.

Paul van der Hoeven.
Bunch of old projects with AVR's:
http://www.hoevendesign.com

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

There is actually a port for that in the projects section! But you are correct it is not on the list.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

uCOS-II is another for AVR Architecture

Pages