3 configUSE_TICKLESS_IDLE 此配置用于使能 tickless 低功耗模式 ◆ 配置为 1 :使能 tickless 低功耗模式 ◆ 配置为 0 :禁能 tickless 低功耗模式 4 configCPU_CLOCK_HZ 此参数用于定义 CPU 的主频,单位 Hz。 5 configTICK_RATE_HZ 此参数用于定义系统时钟节拍数,单位 Hz,一般取 1000Hz 即可。本教程配套...
1在“FreeRTOSConfig.h”中配置“configUSE_TICK_HOOK” 为 1 (可裁剪) 2 实现函数“void vApplicationTickHook()” 函数名称: vApplicationStackOverflowHook() 使用条件: 1在“FreeRTOSConfig.h”中配置“configCHECK_FOR_STACK_OVERFLOW” 为 1 或者 2(可裁剪) 2 实现函数“void vApplicationStackOverflowHoo...
configUSE_IDLE_HOOK定义是否使能空闲钩子函数,0关闭,1开启。 configUSE_TICK_HOOK定义是否使能时间片钩子函数,0关闭,1开启。 configUSE_MALLOC_FAILED_HOOK定义是否使能内存溢出检测,0关闭,1或2开启,1和2使用的检测方法不同。 CPU监测 此类功能通常在开发过程当中统计CPU利用率等信息的时候使用,通常状态下保持关闭以...
35、configUSE_TICK_HOOK 为1时使能时间片钩子函数,用户需要实现时间片钩子函数,函数的原型如下:void vApplicationTickHook( void ) 36、configUSE_TICKLESS_IDLE 为1时使能低功耗tickless模式。 37、configUSE_TIMERS 为1时使用软件定时器,相关的API函数会被编译,当宏configUSE_TIMERS为1的话,那么宏configTIMER_T...
2. freeRTOS提供的软件低功耗,Tickless模式! 当用户将宏定义 configUSE_TICKLESS_IDLE 配置为 1 且系统运行满足以下两个条件时, 系统内核会自动的调用,低功耗宏定义函数 portSUPPRESS_TICKS_AND_SLEEP():---## 当前空闲任务正在运行,所有其它的任务处在挂起状态或者阻塞状态。 ## 根据用户配置 configEXPECTED_...
voidvApplicationMallocFailedHook(void); 6.configUSE_TICK_HOOK 设置为1使用时间片钩子(Tick Hook),0忽略时间片钩子。 注:时间片钩子函数(Tick Hook Function) 时间片中断可以周期性的调用一个被称为钩子函数(回调函数)的应用程序。时间片钩子函数可以很方便的实现一个定时器功能。
以STM32 为例,定义的 configTICK_RATE_HZ 为 1000,由《FreeRTOS --(9)任务管理之启动调度器》得知,系统节拍时钟周期为1ms; 不同的处理器结构可能有所区别,所以他是需要移植的部分,在 port.c 中 xPortSysTickHandler: void xPortSysTickHandler( void ) ...
当宏configUSE_TIMERS和 configUSE_DAEMON_TASK_STARTUP_HOOK都为Ⅰ的时需要定义函数vApplicationDaemonTaskStartupHook(),函数原型如下: :void vApplicationIdleHook( void ) 26、configUSE_IDLE_HOOK 为1时使用空闲任务钩子函数,用户需要实现空闲任务钩子函数,函数的原型如下:void vApplicationIdleHook( void ) ...
意思是说:如果你配置configUSE_IDLE_HOOK为1,那么你就必须要实现“vApplicationIdleHook()”这个函数,否则编译会出错。初学者默认不定义该函数。 2.configUSE_TICK_HOOK 是否定义TICK滴答HOOK函数 配置为0:不定义 配置为1:定义 在task.c文件中的xTaskIncrementTick函数下可以看见如下代码: ...
要使用空闲任务钩子函数首先要在 FreeRTOSConfig.h 中将宏 configUSE_IDLE_HOOK 改为 1,然后编写空闲任务子函数 vApplicationIdleHook()。通常在空闲任务钩子函数中将处理 器设置为低功耗模式来节省电能,为了与 FreeRTOS 自带的 Tickless 模式做区分,这里我暂且将这种低功耗的实现方法称之为通用低功耗模式(因为几乎...