RTOS Layer-Architecture
μC/CAN assumes the presence of an RTOS but, the RTOS layer allows μC/CAN to be independent of any specific RTOS.
As a minimum, the RTOS you use needs to provide the following services:
- Semaphore
- Timer Services (to get time)
μC/CAN is provided with a μC/OS-II and μC/OS-III interface. If you use a different RTOS, you can use the can_os.*
for μC/OS-II or μC/OS-III as a template to interface to the RTOS of your choice.
Its also possible to use μC/CAN without an RTOS. In this case the function to get time information needs to be supplied. Note that the supplied can_os.*
files for NO OS ('NONE') is replacing the OS semaphore and is polling on the flags instead. This might result in a decrease of overall system performance.