几年前,我是通过郭老师的十天学会单片机教程和配套开发板入门单片机的。
最近被学员问到比较多的问题就是,单片机的学习周期大概要多久。
今天在这里统一回答下。
这个主要是要看学到什么程度,不过十天对大多数人来说都不太现实。
因为做单片机开发,不单单是学习单片机而已,而是一整个知识体系。
这个知识体系里包含了3大模块:基础电路、C语言/汇编、单片机。
一、基础电路
基础电路如果你没看到这篇文章,光这块的内容就够你学几个月,甚至学几年都学不懂。
相信行内的人都知道,我这里讲的就是模拟电路,这玩意还是挺复杂的,学习门槛也高。
至少是高中水平以上的数学打底,电路需要各种高数公式计算,关键是如果你是从事单片机开发,即便学了其实也很难用到。
不管你以后是想深造硬件电路方向,或者是单片机软件开发方向,我都不建议前期花太多时间去研究模拟电路,只需要会基本电路:欧姆定律,串并联电路,电阻电容、二极管,三极管就差不多了。
原因很简单,前期你经验有限,不可能把模拟电路吃透,很多知识我们只有经历了项目,再回过头来看这些理论,根据经验去理解理论你才能看的懂。
就好比,我英文水平一般,如果我完全没接触过这个行业,英文的芯片手册根本看不懂。
等我做到一定经验的时候,通过经验去理解手册就能看懂70%,就是这个道理。
很多人没经验,以为先有理论,把基础打扎实,这样就能看懂了,这个方向是错误的,至少我个人是这样认为的。
我的方法是,先学基本元器件的作用和单片机最小系统电路,然后就去研究市面上那些51开发板原理图,第一步先看懂这些原理图,这个时间我预计要1周。
二、C语言/汇编
汇编目前其实还是用得比较少的,我的建议前面可以先不学,以学习C语言为主。
C语言根据我们的课程规划,内容大概有20多个章节,学习周期大概需要7-10天。
三、单片机
单片机可以和C语言同步学习,因为你学习C语言的过程中需要去实践,传统纯软件可能会用C-Free之类的工具。
如果你是做单片机开发的话,可以直接把写好的程序烧录到单片机上实践,控制LED亮灭,实现流水灯的效果。
培养单片机C语言编程的思维,这个跟纯软件的思维还是有点区别的。
如果同时学C语言和单片机的话预计需要15-20天左右。
加上硬件基础的5天,入门总共需要25天。
这是一个入门的级别,达到这个级别以后你就可以尝试用51单片机去编写一些简单的小项目,比如说用数码管做一个时钟。
这是必须要去做的环节,一个项目能巩固你前期所学的知识,进一步地加深你的理解,初步锻炼你的功能实现能力。
如果这步直接省略,去进阶更高级的单片机,比如说STM32,那你后续每学一个知识点都会存在大量的问题,自信也会被一点点摧毁。
很多学到一半觉得太难了,最终放弃,大多都是这个原因,
其实单片机并不难,门槛也没一些文章说得高,但是学这个比较讲究细节,学习路径不能错,然后按部就班,把该学的知识掌握了再继续往下,相对就比较顺利了。