TOP Contributors

  1. MIKROE (2784 codes)
  2. Alcides Ramos (404 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 (141112 times)
  2. FAT32 Library (73906 times)
  3. Network Ethernet Library (58554 times)
  4. USB Device Library (48725 times)
  5. Network WiFi Library (44376 times)
  6. FT800 Library (43977 times)
  7. GSM click (30721 times)
  8. mikroSDK (29478 times)
  9. PID Library (27304 times)
  10. microSD click (27132 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: 1513 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

Article: Ram corruption reasons in mP and mB

5

Purpose: Make people aware about the ways of working that can introduce ram corruption (and of course how to avoid it). In this document the many ways where it goes right are not mentioned, only the danger areas are highlighted.

[Learn More]

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]

OW_Utilities

5

This library provides the basic one-wire search ROM and search ALARM routines, e.g. for the DS1820, the DS18S20 and the DS18B20.

[Learn More]