移前准备
1、需要去keil官网下载一个rt_thread的包。链接: 官网下载链接. 直接下载最新版本即可
2、需要准备一个简易的裸机工程 可以直接使用cubemx创建一个led的工程链接: 参考教程.
开始移植
装包
一、直接无脑安装即可 二、打开我们提前准备好的裸机工程 点击这里将我们下载的rt_thread包添加进来 加入进来之后我们可以看到这里会多一个RTOS,如果没有就重新添加一遍
完成基础配置
我们这里下载的包,会有一部分文件与教学视频里面的不一样,所以我们需要修改一些配置 因为这两个函数被RT_Thread结果,所以我们需要将这两个函数删除 函数在stm32f1xx_it.c中
关于Systick中断处理函数说明
一、这里可以删掉 删掉之后我们直接使用RT_Thread里面的Systick中断处理函数。 因为延时函数是通过系统滴答实现的 HAL_Delay();函数失效 rt_thread_mdelay();可以使用 二、这里不用删掉 因为延时函数是通过系统滴答实现的 HAL_Delay();可以使用 rt_thread_mdelay();函数失效
我建议大家还是删掉,用rt_thread 中的延时函数 后面使用起来会比较方便
下面我就按着使用rt_thread 中的延时函数来进行讲解
board文件修改(嫌麻烦第一点可以忽略)
一,因为cubemx生成的工程已经自动配置好了stm32的时钟,所以我们要在主函数中将配置时钟函数删除,并且将系统时钟初始化放到板级初始化board文件中 1、删掉主函数中系统时钟初始化 2、在board文件中初始化时钟系统时钟配置 3、在board文件中配置系统滴答中断服务函数 注意要添加包含的头文件 4、注意这个地方要注释掉,不然会报错
移植完成
好了,到这里移植就完成了,继续加油吧
|