庸浅的小羊羔 发表于 2020-9-21 22:54:04

CUBEMX的 库和KEIL的库有什么不同

STM32cubemx软件有对应各个系列芯片的库.
使用cubemx,生成代码框架,比如生成MDK的代码框架。但MDK也有自己的PACK。那么MDK的PACK和CUBEMX的库有什么区别,两者时什么关系呢?

radio2radio 发表于 2020-9-22 00:58:28

我也曾经有过同样的问题,用得多了以后,根据我的理解:

1. 新开一个STM32的工程项目,可以从CubeMX开始,也可以从MDK+RTE/CMSIS...开始,出来的整体框架就不同。
2. 根据软件版本的新旧,两种方法可以直接选用中间件可能有不同,比如FreeRTOS, FileSystem,IOT;
3. 两种方法可以使用的底层驱动也不同(可能有重叠),CubeMX有HAL和LL库。 MDK有ARM-RTE+HAL+LL等。 其实底层驱动是可以混用的,混用的缺点是有可能增加代码长度。
4. 所有底层驱动都是STM公司的团队开发的,可能是不同的团队,具体看看文件头就知道了。
5. CubeMX是STM32专用的,同一套代码,很容易修改来为不同系列的IC使用。 而MDK的框架的代码,有可能可以适用于其他品牌的IC,比如NXP,这也不是什么优点,通常很少有一个项目会在不同品牌的IC之间变化。
6. 其实两种框架,没有好坏之分,喜欢哪个就用哪个,哪个可以找到的例程最接近我的项目,就用哪个。
(以上随便想到哪里就说哪里的)

庸浅的小羊羔 发表于 2020-9-22 09:52:17

理论上CUBEMX生成MDK代码框架后,是不是MDK是不是就可以不安装库了,因为CUBEMX生成代码时,将相关的库都已经拷贝在项目文件夹里了吧

butterflyspring 发表于 2020-9-28 15:53:54

庸浅的小羊羔 发表于 2020-9-22 09:52
理论上CUBEMX生成MDK代码框架后,是不是MDK是不是就可以不安装库了,因为CUBEMX生成代码时,将相关的库都已 ...

差不多。 CUBEMX生长的项目下面都是基于STM公司团队开发的库文件,不需要其他的文件了。而且这个项目文件是为了适合在MDK下面编译运行的,相当于帮助你在MDK下建立一个完整的工程框架了。
页: [1]
查看完整版本: CUBEMX的 库和KEIL的库有什么不同