GCC使用stm32cubemx使用RT-Thread环境搭建

GCC使用stm32cubemx使用RT-Thread环境搭建实现finsh

第一步:在stm32cubemx中添加rt-thread;具体步骤根据官方文档操作。
在这里插入图片描述
第二步:使用stm32cubemx正常配置需要使用的引脚和功能,这里使用makefile方式,其他方式官方文档更加详细
在这里插入图片描述
第三步:修改makefile 文件和gcc启动文件(出现持续进入rt_hw_hard_fault_exception函数,需要仔细分析原因很多,最终我的是gcc方式没有修改启动文件导致,最后在官方文档找到原因,下面有官方文档移植原理地址)。
1.修改makefile 文件,添加context_gcc.s启动文件到makefile文件中,地址可以根据和它同目录的cpuport.c文件地址修改。这里还需要将默认的context_gcc.S大写S修改为小写.
在这里插入图片描述

2.修改gcc启动文件,gcc方式需要修改,mdk,iar不用修改,详情件官方文档-移植原理
在这里插入图片描述

第四步:屏蔽自动生成的系统时钟,开启HEAP
在这里插入图片描述

开启HEAP
在这里插入图片描述
第五步:修改链接文件.ld此处参考文章添加对应的finsh连接部分
在这里插入图片描述
代码:

/* section information for finsh shell */
	. = ALIGN(4);
	__fsymtab_start = .;
	KEEP(*(FSymTab))
	__fsymtab_end = .;
	. = ALIGN(4);
	__vsymtab_start = .;
	KEEP(*(VSymTab))
	__vsymtab_end = .;
	. = ALIGN(4);

	/* section information for initial. */
	. = ALIGN(4);
	__rt_init_start = .;
	KEEP(*(SORT(.rti_fn*)))
	__rt_init_end = .;
	. = ALIGN(4);

初学使用rt-thread,使用gcc+makefile方式,此文档记录调试遇到问题的解决方法。
time:2020.10.30

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值