社区导航

 
快捷导航
  • 首页
  • 论坛
  • 查看新帖
  • 最新回复
  • 社区活动
  • 联系管理员
  • 消灭零回复
  • E金币兑换
  • 干货
搜索
查看: 1247|回复: 21

[讨论] 上了贼船,想下真难!关于STHAL的感觉

[复制链接]

1万

TA的帖子

33

TA的资源

版主

Rank: 6Rank: 6

发表于 2017-2-13 17:40:22 | 显示全部楼层 |阅读模式
本帖最后由 dontium 于 2017-2-13 22:05 编辑

     因为近来做STM32F429,用到STM32CubeMX,感觉非常方便,特别是外围的配置一目了然,随后的项目就以此为基本,做了起来!

       STM32CubeMX用的是HAL库,(本来对ST的库就很反感):
                   库中的函数是怎么用的,为什么这样用,要掌握它,还是要看手册,而看了手册,又要和库结合,因为库与手册上的寄存器没有什么联系, ---------害人:又要多学它的库。
                  库函数中,用到很多结构体,有些成员是与寄存器无关的,只是保存外围的状态而已, ----- 如果中途改来直接写寄存器,这些状态就没有更改, 导致错误 -------程序进入Error_Handler()或硬件错误!

         真是害人的库啊,对我这个喜欢看手册来掌握CPU的人,打击很大!
此帖出自stm32/stm8论坛


回复

使用道具 举报

6511

TA的帖子

17

TA的资源

版主

Rank: 6Rank: 6

发表于 2017-2-13 19:29:45 | 显示全部楼层
大神也有心烦的事啊
training


回复

使用道具 举报

6249

TA的帖子

14

TA的资源

版主

Rank: 6Rank: 6

测评达人

发表于 2017-2-13 20:04:32 | 显示全部楼层
可以试试mbed


回复

使用道具 举报

1万

TA的帖子

15

TA的资源

版主

Rank: 6Rank: 6

发表于 2017-2-13 20:27:03 | 显示全部楼层
你即然上了贼船就别想下了,我在贼船上混了不久,看来真是同志啊

点评

好久没见你露面了,是发财才回来?  详情 回复 发表于 2017-2-13 22:06
http://shop34182318.taobao.com/


回复

使用道具 举报

4448

TA的帖子

9

TA的资源

版主

Rank: 6Rank: 6

发表于 2017-2-13 20:53:30 | 显示全部楼层
现在好多厂家都在推库
好处是不同型号间的代码移植起来比较方便

以前用NXP的LPC1788和ADI的ADUCM36X时都是直接操作寄存器
例程简单,用起来也方便,就是移植太麻烦了
虾扯蛋


回复

使用道具 举报

1万

TA的帖子

33

TA的资源

版主

Rank: 6Rank: 6

 楼主| 发表于 2017-2-13 22:06:42 | 显示全部楼层
ddllxxrr 发表于 2017-2-13 20:27
你即然上了贼船就别想下了,我在贼船上混了不久,看来真是同志啊

好久没见你露面了,是发财才回来?

点评

我还是外甥打灯笼-------照旧  详情 回复 发表于 2017-2-14 07:57


回复

使用道具 举报

529

TA的帖子

1

TA的资源

版主

Rank: 6Rank: 6

发表于 2017-2-13 22:49:52 | 显示全部楼层
是这个道理
LPC4370,秒天秒地秒空气


回复

使用道具 举报

2622

TA的帖子

0

TA的资源

纯净的硅(高级)

Rank: 6Rank: 6

发表于 2017-2-13 22:52:39 | 显示全部楼层
用库方便,我调完了会改成寄存器操作,速度会快很多

点评

调通了又调回去,我是不会干这种事地,因为库本身就避免了你的程序出错,你为了追求速度又变为寄存器。这是不画蛇添足是什么?????  详情 回复 发表于 2017-2-14 08:07
对,我也不赞成使用库,有时间改就会把它改成寄存器直接写入  详情 回复 发表于 2017-2-13 23:26
作为一个水军,就是尽量的多回帖,因为懂的技术少,所以回帖水分大,见谅!
EEWORLD开发板置换群:309018200,——电工们免费装β的天堂,商家勿入!加群暗号:喵


回复

使用道具 举报

1万

TA的帖子

33

TA的资源

版主

Rank: 6Rank: 6

 楼主| 发表于 2017-2-13 23:26:29 | 显示全部楼层
elvike 发表于 2017-2-13 22:52
用库方便,我调完了会改成寄存器操作,速度会快很多

对,我也不赞成使用库,有时间改就会把它改成寄存器直接写入

点评

ST公司的攻城师都很蠢么,没有事开发个库。用库是更高的一个档次,就像你的手机软件升级。  详情 回复 发表于 2017-2-14 08:04
老兄,不用库是不行地,这个我早就说过。是不是在咱坛子里说,我就忘了。首先USB那块你自己写是通不过的。因为协议太麻烦。再有CAN那块,你不参考例程是调不通的,还有网络那块更是不用说了。这么说吧。你简单的应用  详情 回复 发表于 2017-2-14 08:01


回复

使用道具 举报

1万

TA的帖子

15

TA的资源

版主

Rank: 6Rank: 6

发表于 2017-2-14 07:57:17 | 显示全部楼层
dontium 发表于 2017-2-13 22:06
好久没见你露面了,是发财才回来?

我还是外甥打灯笼-------照旧
http://shop34182318.taobao.com/


回复

使用道具 举报

1万

TA的帖子

15

TA的资源

版主

Rank: 6Rank: 6

发表于 2017-2-14 08:01:10 | 显示全部楼层
dontium 发表于 2017-2-13 23:26
对,我也不赞成使用库,有时间改就会把它改成寄存器直接写入

老兄,不用库是不行地,这个我早就说过。是不是在咱坛子里说,我就忘了。首先USB那块你自己写是通不过的。因为协议太麻烦。再有CAN那块,你不参考例程是调不通的,还有网络那块更是不用说了。这么说吧。你简单的应用,比如UART是可以用寄存器的,坚决不同意完全用寄存器。
http://shop34182318.taobao.com/


回复

使用道具 举报

1万

TA的帖子

15

TA的资源

版主

Rank: 6Rank: 6

发表于 2017-2-14 08:04:12 | 显示全部楼层
dontium 发表于 2017-2-13 23:26
对,我也不赞成使用库,有时间改就会把它改成寄存器直接写入

ST公司的攻城师都很蠢么,没有事开发个库。用库是更高的一个档次,就像你的手机软件升级。

点评

手机软件越升级越慢,占存储越多  详情 回复 发表于 2017-2-14 09:26
http://shop34182318.taobao.com/


回复

使用道具 举报

1万

TA的帖子

15

TA的资源

版主

Rank: 6Rank: 6

发表于 2017-2-14 08:07:32 | 显示全部楼层
elvike 发表于 2017-2-13 22:52
用库方便,我调完了会改成寄存器操作,速度会快很多

调通了又调回去,我是不会干这种事地,因为库本身就避免了你的程序出错,你为了追求速度又变为寄存器。这是不画蛇添足是什么?????

点评

一旦用它的库,再想不用就非常麻烦。 用它 的库时,还要详细地掌握它的每个函数的功能特点,又多了些麻烦。  详情 回复 发表于 2017-2-14 09:01
http://shop34182318.taobao.com/


回复

使用道具 举报

1万

TA的帖子

33

TA的资源

版主

Rank: 6Rank: 6

 楼主| 发表于 2017-2-14 09:01:20 | 显示全部楼层
ddllxxrr 发表于 2017-2-14 08:07
调通了又调回去,我是不会干这种事地,因为库本身就避免了你的程序出错,你为了追求速度又变为寄存器。这 ...

一旦用它的库,再想不用就非常麻烦。
用它 的库时,还要详细地掌握它的每个函数的功能特点,又多了些麻烦。

点评

就是让你中招,怎么上了贼船,想洗手不干?????  详情 回复 发表于 2017-2-14 10:51


回复

使用道具 举报

727

TA的帖子

0

TA的资源

纯净的硅(高级)

Rank: 6Rank: 6

爱原创

发表于 2017-2-14 09:26:47 | 显示全部楼层
ddllxxrr 发表于 2017-2-14 08:04
ST公司的攻城师都很蠢么,没有事开发个库。用库是更高的一个档次,就像你的手机软件升级。

手机软件越升级越慢,占存储越多


回复

使用道具 举报

31

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2017-2-14 09:58:40 | 显示全部楼层
对于公司多人合作模式来说,用库方便作不同应用的移植。但对于个人来说,我以前也一直偏向于看手册进行寄存器操作,感觉对寄存器操作才能更加熟悉芯片。

点评

又回到寄存器还是库的原点上了,我前面的贴子也说过,最好两者结合用,这样高难的我也可以用,寄存器的也可。  详情 回复 发表于 2017-2-14 10:53
请修改签名 ^_^


回复

使用道具 举报

1万

TA的帖子

15

TA的资源

版主

Rank: 6Rank: 6

发表于 2017-2-14 10:51:58 | 显示全部楼层
dontium 发表于 2017-2-14 09:01
一旦用它的库,再想不用就非常麻烦。
用它 的库时,还要详细地掌握它的每个函数的功能特点,又多了些麻 ...

就是让你中招,怎么上了贼船,想洗手不干?????
http://shop34182318.taobao.com/


回复

使用道具 举报

1万

TA的帖子

15

TA的资源

版主

Rank: 6Rank: 6

发表于 2017-2-14 10:53:19 | 显示全部楼层
hjl2832 发表于 2017-2-14 09:58
对于公司多人合作模式来说,用库方便作不同应用的移植。但对于个人来说,我以前也一直偏向于看手册进行寄存 ...

又回到寄存器还是库的原点上了,我前面的贴子也说过,最好两者结合用,这样高难的我也可以用,寄存器的也可。
http://shop34182318.taobao.com/


回复

使用道具 举报

1124

TA的帖子

0

TA的资源

五彩晶圆(初级)

Rank: 7Rank: 7Rank: 7

爱原创爱助人

发表于 2017-2-14 11:17:43 | 显示全部楼层
本帖最后由 gmchen 于 2017-2-14 11:19 编辑

库肯定比寄存器高级。
高级的东西使用方便,容易移植,容易共享,好处多多。但是越高级的东西,通常效率越低,能发挥的余地越少。用寄存器的话,对设计者的要求很高,唯一的好处是可以充分发挥人与机器的效率。
就像照相机,傻瓜照相机人人会用,但是照片千篇一律。手动照相机使用麻烦,但是可以拍出摄影师想要的效果。
当然从发展的观点看,傻瓜型的东西将越来越多,汽车都要自动驾驶了不是!重要的前提是:设计傻瓜产品的必须是一个聪敏绝顶的家伙,否则就是一个灾难。

点评

说的很好确实如此,  详情 回复 发表于 2017-2-19 08:28


回复

使用道具 举报

182

TA的帖子

0

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2017-2-14 13:45:57 | 显示全部楼层
STM32L152RE   USB部分不用库一个星期调不通,最后上了库就好了,希望后入者不要入坑,直接用官方的库


回复

使用道具 举报

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

本版积分规则

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

小黑屋|手机版|Archiver|电子工程世界 ( 京ICP证 060456

GMT+8, 2017-11-19 16:49 , Processed in 0.660101 second(s), 29 queries , Redis On.

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