Embedded graphics library to create beautiful UIs for any MCU, MPU and display type. - lvgl/src/osal/lv_freertos.c at v9.1.0 · lvgl/lvgl
* - LV_OS_CUSTOM */ #define LV_USE_OS LV_OS_NONE #if LV_USE_OS == LV_OS_CUSTOM #define LV_OS_CUSTOM_INCLUDE <stdint.h> #endif #if LV_USE_OS == LV_OS_FREERTOS /* * Unblocking an RTOS task with a direct notification is 45% faster and uses less RAM * than ...
#ifLV_USE_OS==LV_OS_FREERTOS /* * Unblocking an RTOS task with a direct notification is 45% faster and uses less RAM * than unblocking a task using an intermediary object such as a binary semaphore. * RTOS task notifications can only be used when there is only one task that can ...
* - LV_OS_NONE * - LV_OS_PTHREAD * - LV_OS_FREERTOS * - LV_OS_CMSIS_RTOS2 * - LV_OS_RTTHREAD * - LV_OS_WINDOWS * - LV_OS_CUSTOM */ #define LV_USE_OS LV_OS_NONE #if LV_USE_OS == LV_OS_CUSTOM #define LV_OS_CUSTOM_INCLUDE <stdint.h> #endif /*...
* - LV_OS_NONE * - LV_OS_PTHREAD * - LV_OS_FREERTOS * - LV_OS_CMSIS_RTOS2 * - LV_OS_RTTHREAD * - LV_OS_WINDOWS * - LV_OS_MQX * - LV_OS_CUSTOM */ #define LV_USE_OS LV_OS_NONE #if LV_USE_OS == LV_OS_CUSTOM #define LV_OS_CUSTOM_INCLUDE <stdint...
LVGL:8.3.2OS:FreeRTOS Hello, due to project requirements, I initially had a test board with MIPI LCD and SDRAM. My program runs on the SDRAM, and all variables are defined in the SDRAM as well. In this case, all the functions of the program work fine. Then, I obtained a...
Solved: Chip:MIMXRT1176DVMAA LVGL:8.3.2 OS:FreeRTOS Hello, due to project requirements, I initially had a test board with MIPI LCD and SDRAM. My
因为MCU运算和内存资源比较有限,且不支持MMU(Memory Management Unit,比MPU强大的内存管理单元),一般只能运行如FreeRTOS之类的小型RTOS。车载行业一般要求RTOS达到ASIL D级别,常用的MCU RTOS主要有AUTOSAR OS, SafeRTOS。一般没有配套的libc和STL库,对C++的支持不够友好,比较难开发维护复杂软件。因为Safety MCU的软硬件...
freeRTOS系统的任务切换的具体过程最终都是在pendSV中断服务函数里面完成的。 PendSV是一种不精确的异常处理,优先级和挂起状态可以通过编程实现,一般在实时操作系统中PendSV的优先级都会被设置为最低,在其他所有的异常中断处理完以后才执行,对上下文的切换非常有用,在OS设计中也是属于非常关键的。
type = LV_INDEV_TYPE_POINTER; lv_indev_drv_register(&indev_drv); #endif esp_register_freertos_tick_hook(lv_tick_task); ui_create(); while(1) { vTaskDelay(1); lv_task_handler(); } } static void IRAM_ATTR lv_tick_task(void) { lv_tick_inc(portTICK_RATE_MS); }...