完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
方式1:如果是用Keil生成工程,然后配置库的时候调用Cube MX来生成驱动代码,会有很多冲突,尤其是配置USB设备时冲突无法解决。
方式2:如果用Cube MX生成Keil工程,那么可以顺利编译通过,但是如果想使用Keil的一些库的时候,keil又会要求调用Cube MX来生成驱动支持,这时自动产生新的Cube MX工程,回到方式1形成死循环。 |
|
相关推荐
13个回答
|
|
你说的方式1:不建议使用。配置RTC的时候Cube MX要求输入初始值,这也是不合理的。
方式2:没有试过用Cube MX生成Keil工程再去加载keil的其他库,没法回答。 |
|
|
|
CubeMX是初始化代码生成工具,可以直接生成MDK工程、IAR工程和TrueSTUDIO工程等。
CubeMX生成的代码使用的是HAL库,HAL库已经是一个很完备的库,你用其他库能够实现的功能,HAL库基本都能实现。 如果使用CubeMX生成工程,又想使用Keil中的库,最好手动移植。 推荐使用CubeMX开发。 |
|
|
|
UserMen 发表于 2018-11-6 19:30 那你用哪种? |
|
|
|
通过安装MDK-ARM和STM32CubeMX可以看出,他们分别有一套开发包,那这2者有没有联系?通过查看相关的Release Notes文件可知,他们都是ST官方推出的STM32Cube开发包,只不过由于业务关系,MDK-ARM下的开发包版本比STM32CubeMX低,且在MDK-ARM中使用ARM的版本控制,其版本命名也不同,但本质是一样的,
如下图示: 其实你可以自行替换,但需要注意包含路径以及替换完整性。 上述2者都独立存在且已经测试成功,自己替换的不见得会成功但不是不可能。 参考: http://jingyan.eeboard.com/article/75106 |
|
|
|
自己移植的工作比较多,而且没调整一次基本配置就要CubeMX来重新生成代码再移植一次,尤其是USB设备更是头大。
目前来看,底层配置CubeMX的好,应用层库Keil的好,但是在Keil库配置里很多底层依赖又会要求选择Device支持,而这又要求CubeMX支持,成了一个死循环了。 |
|
|
|
搞不懂你,直接用CUBE就好了,还弄这么多
|
|
|
|
吕少大大 发表于 2018-11-6 19:46 讲述的很明白,学习。 |
|
|
|
Keil在USB,file system上面的应用层更好使用。因为我用的F7系列,仅有CUBE的支持是不够的。 |
|
|
|
一样有FATFS
|
|
|
|
:):):):):):)
|
|
|
|
淡定,淡定,淡定……
|
|
|
|
学习了!
|
|
|
|
会用哪个就用那个吧
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
hal库中i2c卡死在HAL_I2C_Master_Transmit
981 浏览 1 评论
LL库F030进行3个串口收发,2个串口为232,一个为485,长时间后,会出现串口1停止运行,另外两个正常,只有重启复原
1464 浏览 1 评论
524 浏览 0 评论
1057 浏览 0 评论
1199 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-5 07:28 , Processed in 0.944239 second(s), Total 99, Slave 80 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号