TOP Contributors

  1. MIKROE (2784 codes)
  2. Alcides Ramos (405 codes)
  3. Shawon Shahryiar (307 codes)
  4. jm_palomino (133 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 (141292 times)
  2. FAT32 Library (74089 times)
  3. Network Ethernet Library (58715 times)
  4. USB Device Library (48826 times)
  5. Network WiFi Library (44525 times)
  6. FT800 Library (44074 times)
  7. GSM click (30805 times)
  8. mikroSDK (29659 times)
  9. PID Library (27355 times)
  10. microSD click (27251 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: 1522 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

PS2 Keyboard to USB keyboard convertor

5

Makes it possible to use a PS2 keyboard on an USB connector on the PC. Uses the PS2 Keyboard library and the USB HID Keyboard library.

[Learn More]

Tool: Show PIC Data

5

This tool shows the PIC data (PIC capabilities) derived from the CSV files in the MikroProg Suite directory (and used by it).
For mP, mC and mB, PIC, dsPIC and PIC32.

[Learn More]

I2c non blocking

10

Replacement routines for I2c1_Rd and I2c1_Wr but here with timeout, so no blocking any more when a device one tries to access is not present. The mE I2c library is still needed for the remaining I2c routines. Implemented also the code for controllers with 2 I2c's (e.g. P18F27K40).

[Learn More]