wang6623 发表于 2022-7-31 20:26

在KEIL下搭建基于 STM32 和 rt-thread 的开发环境

RT_thread开发人员是用MDK(Keil)进行开发管理的,当然也提供了IAR等开发环境的配置。针对初学者都提供了相关的教程和案例,不过项目开发,还是得讲究一下如何有效搭建开发环境和配置。

MDK(Keil)的安装和配置(**)就略过了。能进行开发移植系统的程序员如果还不会最基础的开发环境搭建,那……去闭关修炼吧。

芯片选择:ST(意法半导体)-STM32F103ZE
原因:

开发必备。大多单片机爱好者,学习过程基本是:菜鸟52->逐步深入stm32->深度中毒ARM。
ST芯片应用广泛。ST的性价比(点赞)和高性能在各领域都发挥着重要作用(好用吖)。
ST开发容易。固件库和资料都很全,网上大把教程和学习板(大学期间的零花钱都被那几家X宝店赚了。。。)。而且固件库具有通用性,熟悉了一个产品线的开发之后,比较容易能够切换到其它的产品线。
刚好手上有核心板,仿真器随便捡一个都能适应,呵呵

wang6623 发表于 2022-7-31 20:27

现在讲解一下项目开发过程
上RT_Thread官网,下载源码包,github主线有1.2.x、2.0.x和最新版本。浏览了各家说法后,我决定先去移植1.2.x版本,理由嘛,这货内容相对比较少,适合细细研究(主要是源码能大致看完和框架能更好的理解)。而且我的项目芯片的flash和RAM都比较小,剪裁一个稳定且小系统对我很重要。迟点再研究2.0.x也不迟,虽说框架不一样。

wang6623 发表于 2022-7-31 20:28

框架图

wang6623 发表于 2022-7-31 20:29

1.2.x源码-工程文件

wang6623 发表于 2022-7-31 22:16

bsp是放置各种芯片移植开发的配置文件。比如现在要开发STM32F103ZE芯片->对应目录是stm32f10x->目录里面包含应用层、驱动层和各开发环境的工程项目文件,初学者可以就此打开,并且研究其在移植开发中具体需要哪一些必需文件。(移植需要文件)

wang6623 发表于 2022-7-31 22:16

components是放置各种组件的。所谓组件,就是一些配套的,做好的应用,方便你使用。(我理解的意思)。里面的finsh组件很不错,一定要去涉及。(看需求移植,开发过程中最好配上finish)

wang6623 发表于 2022-7-31 22:17

documentation是,哦。

examples是一些关于rt_thread应用时一些API、编程、使用样例程序。还没细细研究过,仅供参考。

wang6623 发表于 2022-7-31 22:18

include是包含了RT-Thread内核头文件,移植的时候需要包含路径。(移植需要文件)

wang6623 发表于 2022-7-31 22:28

libcpu是存放各种内核文件,在移植中必需找到与自己芯片对应的内核文件。比如现在要开发STM32F103ZE芯片->对应arm目录下->cortex-m3内核。(移植需要文件)

wang6623 发表于 2022-7-31 22:31

src是RT-Thread内核源文件。(移植需要文件)

wang6623 发表于 2022-7-31 22:33

tools是支持各种集成开发环境的python文件,如常见的iar.py/keil.py/sconsui.py/vs2012.py(不会用)

wang6623 发表于 2022-7-31 22:36

wang6623 发表于 2022-7-31 22:38

App是放和应用有关的程序文件。

wang6623 发表于 2022-7-31 22:41

Board是放置和电路板设置有关的程序文件,比如,串口的管脚定义。这个目录里面文件的意义,是把固件库 & rt-thread 与 应用有关的程序文件隔离开来。个人认为,这一层的作用是很重要的,要好好规划。

wang6623 发表于 2022-7-31 22:43

Driver 目录。里面放置 rt-thread 提供的各种片上外设的驱动程序,需要从 rt-thread 的 bsp 子目录里面对应的芯片驱动中拷贝过来。之所以需要拷贝而非简单的引用,是因为这一层的驱动程序可能需要根据应用的需要做定制。

wang6623 发表于 2022-7-31 22:44

Fireware 目录。里面放置 ST 固件库所需的文件,比如 stm32f10x_conf.h。

wang6623 发表于 2022-7-31 22:44

RT-Thread 目录。里面放置 rt-thread 所需的配置文件,比如 rtconfig.h,组件,cpu内核,源代码文件等

wang6623 发表于 2022-7-31 22:45

Listings\Output是keil编译输出文件

yiyigirl2014 发表于 2022-8-6 08:32

如果把资料整合一下会更好

wanduzi 发表于 2022-8-10 16:30

厉害,楼主
页: [1] 2 3
查看完整版本: 在KEIL下搭建基于 STM32 和 rt-thread 的开发环境