STM32 FreeRTOS 内存问题

1. STM32L151C8T6 内存,64Kb 的Flash(代码就是烧录在这里面的),16Kb 的RAM,程序跑起来之后的内存,相当于我们高考时发的草稿纸,直接影响程序的运行速度,可以用STM32 CubeMx 软件直接下载数据手册datasheet

2. 实际使用64KB Flash (ROM), 10KB RAM,ROM还没用完了

3. 编译信息提供的内存具体大小

4. 搞OLED 的时候搞了一个2KB 的全局数组,直接导致程序运行不起来,Debug 都进不了main 主函数了,把数组调小一点,就可以正常运行起来,所以怀疑是内存溢出了

复制代码
#define OLED_SCREEN_PAGE    8 // page [7 - 0]
#define OLED_SCREEN_COLUMN    128 // 128 column

uint8_t g_OLED_RAM[OLED_SCREEN_PAGE][OLED_SCREEN_COLUMN] = {0x00};

5. FreeRTOS 的堆内存大小

复制代码
#define configTOTAL_HEAP_SIZE    ((size_t)(10 * 1024)) // all the size of system heap

6. 调小一点,10Kb 调到8Kb 就OK了,创建任务的时候都是从这个堆里面申请内存的,申请的内存用作任务堆栈大小

复制代码
#define configTOTAL_HEAP_SIZE    ((size_t)(8 * 1024)) // all the size of system heap
相关推荐
QH139292318802 小时前
KEYSIGHT N9030B PXA信号/频谱分析仪
科技·嵌入式硬件·集成测试
Shang180989357263 小时前
T31ZX 君正/INGENIC智能视频处理器T31ZX可提供软硬件资料T31Z采用先进的低功耗设计
嵌入式硬件·fpga开发·音视频·t31zx智能视频处理器
ahccqw3 小时前
CAN总线通信入门及实例代码(stm32f4系列)
stm32·单片机·嵌入式硬件
云栖梦泽4 小时前
Linux内核与驱动:13.从设备树到Platform平台总线
linux·运维·c++·嵌入式硬件
振南的单片机世界4 小时前
电源、复位、时钟:单片机的“生存三要素”
单片机·嵌入式硬件
charlie1145141914 小时前
嵌入式Linux驱动开发指南02——内核空间基础与硬件访问
linux·运维·c语言·驱动开发·嵌入式硬件
踏着七彩祥云的小丑4 小时前
嵌入式——小白入门
嵌入式硬件
charlie1145141915 小时前
嵌入式现代C++工程实践——第14篇:第二次重构 —— 模板登场,编译时绑定端口和引脚
开发语言·c++·stm32·安全·重构
SUNNYSPY0016 小时前
16N65-ASEMI重塑功率电子新标杆16N65
单片机
踏着七彩祥云的小丑7 小时前
嵌入式——简单电路常识
单片机·嵌入式硬件