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

关于freertos移植到M0内核的mcu

[复制链接]
cccccc2 提问时间:2018-7-18 15:28 /
     求助各位大佬,小弟最近手头有一个项目,需要在手头一个公司已做出来的m0内核的mcu上移植freertos,但苦于一直不成功,还望指教。

网上的很多教程都是stm32的,但是其实32系列的移植很多都有官方demo,所以很简单,我进行移植的时候(使用工具为mdk),先是有一个已经成功的裸机程序,然后将内核相关的list.c,task.c等都加入工程,再添加内存管理文件heap.c和port.c,这两个文件我都是直接使用的官方:FreeRTOSv9.0.0\FreeRTOS\Source\portable\RVDS\ARM_CM0路径和FreeRTOSv9.0.0\FreeRTOS\Source\portable\MemMang路径下的文件,之后在main函数加入xtaskcreate()用于测试,之后debug发现会卡死在xtaskcreate()中,还望指教。

收藏 评论6 发布时间:2018-7-18 15:28

举报

6个回答
tigerkiller 回答时间:2018-7-18 15:38:56
百度找。

评分

参与人数 1蝴蝶豆 +1 收起 理由
zero99 + 1

查看全部评分

TLLED 回答时间:2018-7-18 16:45:29
按照DEMO例程,移植时看看配置文件方面有什么区别,有时候自己移植,总是某些参数设置不对,就会有不同的结果,建议多和DEMO代码比较比较

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

cccccc2 回答时间:2018-7-18 18:37:40
TLLED 发表于 2018-7-18 16:45
按照DEMO例程,移植时看看配置文件方面有什么区别,有时候自己移植,总是某些参数设置不对,就会有不同的结 ...

多谢老哥,想问一下,是否相同m0内核下,所有的port.c和portmacro.h都是通用的,直接使用官方的吗?就是说我们只需要根据demo和芯片的数据手册去进行配置freeertosConfig.h文件吗?
xiaojie0513 回答时间:2018-7-18 18:58:09
卡住哪一步了??

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

cccccc2 回答时间:2018-7-19 14:47:16

使用heap4卡死在任务创建函数,停在内存申请函数中从xstart开始寻找大小满足需求的内存块,
使用heap1的内存管理方法,任务可以创建,但是开启任务调度器时vtaskStartScheduler都不会完全执行完。
cccccc2 回答时间:2018-7-19 16:22:15
cccccc2 发表于 2018-7-19 14:47
使用heap4卡死在任务创建函数,停在内存申请函数中从xstart开始寻找大小满足需求的内存块,
使用heap1的 ...

debug发现任务调度器会停在最后,官方在那一块的源码注释是说系统内核没有启动成功,原因在于创建空闲任务或者定时器任务时没有足够内存。现在不确定是不是我的freertosConfig.h文件配置有问题,按理说我这块mcu的ram其实够大

所属标签

相似问题

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版