大方老师讲单片机

大方老师讲单片机

跳过51单片机,直接学STM32有什么严重后果

跳过51单片机,直接学STM32有什么严重后果-LMLPHP

STM32现在之所以这么普及,主要是教程资料非常丰富,一些卖开发板做教程的至少有50%的功劳。

再价格也算合理,导致很多企业用这个单片机去做产品,初学者也更渴望掌握这款芯片。

不过STM32这两年涨价太狠,很多公司采用国产芯片替代了。

我刚接触单片机是在2011年,当时STM32还没现在这么普及。

买开发板就只有例程,还没视频教程。

不然,我也可能直接从STM32开始学了。

人都是浮躁的,总想用最短的时间,学最复杂的东西。

就像我以前去买开发板,明明标配的可能都搞不完,偏偏喜欢上高配。

高配的看起来能做的功能更牛逼,也更接近市面上一些高端产品的功能。

其实买回来,大多数都是丢在一遍吃灰了。

我对陌生的东西,思维还是很古板的,把小白的特性体现的淋漓尽致。

我喜欢从简单的,通俗的入手,系统化地去学习。

如果你认为自己天赋异禀,可以直接学STM32。

但大多数人都是普通人,按照我的路径学习,不敢说快,至少坚持下去肯定是能学会,也能很快达到我的水平。

高手的成长过程可能很牛逼,但并不定适合你。

但是我经历过的路,一定适合大多数人。

我建议新手还是先从51单片机开始学习,不要一上来就打Boss。

前段时间收到了几个小伙伴咨询问题。

他以前是做后端开发的,最近学了STM32,学得很迷茫,改别人的例程用keil编译的时候出现一堆问题,解决起来无从下手。

有些外设虽然也能用起来,但总感觉把控不住,不知道单片机里面具体是怎么工作的。

这就是典型的越级了,学了超出自己认知范围外的东西。

STM32的定位应该是缩短工程师的开发周期,而不是给入门者学习单片机用的。

所以,ST官方提供了一系列便利的支持,比如说固件库,还有图形化配置的STM32CubeMX。

相当于,你可以完全不需要关心STM32寄存器,甚至连数据手册都不用看,就能直接调用库函数把外设用起来。

相反,51单片机则没那么便利,需要你手动去配置寄存器把外设用起来。

这个过程你能同步学习到一些工程师必备的东西,比如说单片机工作原理,内部结构,看数据手册等等。

特别是看数据手册,如果你一点都不懂,后续你用STM32开发项目也会有大量莫名其妙的问题。

就是找不到北那种感觉,可能问题都不知道是什么,更别说解决了。

任何一款基于单片机的产品,99%都需要看一些外围电路的器件数据手册,不然你怎么知道如何去使用它?

看起来,你是走了捷径,节省了学习51单片机的时间,实际上你所花的时间可能更长。

浪费几个月,又可能又要从头开始学。

新手刚入门,也不一定非得从51单片机开始学习,主要是资源少一点的就行,只不过51单片机最经典。

那你通过stm8去学习也是可以的,外设也没多少个,至少用配置寄存器的方式去开发还能把控得住。

跳过51单片机,直接学STM32有什么严重后果-LMLPHP

Stm32内部还是比较复杂的,外设寄存器又多。

跳过51单片机,直接学STM32有什么严重后果-LMLPHP

对于新手来说不是一个很好的选择,本来你可以学会的,因为学习顺序不对导致放弃就可惜了。

除了学习顺序,学习方法和深度都是不同的。

51单片机一般是需要系统学习,熟悉每个外设对应的寄存器配置。

而STM32我几乎没看过多少次数据手册,直接调库把外设用起来就行。

很多东西,你现在理解起来很难,等你经验积累的差不多了,自然而然就领悟了,不需要刻意去学习。

比如看STM32的数据手册,哪怕是看中文的,很多寄存器干嘛用的,你完全看不懂的。

拿我自己为例子,说出来有点讽刺,但是很真实。

我英语水平很差,我是怎么看英文数据手册的,是根据我的经验去猜测和理解数据手册。

我相信,像我这样的工程师应该不在少数。

因为用多了,看多了,很多核心的参数都是相同的。

学STM32也是一样的,想通过数据手册去学单片机简直就是噩梦。

正确的方法,不管三七二十一,哪怕复制例程,我把外设先用起来看看效果再说。

总比看枯燥数据手册有趣多了,用起来了再尝试去改一些参数,改引脚,改定时时间,改通道…

等你把STM32固件库用熟了,发现某个外设的结构体成员对应正好也是对应某个寄存器。

这个时候再针对性去研究对应的寄存器,就会好理解很多。

一般上了STM32这种级别的单片机,通过项目去学习是最快的。

假设在此之前,你已经学过别的单片机了,那这个时候对你最有价值的不是学会STM32。

而是能做项目的能力,从专业术语来说就是项目思维和编程水平。

单纯从开发板上学习,只能学会单片机这个工具,学完你会发现还是不会做项目。

这也是无际单片机编程让学员以项目驱动学习的原因,我自己就是通过项目学会STM32的。

对于不能落地的东西,不管是知识还是想法,都是在消耗时间。

06-10 16:41