RT-Thread Nano移植(添加源码)
该篇针对的是向STM32F1主板的移植。
1、源码文件内容
最重要的是bsp、components、include、libcpu、src文件夹。
2、对Nano源码进行相应地选择性裁剪
删除libcpu内的risc-v架构有关文件而只留下arm架构的支持文件,以及只保留arm架构文件夹内想要的内核文件:cortex-m3和cortex-m4,其实随便,根据需要保留。
3、裁剪后的Nano源码添加到32裸机工程
(1)在裸机工程下Source文件夹下或自己设定的文件夹下 创建 RT-Thread文件夹。
向[RTthread]文件夹中添加components、include、libcpu、src;
向[Main]文件夹添加bsp文件夹内的board.c和rtconfig.h;
(2)添加文件后,打开STM32要移植的裸机工程,分别将之前复制的文件添加到工程,以及添加相应h文件的路径
(3)这之后,对工程代码进行一些修改。
包括:
rtconfig.h中取消对RTE_Components.h文件的引用;
删除裸机工程下写的冲突的原来的串口配置;
删除stm32f10x_it.c中的HardFault_Handler(void)和PendSV_Handler(void);因为在RT源码中提供了相应函数,32里的与RT的冲突了,这里用RT给的;
删除逻辑工程中原来写的系统滴答延时、而是用RT提供的滴答延时;
注释board.c里有关系统滴答寄存器和一些函数,而是用固件库里提供的
修改一下系统滴答定时器初始化函数:
4、仿真模式下运行Debug
发现PA0,PA1每隔500ms亮灭。
移植成功。