|
|
View previous topic :: View next topic |
Author |
Message |
f. giam Guest
|
RTOS |
Posted: Tue Dec 18, 2001 11:24 am |
|
|
Does anyone have eard about real time operating system for PIC 16F87x in asm or c, easy to understand or to modify.
Thanks for the reply
___________________________
This message was ported from CCS's old forum
Original Post ID: 1686 |
|
|
PCM programmer
Joined: 06 Sep 2003 Posts: 21708
|
Re: RTOS |
Posted: Fri Dec 21, 2001 2:34 pm |
|
|
:=Does anyone have eard about real time operating system for PIC 16F87x in asm or c, easy to understand or to modify.
The Salvo RTOS is available.
<a href="http://www.pumpkininc.com/" TARGET="_blank">http://www.pumpkininc.com/</a>
Microchip has an appnote on it, AN777.
Go here, and click on PIC16F87x in the Device Specific section.
<a href="http://www.microchip.com/1000/suppdoc/appnote/index.htm" TARGET="_blank">http://www.microchip.com/1000/suppdoc/appnote/index.htm</a>
-----------------
There's some sample multi-tasking code for Hi-Tech C here:
<a href="http://www.workingtex.com/htpic/Hi-Tech_C_multitask.htm" TARGET="_blank">http://www.workingtex.com/htpic/Hi-Tech_C_multitask.htm</a>
-----------------
You can search the Usenet archives for articles.
Go here:
<a href="http://groups.google.com/advanced_group_search" TARGET="_blank">http://groups.google.com/advanced_group_search</a>
Type in comp.arch.embedded for the Group, and type
in PIC RTOS for the keywords.
-----------------------
In the Usenet archives, CBFalconer has some good articles:
Here's part of one:
It is much simpler than that. Each process simply runs until it
decides it can afford to be interrupted, and then calls the
scheduler (maybe by returning from a procedure). So there are
no critical sections. All you have to worry about is that
*every* process calls the scheduler often enough. Then the
scheduler can be as simple as:
do {
enableinterrupts();
disableinterrupts(); /* now any pending interrupt has run */
processA();
processB();
processC();
processA(); /* giving A a higher priority */
processD();
processE();
} while (! halted);
Note that such a system always knows the conditions under which
an interrupt executes, so doesn't have to worry over stack
overflow, limited nesting capabilities, etc. A few global flags
and buffers allow interrupt-process communications.
Such a system is suitable for mentally challenged processors
such as the PIC. You have to keep strict bounds on execution
time for each process - they are normally some sort of state
machine. A fault in any process can destroy the whole system.
___________________________
This message was ported from CCS's old forum
Original Post ID: 1717 |
|
|
jasonpeixoto Guest
|
|
Posted: Mon Jan 26, 2004 11:27 am |
|
|
Hi
I have completed various version and options of a RTOS for hitech.
I am looking at CCS as they now support pointers to functions.
in asembler it starts of 51 bytes in size the smalletst version.
To 130 bytes with tick and delays to 201 bytes with events + semaphors.
I shall keep you all updated.
Jason Peixoto
jason@20megs.com |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|