学单片机首先得有电路基础。至少你拿到任何一块儿板子器件得认识的七七八八的。能够看懂一些常见的电路。能够设计至少一部分应用电路。其次,得有实际操作能力,设计完原理图起码得会画图吧,完了,投板子,买器件,自己焊接。再次。自己的板子,自己要用程序驱动一下,就需要写程序了,先驱动个灯,然后再驱动蜂鸣器。等等。。。 其实,学单片机有个捷径。1.认知元器件,并理解其作用,先认识简单的阻容,然后是其它的。当然,这个是慢慢积累的,有的器件工作了好多年,也不一定认识。当然,这种极少极少。2.不要看单片机,看数字电子计算机原理。就看8086。切记,数字电子计算机。从简单的触发器讲起的。要看明白mcu内部的累加器,接口部件是怎么工作的。地址寻址是怎么回事儿,反复读,反复读。前后对照的读。要做到最后,每条汇编指令运行时,内部寄存器的值、状态变化及处理器累加器的变化过程。总线变化过程,系统开销等等。 这些搞明白了。再认认真真的把8086的各种外设工作原理搞清。比如,8251,8253,8259等等,当然,8253工作状态比较多,不用掌握的那么细致。做完这些,基本上再讲电子系统的原理都会有些底气了。3.找到目前主流的单片机,比如stm32f103,找一款开发板,先把简单的led等demo跑一下,有个感性认识,知道怎么搭建程序。然后,看手册,反复看。从寄存器开始写程序。注意,不要搞什么设备库之类的。4.软件基础你也得学点儿吧。这个忘了说了。总之,单片机很简单,但是给你写完了之后,觉得作为同年纪的人,我自己现在无法做到。但,这个捷径,是我差不多二十年前用过,觉得最有效的。所以,祝你好运。 |