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
相关推荐
Embers(余烬矿)16 分钟前
STM32 usb 设备描述符失败
stm32·单片机·嵌入式硬件
zd84510150033 分钟前
CubeMX H743 lwip ETH初始化流程
网络·stm32·单片机
兆龙电子单片机设计35 分钟前
【STM32项目开源】STM32单片机智能温控风扇系统
stm32·单片机·物联网·开源·自动化
云山工作室35 分钟前
基于单片机的自动门控制系统设计(论文+源码)
stm32·单片机·嵌入式硬件·毕业设计
VekiSon40 分钟前
ARM架构——UART 串口通信详解
c语言·arm开发·单片机·嵌入式硬件
橙露1 小时前
工业控制嵌入式开发:Modbus 协议在 STM32 中的实现与调试
服务器·网络·stm32
zmj3203241 小时前
单片机中NVM和FLASH的区别
单片机·嵌入式硬件
想放学的刺客1 小时前
单片机嵌入式试题(第21期)嵌入式系统启动异常排查与多任务同步机制设计两个核心方向,涵盖硬件调试、软件架构等综合能力考察。
stm32·单片机·嵌入式硬件·物联网·51单片机·proteus
Y1rong1 小时前
STM32之DMA
stm32·单片机·嵌入式硬件
LS_learner1 小时前
ros2命令行工具的完整命令简介
嵌入式硬件