RTOS内存管理、机器人吸尘器应用及LCD与触摸屏技术解析
1. RTOS内存管理
在实时操作系统(RTOS)里,内存管理是关键的一环。这里以Mbed OS为例进行探讨。
在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中的内存管理示例代码:
超级会员免费看
订阅专栏 解锁全文

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



