This is an old revision of the document!
FreeRTOS
Install
Current
cd /opt wget https://github.com/FreeRTOS/FreeRTOS/releases/download/202212.01/FreeRTOSv202212.01.zip unzip FreeRTOSv202212.01.zip
LTS
cd /opt wget https://github.com/FreeRTOS/FreeRTOS-LTS/releases/download/202210.01-LTS/FreeRTOSv202210.01-LTS.zip unzip FreeRTOSv202210.01-LTS.zip
GIT
cd /opt git clone --recurse-submodules https://github.com/FreeRTOS/FreeRTOS
KERNEL
cd /opt git clone https://github.com/FreeRTOS/FreeRTOS-Kernel
RPi
cd /opt git clone https://github.com/raspberrypi/FreeRTOS-Kernel FreeRTOS-Kernel.rpi
#ifndef FREERTOS_CONFIG_H #define FREERTOS_CONFIG_H #define configUSE_PREEMPTION 1 #define configUSE_IDLE_HOOK 0 #define configUSE_TICK_HOOK 0 #define configCPU_CLOCK_HZ (72000000) #define configTICK_RATE_HZ 1) #define configMAX_PRIORITIES (4) #define configMINIMAL_STACK_SIZE 2) #define configTOTAL_HEAP_SIZE 3) #define configMAX_TASK_NAME_LEN (3) #define configUSE_TRACE_FACILITY 0 #define configUSE_16_BIT_TICKS 0 #define configIDLE_SHOULD_YIELD 1 #define configUSE_MUTEXES 1 #define configQUEUE_REGISTRY_SIZE 8 #define configCHECK_FOR_STACK_OVERFLOW 0 #define configUSE_RECURSIVE_MUTEXES 1 #define configUSE_MALLOC_FAILED_HOOK 0 #define configUSE_APPLICATION_TASK_TAG 0 #define configUSE_COUNTING_SEMAPHORES 1 #define configGENERATE_RUN_TIME_STATS 0 #define configUSE_TIMERS 1 #define configTIMER_TASK_PRIORITY (2) #define configTIMER_QUEUE_LENGTH 10 #define configTIMER_TASK_STACK_DEPTH (configMINIMAL_STACK_SIZE * 2) #define INCLUDE_vTaskPrioritySet 1 #define INCLUDE_uxTaskPriorityGet 1 #define INCLUDE_vTaskDelete 1 #define INCLUDE_vTaskCleanUpResources 1 #define INCLUDE_vTaskSuspend 1 #define INCLUDE_vTaskDelayUntil 1 #define INCLUDE_vTaskDelay 1 #define configPRIO_BITS 4 #define configLIBRARY_LOWEST_INTERRUPT_PRIORITY 0xf #define configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY 5 #define configKERNEL_INTERRUPT_PRIORITY (configLIBRARY_LOWEST_INTERRUPT_PRIORITY « (8 - configPRIO_BITS)) #define configMAX_SYSCALL_INTERRUPT_PRIORITY (configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY « (8 - configPRIO_BITS)) #define configASSERT(x) if ((x) == 0) { taskDISABLE_INTERRUPTS(); for (;;); } #define vPortSVCHandler SVC_Handler #define xPortPendSVHandler PendSV_Handler #if 0 #define xPortSysTickHandler SysTick_Handler #endif
#endif </code> */