硬汉嵌入式论坛

 找回密码
 立即注册
查看: 8083|回复: 10
收起左侧

[有问必答] stm32f4xx_hal_driver与STM32F4xx_StdPeriph_Driver有啥区别?

[复制链接]

8

主题

33

回帖

7

积分

新手上路

积分
7
发表于 2015-6-27 11:53:02 | 显示全部楼层 |阅读模式
一个是用cube一个是自己建工程时候用的?而且两个版本看上去都在持续迭代。代码区别还是有不少的
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117564
QQ
发表于 2015-6-27 12:09:30 | 显示全部楼层
使用库stm32f4xx_hal_driver的话,可以使用个图形化工程生成工具STM32CubeMX,也可以自己建立。

区别还是很大的,很大程度上面stm32f4xx_hal_driver库是为了图形化工程生成工具STM32CubeMX调用方便。
个人观点。
回复

使用道具 举报

8

主题

33

回帖

7

积分

新手上路

积分
7
 楼主| 发表于 2015-6-27 13:45:51 | 显示全部楼层
恩。熟悉两个库还是比较烦人的事情感觉
回复

使用道具 举报

0

主题

32

回帖

32

积分

新手上路

积分
32
发表于 2015-6-28 00:23:23 | 显示全部楼层
HAL的那个库用起来真的好累,层层封装。。。不过分层的思想还是很正确的
回复

使用道具 举报

3

主题

18

回帖

3

积分

新手上路

积分
3
发表于 2016-7-5 09:04:16 | 显示全部楼层
搜了几个海外的论坛包括ST自己的,不少人也有这样的问题并且不知道该用哪一个。
看了这些帖子给我的感觉基本上是,HAL是大方向,因为CubeMX支持它,并且想Keil的MDK中也会提供HAL的库。ST的CubeMX之所以推崇HAL是因为它封装的更好,可能更适合跨平台的代码移植,使得工程师在项目移植上更轻松,这样可以很好地将客户固定在ST上。Standard Peripheral Driver库则针对性更强更直观,但可能缺乏可移植性,当然代码需要的空间也比HAL要小。

以下几个链接讨论的还是比较有用的:
https://my.st.com/public/STe2eco ... p;currentviews=1648

https://my.st.com/public/STe2eco ... p;currentviews=2191

http://electronics.stackexchange ... peripherals-library

http://www.keil.com/forum/59763/
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117564
QQ
发表于 2016-7-5 10:04:14 | 显示全部楼层

回 study_mark 的帖子

study_mark:搜了几个海外的论坛包括ST自己的,不少人也有这样的问题并且不知道该用哪一个。
看了这些帖子给我的感觉基本上是,HAL是大方向,因为CubeMX支持它,并且想Keil的MDK中也会提供HAL的库。ST的CubeMX之所以推崇HAL是因为它封装的更好,可能更适合跨平台的代码移植,使得工程师在项目 .. (2016-07-05 09:04) 
这个问题,我们去年年初的时候就发现了,做了几期教程,没什么人看,不做了。

https://forum.anfulai.cn/forum.php?mod=viewthread&tid=7126
回复

使用道具 举报

3

主题

18

回帖

3

积分

新手上路

积分
3
发表于 2016-7-5 10:37:32 | 显示全部楼层

回 eric2013 的帖子

eric2013:这个问题,我们去年年初的时候就发现了,做了几期教程,没什么人看,不做了。

https://forum.anfulai.cn/forum.php?mod=viewthread&tid=7126 (2016-07-05 10:04) 
你这个链接貌似说的是如何使用CubeMX,是否对HAL进行了对比分析呢?
我发现安富莱的例程里仍然使用的是standard peripheral,并没有采用HAL的驱动文件。
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117564
QQ
发表于 2016-7-5 10:44:33 | 显示全部楼层

回 study_mark 的帖子

study_mark:你这个链接貌似说的是如何使用CubeMX,是否对HAL进行了对比分析呢?
我发现安富莱的例程里仍然使用的是standard peripheral,并没有采用HAL的驱动文件。 (2016-07-05 10:37) 
你想多了,就是简单的几个例子演示而已。看看大家有没有兴趣,有兴趣就继续折腾下,没有兴趣就不折腾了,大家没兴趣,搞了四期就撤了。

明白我的意思了没有。
回复

使用道具 举报

3

主题

18

回帖

3

积分

新手上路

积分
3
发表于 2016-7-5 10:47:06 | 显示全部楼层

回 eric2013 的帖子

eric2013:你想多了,就是简单的几个例子演示而已。看看大家有没有兴趣,有兴趣就继续折腾下,没有兴趣就不折腾了,大家没兴趣,搞了四期就撤了。

明白我的意思了没有。 (2016-07-05 10:44) 
呵呵,可楼主问的是两种驱动的区别,我是针对楼主的问题进行了我的调查和回答,而你却告诉我HAL是CubeMX里推出的,这个我知道呀,可能楼上的几位也都知道吧。但你的链接没有提到两种驱动的区别吧,还是我中文不好理解错了,亦或是你想多了?
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117564
QQ
发表于 2016-7-5 10:56:36 | 显示全部楼层

回 study_mark 的帖子

study_mark:呵呵,可楼主问的是两种驱动的区别,我是针对楼主的问题进行了我的调查和回答,而你却告诉我HAL是CubeMX里推出的,这个我知道呀,可能楼上的几位也都知道吧。但你的链接没有提到两种驱动的区别吧,还是我中文不好理解错了,亦或是你想多了? (2016-07-05 10:47)
[s:142] 不纠结这个问题了,干活。
回复

使用道具 举报

3

主题

18

回帖

3

积分

新手上路

积分
3
发表于 2016-7-5 10:59:10 | 显示全部楼层

回 eric2013 的帖子

eric2013:[s:142] 不纠结这个问题了,干活。
 (2016-07-05 10:56) 
[s:142] 期待更多更好的例程。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-8-14 17:29 , Processed in 0.045369 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表