RTOS内存管理、机器人吸尘器应用及LCD与触摸屏技术解析
1. RTOS内存管理
在实时操作系统(RTOS)中,内存管理是一项关键任务。以Mbed OS为例,默认会启动ISR/调度器、空闲、定时器和主线程,这些线程以静态形式创建。其中,前三个线程使用2 kB的RAM,且该值不可更改;主线程使用4 kB的RAM,可通过“mbed_app.json”文件中的 rtos.main-thread-stack-size 参数进行设置。同样,每个新创建的线程默认栈大小为4 kB,可通过“mbed_app.json”文件中的 rtos.thread-stack-size 参数或在线程创建函数中设置 stack_size 参数来更改。
在Mbed Studio项目中,默认不会创建“mbed_app.json”文件,因此需要在项目根文件夹中创建一个空的“mbed_app.json”文件,然后通过该文件调整内存参数。例如,可添加以下代码将主线程和用户线程的栈大小设置为2 kB:
{
"target_overrides": {
"*": {
"rtos.main-thread-stack-size": 2048,
"rtos.thread-stack-size": 2048
}
}
}
以下是Mbed OS中的内存管理示例代码:
#include
超级会员免费看
订阅专栏 解锁全文
47

被折叠的 条评论
为什么被折叠?



