嵌入式FreeRTOS学习日记(2026.10.06)

发布时间:2026/10/7 15:34:04
嵌入式FreeRTOS学习日记(2026.10.06) 1-掌握了栈堆和RAM的联系和区别RAM划分两个区域栈和堆栈和堆都存放在RAM中。堆Heap区域malloccallocrealloc等手动申请RAM的空间栈位自动管理自动申请自动释放不是手动申请手动释放栈和堆的区别之一栈(Stack)分为硬件栈和软件栈硬件栈的区域普通的局部变量函数参数返回地址。软件栈的区域在FreeRTOS中使用的是软件栈它是全局变量存放在RAM中。RAM不包含栈和堆区域全局变量静态变量根据是否初始化存放在RAM的.bss和.date区域。特点上电分配程序结束释放。Flash的区域独立存储的位置代码const常量。另外掌握复习了volatile禁止编译器优化和const和volatile区别。2-掌握了任务的静态动态创建任务的删除以及任务的状态设置和vTaskDelay()任务的创建:xTaskCreate ()xTaskStaticCreate () 注创建静态任务需要调用 vApplicationGetIdleTaskMemory忘记的话也可根据错误警告进行配置要配置这个函数的TCB栈栈的深度StackType_t用来创建变量例如数组。Stack对应栈 Type对应类型StaticTask_t用来创建任务的TCBTaskHandle_t用来创建句柄。句柄和TCB的区别句柄是TCB结构体的指针相当于封装。TCB全称任务Task控制Control块Block即TCB是一个巨大的结构体。今天晚上只能回忆起来这么多了还有一些细节没回忆起来有错误的或者不充分各位大佬也能指出来虚心接受╰(*´︶*)╯