OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 1222|回复: 13

从C51过渡到STM32是学习寄存器编程还是库开发编程好?

[复制链接]

1

主题

2

帖子

0

精华

新手入门

积分
6
金钱
6
注册时间
2024-2-6
在线时间
1 小时
发表于 2024-2-6 11:10:33 | 显示全部楼层 |阅读模式
1金钱
有C51的基础,熟练掌握STC15W和STC8H的keil C51编程,能力偏硬件,软件基础差些。
已经买了正点原子开发板,学习编程感觉库开发比较难理解、代码也比寄存器版长;C51就是基于寄存器的编程,因此偏向于先学习寄存器开发。
但当当的书基本都是库开发为主,看到一本《STM32单片机全案例开发实战》目录看起来很亲切啊,跟51的风格比较像,想下手买,但只有一条评论,是一本偏门的书。
请大神们指点一下。

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

10

主题

112

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1123
金钱
1123
注册时间
2021-6-17
在线时间
205 小时
发表于 2024-2-7 09:46:56 | 显示全部楼层
库函数相当于对寄存器操作做了一次封装
回复

使用道具 举报

31

主题

1951

帖子

3

精华

论坛元老

Rank: 8Rank: 8

积分
4417
金钱
4417
注册时间
2018-5-11
在线时间
922 小时
发表于 2024-2-7 10:59:18 | 显示全部楼层
求人不如求已,
库函数受制于人,
看着头晕,
如果问我的话,
还是寄存器操作便捷。
我的开源链接 https://github.com/ShuifaHe/STM32.git  请关注,点赞支持哦。
回复

使用道具 举报

0

主题

451

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3316
金钱
3316
注册时间
2016-3-19
在线时间
815 小时
发表于 2024-2-7 12:53:06 | 显示全部楼层
个人观点

如果是M3  M0 这类的内核

单纯学习的话  使用寄存器   做项目的话  使用库函数

如果是更高内核的话  还是建议库函数  甚至是HAL库

因为更高内核的处理器  可能需要关注的方向是不一样的  

选择适合自己的

Nothing is impossible
回复

使用道具 举报

16

主题

426

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2671
金钱
2671
注册时间
2018-11-8
在线时间
430 小时
发表于 2024-2-7 15:30:06 | 显示全部楼层
用寄存器的话 你自己动了什么东西你自己最清楚了 但是新学的外设的配置的顺序 不啃手册肯定不知道
用库函数的话 只要相关结构体都赋值了 大概率单片机就能动起来了 但是它到底怎么动的 不看源码完全不知道

一个像手动挡 要学松离合的时机 换挡时机才能更好的开车,一个像自动挡给油车就走了 为啥走的根本不知道
回复

使用道具 举报

0

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
88
金钱
88
注册时间
2020-11-22
在线时间
31 小时
发表于 2024-2-10 11:43:32 | 显示全部楼层
我也类似,用惯了寄存器。想用库函数或HAL,查找可用的函数来费老劲了。
回复

使用道具 举报

1

主题

2

帖子

0

精华

新手入门

积分
6
金钱
6
注册时间
2024-2-6
在线时间
1 小时
 楼主| 发表于 2024-2-15 15:33:38 | 显示全部楼层
yuxigk 发表于 2024-2-10 11:43
我也类似,用惯了寄存器。想用库函数或HAL,查找可用的函数来费老劲了。

对!我现在也不知道怎么找对自己需要的库和函数,有没有这方面的书?
回复

使用道具 举报

28

主题

360

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1027
金钱
1027
注册时间
2021-2-4
在线时间
146 小时
发表于 2024-2-16 14:28:10 | 显示全部楼层
Alex368 发表于 2024-2-15 15:33
对!我现在也不知道怎么找对自己需要的库和函数,有没有这方面的书?

官方手册有写了函数
回复

使用道具 举报

70

主题

6697

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
12691
金钱
12691
注册时间
2012-11-26
在线时间
3710 小时
发表于 2024-2-16 18:52:13 | 显示全部楼层
无脑选择   库

但是遇到问题要有去看寄存器的能力,调试时,要去看寄存器状态
学无止境
回复

使用道具 举报

0

主题

19

帖子

0

精华

初级会员

Rank: 2

积分
88
金钱
88
注册时间
2020-11-22
在线时间
31 小时
发表于 2024-2-16 21:21:17 | 显示全部楼层
Alex368 发表于 2024-2-15 15:33
对!我现在也不知道怎么找对自己需要的库和函数,有没有这方面的书?

HAL和LL能找到手册,标准库不知道有没有手册。但在手册中找自己需要的函数也很难
回复

使用道具 举报

3

主题

1906

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4100
金钱
4100
注册时间
2018-8-14
在线时间
695 小时
发表于 2024-2-17 12:19:06 | 显示全部楼层
学寄存器就好比是学会基本数学运算
库就好比给你个计算器

不会基本的数学运算, 就拿着个计算器耍一下是可以的, 但不可能做项目。
回复

使用道具 举报

11

主题

2103

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4588
金钱
4588
注册时间
2015-1-10
在线时间
574 小时
发表于 2024-2-19 12:02:13 | 显示全部楼层
学寄存器,用库
回复

使用道具 举报

55

主题

1231

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2624
金钱
2624
注册时间
2014-2-13
在线时间
514 小时
发表于 2024-2-19 14:07:22 | 显示全部楼层
用库省事,直接移植,缺点是按照别人的思路来玩,寄存器自己来写思路清晰,我最容易犯错的是配置的时候容易搞错位
技术交流,Sell 中颖单片机,欢迎私信骚扰
回复

使用道具 举报

10

主题

213

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
5607
金钱
5607
注册时间
2016-12-19
在线时间
724 小时
发表于 2024-2-20 05:55:54 | 显示全部楼层
先寄存器,后使用库
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-23 09:39

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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