想学单片机怎么入手?51单片机入门自学最佳指南
曾经我是自学单片机然后跨行成功,今天来分享下自己的经验。
在网上看了很多文章,很多人说现在51单片机已经过时了,建议从STM32开始学习。
或者单片机没有钱途,直接搞ARM+Linux。
即便如此,我的建议还是从51开始学习,51是基础,学习难度也是新手比较容易接受的。
别人怎么学,或者到底有没有从事过这个行业的工作我们都不知道。
为什么我经常跟大家说,我的学习方法和路径适合大多数人参考?
因为我可以向大家保证的是,我就是这么自学过来的,而且我也在这个行业从事了多年的开发。
我的学历各方面也是普通得不能再普通了,我都能学会,而你学不会,这只能说明你方向不对,或者没用心 。
STM32的定位是给有经验的开发工程师快速做出产品,软件是基于固件库开发,不涉及到寄存器的配置,新手直接进入这种开发模式会一脸懵逼,不知道底层的原理。
ARM+Linux确实工资会高些,相对的门槛也高,学习难度大,如果不够自律,新手很难通过自学学会。
而且,如果你做过单片机开发再去学习ARM+Linux的方向,你会比直接学习这个理解得更透彻,基础更好。
打个比方,你直接学习可能需要半年甚至1年,等你做了单片机开发后去学可能只需要1-2个月。
我们学习的目的无非就是想通过这门技术先找到一份工作养家糊口对吧?
我当初自学到就业也就花了3个多月时间,所以从学习周期和回报率来说,先学习单片机开发是非常不错的选择。
至于后期你想不想进阶到Linux看自己选择,一般单片机开发做好就能让你过上不错的生活了。
Ok,那废话不多说,下面开始讲下51单片机入门自学最佳路径:
1.基础电路
学习单片机必须掌握基本的电路基础,比如说欧姆定律,二极管、三极管开关原理,LED灯驱动电路,按键检测电路,ADC检测电路等等。
有个量化标准就是,你学到能把市面上任意一款51开发板上的电路原理图看懂就可以了。
2.学习C语言
通过编写C语言或者汇编来控制单片机,汇编目前用得不多,所以建议只学C语言就行了。
针对单片机c语言我们无际单片机编程专门为零基础学员录制了一套教程,大家可以到我们公号获取。
C语言学完结构体,指针足以,如果指针前期学不懂也没关系,等你多做几个小项目以后就知道怎么用,该用在什么场合了。
3.单片机
能够把每个51单片机外设都用起来(外部中断、定时器、串口等等),最后做一个类似于电子时钟一样的小项目来培养自己的产品思维。
以上就是做单片机开发必备的技能,这些买个开发板跟着视频自学完全能学会。
关于后续如何提升,除了做项目,没有更好的选择,这也是我们特训营的价值之一:以项目为导向。
所以很多人问开发板才几百块,为什么我们收几千,我们除了带做产品,还提供7x12小时的技术支持,不管学什么,我最怕的就是碰到问题找不到可以指导的人 。
最后总结很多新手之所以学不会,有几个原因:
1. 花太多精力去研究模拟电路,数字电路
2. 学习过程中不懂得培养自己的兴趣,学习技术是很枯燥的过程,每学一个知识点最好做点有意思的东西来培养下自己的兴趣,同时还能提升自己编程的熟练度。
3. 没有学习氛围,没人实时指导和纠正方向。
对于新入行的同学,如果你完全没有接触单片机,建议51单片机入门
对于新入行的同学,如果你完全没有接触单片机,我建议51单片机开始入门,这是因为,51单片机在单片机中,甚至可以说,它是最简单的单片机,用来入门非常合适,往后,你就可以学习STM32。
STM32 就开始复杂了,原因是功能强大,你需要配置的程序更多,比如 51 单片机你要控制一个 IO 只需要2个语句,STM32 对于 IO 口,有多种模式和速率供你选择,你甚至还需要打开这个外设的时钟,这个在 51 单片机是没有的,不过你已经有了 51 的基础,这些还是可以进一步学习的,特别是硬件基础比较好的同学,就很顺利了。
文章相对比较长,字数比较多,大家可以先打开头像关注我,之后慢慢看,///插播一条:我自己在今年年初录制了一套还比较系统的入门单片机教程,想要的同学找我拿就行了免費的,私信我就可以哦~点我头像左下角黑色字体加我也能领取哦。最近比较闲,带做毕设,带学生参加省级或以上比赛///
对于库函数和寄存器开发,我建议入门的时候,对于简单的外设,比如 IO 口,串口,可以用寄存器,因为寄存器配置的过程,能让你了解单片机的寄存器,学会看数据手册,等你用寄存器配置过几个外设后,你就可以用库函数了,这样,你也就能体验到库函数为什么会出现了,以及更好的理解什么是库函数。
最后,你说的固件库,HAL,寄存器,应该指的是 STM32,首先 固件库 是 ST 比较早期的库函数,目前一些新的单片机已经没有这个库了,取而代之的,是LL库,HAL则是比LL库更上一层库,这里可能有点难以理解,简单来说,以前 固件库是老的库,而 LL和HAL 库是新的库。LL 库 和 HAL 库一个偏向底层,效率高,一个偏向应用层,兼容性好(STM32可是一个大家族,什么型号的单片机都有)
单片机造价低廉,指51系列,不说arm,稳定性高,极端适合低成本自动化开发。马路上红绿灯,led点阵广告牌,无一不使用,更不要说稍高端的应用。单片机学的好,今后工作有保障。
对于单片机来说,以后的发展可以概括为,更低的功耗,更小的体积,主流单片机和多品种共存。
为了更好地适应新的需求,无论是工业控制还是生活需求,单片机行业肯定会继续开发功能更强大的单片机,功能更多,性能更好,然而单片机的基础都是相通的。
入对门,摆正心态。单片机就像是凿子或者锤子这样的工具,拿到手里就可以使用。一个外行人或者一个小朋友拿到手里不多久也许就会使用了,但是如果你想让他短时间内雕刻一个高水平的雕塑就需要经验积累和耐心了。对自身要求高,不急于得到结果,这才是做单片机项目开发应当有的心态。
这个行业就是一个不断学习,螺旋上升的行业,你需要保持学习的态度,不断地注入新的知识和经验才能保持不落后,这才是适应以后单片机行业未来趋势的最好方法。
对单片机感兴趣的朋友可以找我,我录制了一些关于单片机的入门教程,有需要的童鞋找我拿就行,免费的,私信我“林老师”就可以拿~点击打开我的头像就能领取
相关问答
新手用 51单片机 做什么好呢?我认为作为新手用51单片机最好用PCB万能板焊接一个单片机实验板,一来这样能够提高自己的动手能力;二来可以锻炼自己的编程调试能力。同时我们在焊接时还要设计...
初学者如何快速上手 单片机 ?如果需要快速学习好单片机,要从几方面做好准备:第一,硬件上的准备。器件资料首先得熟悉;芯片架构及指令集得清楚;芯片的外围电路设计从原理到器件选型要掌...如...
从零 制作 单片机 需要哪些知识?从零开始我先认为是所有方面都是零基础了。我来说说需要哪些知识点和学习的步骤吧。首先既然是玩单片机,那肯定是需要编程的,所以需要C语言的知识,其次玩电子...
0基础可以跳过 51单片机 吗?不可以跳过51单片机,如果你刚开始就直接去stm32的话,会有很多基础知识的缺失。导致你学起来比较吃力,很多东西也掌握不透,在学习的过程中会很痛苦,觉得这玩...
51单片机 怎么学啊,看不懂,有推荐的网课和书籍么?王云51单片机教程,很多人都是看这本书入门的,这本书还有配套的教学视频,入门看这本书足够了。王云51单片机教程,很多人都是看这本书入门的,这本书还有配套的教学...
51单片机 入门后怎么提高?掌握单片机入门知识后,建议从以下几个方面提高:深入理解硬件结构:深入了解单片机的寄存器、时序图、中断系统和外围电路,为后续学习奠定基础。熟练掌握编程...
51单片机 基础知识重点?一、STC51单片机外部引脚介绍1、电源和时钟引脚。如Vcc、GND、XTAL1、XTAL22、编程控制引脚。如RST(复位)。3、I/O口引脚。Vcc、GND——单片机电源引脚,不...
51单片机 要学得很精吗?51单片机要学的很精没错,因为:1.51很简单,也很重要,主流的单片机都是在此基础上,所以务必把基础打好。2.“学精”这个词本来就没有标准,个人认为能用51做一...
初学者选择哪种 单片机 学习比较好?单片机的种类很多,若基础知识扎实,不论选择哪款单片机入门皆可,但对于普通的单片机初学者建议还是以简单的AT89S51单片机入门较好。选用该单片机入门有以下优...
许多人都在 学51单片机 学会它有什么用处?是不是可以搞电路设...许多人都在学51单片机学会它有什么用处?是不是可以搞电路设计呀?对的。51单片机基本属于做编程硬件的入门单片机。他用的C语言编程。说白了就是通过编程控...