首先肯定一点的是,编程是完全可以自学的,并且只要掌握了中学水平的知识就可以学会。下面我来给朋友们分享一下我是如何自学
我记得最初学单片机编程语言是学的汇编语言,在当时比较流行的单片机是MSC-C51为内核的芯片,比如AT89C51/AT89S51等,我在初期学单片机时,听说汇编语言比较接近单片机的底层,我想为了帮助自己更好地理解单片机内部的结构,我自己买来了一本单片机汇编语言教程,自己一条指令一条指令的理解,我大约花了二个月的时间终于啃下了这111条指令。接下来我又自己弄一些,自己焊接组装一个简易的单片机实验板,刚学的时候,板子上的元器件不需要很多,一般配备发光二极管、数码管、按键、蜂鸣器就够了。然后我从网上下载一些关于单片机编程的视频,按照“鹦鹉学舌”的方法,把视频上的小程序跟着抄下来,下载到单片机中观察现象,初期的时候肯定
在编译程序时会出现各种问题,有的程序你明明跟视频上的一摸一样,但是当你编译时,要么会出现语法错误;要么会出现标点符号上的错误。这时候是最能考验自己的毅力了,我们必须要有耐心。
当我们通过多次的修改,成功点亮一个小灯或者数码管的时候,对于我们这样的初学者来说是最喜悦的时刻,它会给你增添学的动力,也会使我们一步步喜欢上单片机。当我们按照人家视频上的程序进行“照搬照抄”,并且能够顺利地编译下载成功的时候,就说明了我们已经过了“鹦鹉学舌”这一阶段了。
接下来,我们一定要勤动手,一定不要感觉自己会了图省事,自己复制粘贴别人的程序。我们要做的是“照葫芦画瓢”,先关掉视频,按照自己对程序的理解再敲一遍程序,对于有些程序段不理解的我们甚至先死记硬背下来,这样经过多次的默写背诵代码,编写便理解,这样不出一个星期就会出效果。
当我们把“照葫芦画瓢”这一关克服之后,我们就可以通过修改别人的程序来达到自己想要的控制功能了,这一阶段我把它称之为“他山之石,可以攻玉”。当我们能够通过修改别人的程序,达到自己的控制目的,这就说明我们已经把这个程序理解地八九不离十了。
最后的阶段就是理论结合实际了,我们可以自己编写一些简单实用的小程序,比如电子钟、交通灯、抢答器以及计分牌等。我们在自学编程时要有信心、要有耐心和恒心,有不达目的不罢休的毅力。通过三个月的学,我认为基本上能够入门。
我在学单片机编程上走了一些弯路,以我的学经历看,对于想要快速掌握单片机编程的朋友,我认为直接学单片机C语言就可以了。我们知道汇编语言虽然效率高,执行速度快,但是在它的组织结构和修改维护方面比较麻烦,每条语句读起来比较晦涩难懂。我建议最好直接学单片机C语言,这也是目前编程领域使用的主流语言之一。
无论是学8位单片机还是32位单片机,正确的学方式和心态都很重要。我有几条建议: 1、学单片机没想象的那么难,不要给自己太大的心理压力。如果觉得32位单片机入门难度比较大话,可以从8位的51单片机入手。把8位单片机的IO操作、定时器、中断、串口等功...
如果学过51单片机,能够深入理解其硬件结构,并对寄存器有深入的理解,能够利用单片机完成一些小制作,编写过些程序代码,能够解决开发过程中的问题,对接口电路有熟悉,对相关接口芯片的时序有一定的认识。再学STM32难度并不是很大的,个人还是建议学...
从锂电池组PACK跟BMS结合起来的经验来说一下吧。 首先,单片机监控电池的实时电量,如果仅仅通过监控锂电池的电压来监控锂电池的实时电量是不够准确的,可以说误差会特别大。这就是我们常说的SOC(剩余电量)的问题,因为大家都知道,锂电池在充电或者放电的...
首先你要有一个开发板,如果你是刚入门单片机领域的,建议从视频开始学。书籍方面最起码要有一本C语言书籍,方便查阅C语言知识点。 刚开始学的时候注意以视频为主,反复看都看不懂的知识点可以看书,还是不懂的话就要上网搜寻答案了(当然如果身边有前辈...
首先说些最基本的软件,也是必须的、最低配的。 MDK 软件,即 KEIL: 这个软件主要就是用来编辑、编译、下载代码的,这个开发平台一定要好好研究一下,因为这里集成了很多强大的调试功能,掌握了这些功能将极大的方便你寻找 BUG ,因为在软件开发方面,没人...

