TOP Contributors

  1. MIKROE (2784 codes)
  2. Alcides Ramos (385 codes)
  3. Shawon Shahryiar (307 codes)
  4. jm_palomino (118 codes)
  5. Bugz Bensce (97 codes)
  6. S P (73 codes)
  7. dany (71 codes)
  8. MikroBUS.NET Team (35 codes)
  9. NART SCHINACKOW (34 codes)
  10. Armstrong Subero (27 codes)

Most Downloaded

  1. Timer Calculator (139842 times)
  2. FAT32 Library (72209 times)
  3. Network Ethernet Library (57392 times)
  4. USB Device Library (47739 times)
  5. Network WiFi Library (43364 times)
  6. FT800 Library (42700 times)
  7. GSM click (29980 times)
  8. mikroSDK (28440 times)
  9. PID Library (26989 times)
  10. microSD click (26398 times)
Libstock prefers package manager

Package Manager

We strongly encourage users to use Package manager for sharing their code on Libstock website, because it boosts your efficiency and leaves the end user with no room for error. [more info]

< Back
Library

CRTOS for PIC32

Rating:

10

Author: dany

Last Updated: 2016-02-25

Package Version: 1.0.0.0

Category: Other Codes

Downloaded: 1435 times

Followed by: 1 user

License: MIT license  

Cooperative Real Time Operating System (CRTOS) for PIC32

No Abuse Reported

Do you want to subscribe in order to receive notifications regarding "CRTOS for PIC32" changes.

Do you want to unsubscribe in order to stop receiving notifications regarding "CRTOS for PIC32" changes.

Do you want to report abuse regarding "CRTOS for PIC32".

  • Information
  • Comments (0)

Library Blog

PIC32 version of the CRTOS library (http://www.libstock.com/projects/view/722/c-rtos-for-mp-and-mb-p18-and-p24) already available for PIC18 and PIC24.

CRTOS stands for Cooperative Real Time Operating System; designed for and written specifically in mP/mB from mikroElektronika. The system uses cooperative as opposed to pre-emptive scheduling which means that the application code you write has to voluntarily release back to the operating system at appropriate times.

The PIC32 mP version was tested on the mini32 board (P32MX534F064H with 80 Mhz CPU clock).

CRTOS supports the following features:

  • Task priorities
  • Tasks can have local variables of which the values are preserved between task invocations.
  • Unconditional yielding to the CRTOS Scheduler
  • Timed yielding to the CRTOS Scheduler (i.e. “delay” performed by the Scheduler)
  • Binary semaphores
  • Counting semaphores
  • Waiting for semaphores with or without timeout
  • Clearing semaphores
  • Starting and stopping tasks
  • Starting tasks with an initial delay
  • Signaling semaphores from within an Interrupt Service Routine
  • An "Always" procedure in every scheduler loop (optionally)

Have fun!

 


2015-05-26: Small improvement in the "Restore_Registers" code. Also reduced the code size with approx. 1 Kb.   No functionality changes.    


2015-05-28: Corrected a small issue in "Restore_registers.inc". No functional change.


2015-05-31: Added the mB package.

ALSO FROM THIS AUTHOR

Expanders

5

Package with "Expander" librarie(s). For now only 1 library is there: PCF8574(A). The documentation for the (SPI) expanders 74HCT165 (input expander) and 74HCT595 (output expander) is added.

[Learn More]

Tool: Project configuration in text format, Standalone version

17

Tool that shows the project's configuration words content (in a readable format). This tool permits to add (part of) the configuration settings in a comment box in your project or as part of a forum post. For mP, mC and mB for PIC, dsPIC and PIC32. Stand Alone version.

[Learn More]

Tool: RomSizes

10

This tool shows the romsize of all units of a project together with rom-size details of a selected unit.
For mP, mC and mB for PIC, dsPIC and PIC32.

[Learn More]