打印
[应用相关]

rt-thread基于stm32f103的最小系统

[复制链接]
1448|15
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
rt-thread基于stm32f103的最小系统

rt-thread for stm32f103
一、 环境
Window7
Keil uVision V4.00
Toolchain:RealView MDK-ARM version:4.00
二、 Rt-thread代码下载
Rt-thread-1.2.2.zip

沙发
ADZ2016|  楼主 | 2018-9-9 20:37 | 只看该作者
三、 解压rt-thread代码
     得到名为rt-thread-1.2.2的文件夹

使用特权

评论回复
板凳
ADZ2016|  楼主 | 2018-9-9 20:37 | 只看该作者
四、 新建目录
在与rt-thread-1.2.2同一级的目录下新建目录myrtthread,并在其下新建子目录.
     最终的myrtthread和rt-thread-1.2.2目录结构如下图:

使用特权

评论回复
地板
ADZ2016|  楼主 | 2018-9-9 20:37 | 只看该作者
五、 添加文件
1、 将以下
rt-thread-1.2.2\bsp\stm32f10x\applications\application.c
rt-thread-1.2.2\bsp\stm32f10x\applications\startup.c
rt-thread-1.2.2\bsp\stm32f10x\drivers\board.c
rt-thread-1.2.2\bsp\stm32f10x\drivers\board.h
rt-thread-1.2.2\bsp\stm32f10x\drivers\stm32f10x_it.c
rt-thread-1.2.2\bsp\stm32f10x\drivers\stm32f10x_it.h
rt-thread-1.2.2\bsp\stm32f10x\drivers\stm32f10x_conf.h
rt-thread-1.2.2\bsp\stm32f10x\rtconfig.h
rt-thread-1.2.2\components\init\components.c
rt-thread-1.2.2\components\init\components.h
rt-thread-1.2.2\components\drivers\include\rtdevice.h
共11个文件放入到新建立的apps目录下
并修改以下文件:
a、board.c第22行添加”include usart.h”
b、board.h第44行添加”void rt_hw_board_init(void);”

使用特权

评论回复
5
ADZ2016|  楼主 | 2018-9-9 20:38 | 只看该作者
2、 将以下
rt-thread-1.2.2\bsp\stm32f10x\drivers\led.c
rt-thread-1.2.2\bsp\stm32f10x\drivers\led.h
rt-thread-1.2.2\bsp\stm32f10x\drivers\rtc.c
rt-thread-1.2.2\bsp\stm32f10x\drivers\rtc.h
rt-thread-1.2.2\bsp\stm32f10x\drivers\usart.c
rt-thread-1.2.2\bsp\stm32f10x\drivers\usart.h
rt-thread-1.2.2\components\drivers\serial\serial.c
rt-thread-1.2.2\components\drivers\include\drivers\serial.h
共8个文件放入到新建立的driver目录下

使用特权

评论回复
6
ADZ2016|  楼主 | 2018-9-9 20:38 | 只看该作者
3、将以下
rt-thread-1.2.2\bsp\stm32f10x\Libraries\CMSIS
rt-thread-1.2.2\bsp\stm32f10x\Libraries\STM32F10x_StdPeriph_Driver
共2个目录及以下文件复制到新建立的third_part目录下

使用特权

评论回复
7
ADZ2016|  楼主 | 2018-9-9 20:38 | 只看该作者
六、 新建MDK工程
在新建的project目录下新建工程
1、新建一名为:rtt的工程
2、目标芯片:STM32F103ZE

使用特权

评论回复
8
ADZ2016|  楼主 | 2018-9-9 20:40 | 只看该作者
3、不要加入MDK为我们准备的启动文件
4、为新工程添加文件

使用特权

评论回复
9
ADZ2016|  楼主 | 2018-9-9 20:40 | 只看该作者
在以上的各Groups放入以下文件:
a、StartUp放入新建apps、drivers文件夹中的所有内容
b、Apps不添加文件
c、Driver添加以下文件
    1、rt-thread-1.2.2\components\drivers\src\dataqueue.c
d、cm3添加以下文件
    1、rt-thread-1.2.2\libcpu\arm\common目录下所有.c文件(共3个)
    2、rt-thread-1.2.2\libcpu\arm\cortex-m3\cpuport.c
3、rt-thread-1.2.2\libcpu\arm\cortex-m3\context_rvds.S
e、STM32_StdPeriph添加以下文件
     1、third_part\STM32F10x_StdPeriph_Driver\src全部.c文件(共23个)
2、third_part\CMSIS\CM3\CoreSupport\core_cm3.c
3、third_part\CMSIS\CM3\DeviceSupport\ST\STM32F10x\system_stm32f10x.c
4、third_part\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm\startup_stm32f10x_hd.s
           f、kernel添加rt-thread-1.2.2\src下的全部.c文件(共17个)
g、Finsh添加rt-thread-1.2.2\components\finsh下的全部.c文件(共15个)
至此文件添加完毕。

使用特权

评论回复
10
ADZ2016|  楼主 | 2018-9-9 20:41 | 只看该作者
5、为新工程设定包含路径。如下:

使用特权

评论回复
11
ADZ2016|  楼主 | 2018-9-9 20:41 | 只看该作者
6、设定编译链接时的output、listing路径为obj文件夹



使用特权

评论回复
12
ADZ2016|  楼主 | 2018-9-9 20:41 | 只看该作者
7、设置器件类型和定制stm32固件库。如下图

使用特权

评论回复
13
ADZ2016|  楼主 | 2018-9-9 20:42 | 只看该作者
8、加两条链接控制选项


使用特权

评论回复
14
ADZ2016|  楼主 | 2018-9-9 20:42 | 只看该作者
七、 编译链接工程得到目标文件

使用特权

评论回复
评论
sunliezhi 2018-9-12 08:42 回复TA
参考了, 
15
八层楼| | 2018-9-12 12:33 | 只看该作者
非常感谢楼主分享

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

61

主题

1209

帖子

7

粉丝