某同学求助:单片机现在水平只能说会,想在外设上多多学习下,手里面只有开发板,请问大家有没有什么好的方法?目前基础知识只有C,会单片机,数电也懂点,模电没看过,电路还没有开课……
对此,我想给出以下学习建议:
-
基础知识一定要学好;
-
分模块学习;
-
做完一个项目一定要总结;
-
学通了一种单片机,再学习其他的单片机就会上手很快,学习外设同理;
-
学会移植(抄)程序。
一、基础知识
技术性的东西学习起来都是一层一层的,如果前面的基础知识如果没有学好,到了后面的学习会让你懵懵懂懂,最后会走很多弯路。
对外设的学习,可以从两方面来看,一个是单片机与外设的电路图连接,这是硬件方面;另一个是软件方面,如何用软件控制这个外设。例如:
这是一个LED流水灯模块,你至少要从电路图上知道以下信息:
-
LED灯D1到D8分别连接到了单片机的P1.0到P1.7引脚;
-
当你把其中一个引脚置零,相应的LED灯就会亮。
这是读电路图的能力,是最基础的也是最重要的。
然后是例程,点亮一个LED灯。
#include<reg52.h>
sbit LED=P1^0;
void main (void)
{
LED=0;
while (1);
}
那么,为什么要包含reg52.h?里面有什么内容?sbit是什么意思?是标准C里的关键字还是keil C里的关键字?为什么要写这一条语句?为什么最后要加while死循环?
初学的时候,一般是不会问自己这些问题的,我自己学的时候都没有问过自己这些问题。但是这些知识点恰恰却是基础,或者说学习时的盲点。
关于基础我就不多写了,点到即止。
二、分模块
不多说了,我直接上我的学习资料的图片吧,买了学习板后客服