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

it2023-06-16  76

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

最新回复(0)