你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

关于stm32f1 使用freeRTOS和Fatfs时任务堆栈大小问题

[复制链接]
benlarden 提问时间:2016-10-15 15:38 /
哪位使用过freeRTOS和Fatfs时,使用Fatfs系统的函数如f_open()等等时,此任务的堆栈大小大致需要多大,当前MAX_SS 定义为4096,我分配12K软件都跑飞了,请哪位使用分享一下经验,谢谢!~~?
收藏 1 评论23 发布时间:2016-10-15 15:38

举报

23个回答
benlarden 最优答案 回答时间:2016-10-18 15:24:37
benlarden 发表于 2016-10-17 15:12
基本就是任务堆栈的大小的问题,当前使用STM32CUBEMX 生成一个usb device的大容量存储,断电再上电就出现硬 ...

通过调试得出结论,后面有疑问的可以做一个参考,usb device时,通过检测VBUS电源来确定是否连接设备,由于当前OTG方式,选择device时忘记把VBUS电源关掉了,导致检测到有连接但是枚举时导致硬件异常!~~

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

benlarden 回答时间:2016-10-17 15:49:35
高二毛 发表于 2016-10-17 15:37
fatfs确实需要耗一些内存的。你可以用堆栈使用的highmark看看到底用了多少,然后再选择一个合适的。 ...

是的,我当前就是使用了这种方法,感谢关注!~~
benlarden 回答时间:2016-10-15 16:29:36
最后实验给了24K才跑起来,这也太费RAM了。。。。。如果MAX_SS能定义到512B估计会好很多
benlarden 回答时间:2016-10-15 17:18:52
没有人使用过吗???
zhangdaijin 回答时间:2016-10-15 20:20:04
            
mark0668 回答时间:2016-10-15 23:49:53
     
奏奏奏 回答时间:2016-10-16 08:45:59
我使用FreeRTOS了,但是没有用Fatfs系统,目前的使用情况截了两张图,图示现在的资源使用情况
现在项目工程使用情况截图01.jpg
现在项目工程使用情况截图02.jpg
wdshuang09 回答时间:2016-10-16 09:32:05
只能帮忙顶贴
benlarden 回答时间:2016-10-16 15:14:06
奏奏奏 发表于 2016-10-16 08:45
我使用FreeRTOS了,但是没有用Fatfs系统,目前的使用情况截了两张图,图示现在的资源使用情况
...

谢谢!~~是不是这个任务里的所有的局部变量都使用这个任务的堆栈,比如:
osThreadDef(defaultTask, StartDefaultTask, osPriorityNormal, 0, 512);
任务里跑的函数的什么变量都是通过512来分配???
奏奏奏 回答时间:2016-10-16 19:07:10
benlarden 发表于 2016-10-16 15:14
谢谢!~~是不是这个任务里的所有的局部变量都使用这个任务的堆栈,比如:
osThreadDef(defaultTask, Star ...

抱歉,具体是怎样的不太清楚,我用STM32CubeMX配置的。
当它提示我的任务多或者消息队列占用多不够用的时候,我才去把堆栈的数值设置大一些。
原田夜舞love 回答时间:2016-10-16 23:55:37
帮顶了!
123下一页

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版