stm32 f411偶发性无法启动大神求助
在擦除flash时 同时挂起中断 是否会造成卡死以及相关的卡死机制
STM32F407VET6,使用cubeIDE下载跑不起来
FLASH擦除轮询等待时CPU真的会轮询吗
STM32F417 RTC读取亚秒寄存器
STM32F405ZGT6 批次22+ 问下这颗料,60度烘烤12小时后,出现鼓包,是怎么回事? 原厂有标准的烘烤温度范围 跟时长范围吗?
非官方开发板第一次下载成功,之后就各种失败
STM32H5F/E 相比 STM32F4 系列最大的优势是什么?
ST TOF问题请教
STM32F4的SPI端口,如何实现多通道输入?
微信公众号
手机版
1、在工程里设置合适的系统栈大小,这点通常在启动文件里配置即可。它用于处理异常或中断。
2、在RTOS里设置合适的堆内存大小,比方 #define configTOTAL_HEAP_SIZE ( ( size_t ) ( 10* 1024 ) )
Hi,xmshao:
我查看了工程中的堆栈配置,在FreeRTOSConfig.h文件中:
define configMINIMAL_STACK_SIZE ((uint16_t)128)
define configTOTAL_HEAP_SIZE ((size_t)15360)
这样的配置是合理的吗?
[md]这看不出有啥不合理的。
onfigTOTAL_HEAP_SIZ的大小15KB,不小了,一般来讲应该够用了。具体是否够用,跟你创建的任务、任务栈大小以及其它RTOS资源,比方队列、信号量的多少有关。
你也可以参考下例程的配置。
另外,不知你选择的是哪种内存管理方案,通常选用heap_4.c内存管理方案。
[md]我选择的是heap_4的内存管理方案,这个现象很奇怪,在网上我也没有找到对应的类似问题,另外,我使用xSemaphoreTake和xSemaphoreGive来实现的mutex功能,发现使用后会死锁,我不清楚是否freertos使用还需要什么配置,才能启用这些接口。