论单片机的初学体验

一、前言
单片机是我刚刚学习没多久的一门课程,作为一个初学者对其进行的一些作学习总结
二、单片机简介
单片机(Single-Chip Microcomputer)也叫微控制器(Microcontroller,因其主要面向控制),是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。
它具有体积小、功能强、价格低、功耗低、抗干扰能力强等优点。一般的单片机系统都包括硬件电路和软件程序两大部分,通过这两部分的联合调试最终形成一个功能完善的系统。

三、示例实验
单片的的流水灯实验,我所采用的是AT89S51型开发板,软件所采用的是keil 4 ,下面为代码示例:

方法一:

#include”reg51.h”
#define uint unsigned int
delay(uint t)
{
uint i,j;
for(j=t;j>0;j--)
for(i=100;i>0;i--)
}
main()
{
p1=0x01;
delay(10000);
p1=0x02;
delay(10000);
p1=0xfb;
delay(10000);
p1=0xf7;
delay(10000);
p1=0xef;
delay(10000);
p1=0xdf;
delay(10000);
p1=0xbf;
delay(10000);
p1=ox7f;
delay(10000);
}

这种方法为最为简单的一种方法,但是所需输入的命令较多,比较麻烦。、

方法二:

#include”reg51.h”
#define uchar unsigned char
#define uint unsigned int
delay(uint t)
{
uint i,j;
for(j=t;j>0;j--)
for(i=100;i>0;i--);
}
main()
{
uint n;
uchar code tap[8]={x0fe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}
for(n=0;n<8;n++)
{
p1=tap[n];
delay(1000);
}

方法三:

#include”reg51.h”
#include”intrins.h”
#define uchar unsigned char
#define uint unsigned int
delay(uint t)
{
uint i,j;
for(j=t;j>0;j--)
for(i==100;i>0;i--)
}
main()
{
uint n=0x01;
while(1)
{
p1=n;
delay(1000);
n=_crol_(n,1):
}

二、三种方法较第一种方法更加的简洁,但是相对的不容易让人理解,需要一些C语言的基础。三种方法都有自己的优点,因个人喜好所选择。

当程序编写结束后进行了烧入开发板中,由于自己找不到当时的照片,所以实验结果被搁置于此了。

注:所进行的按键控制流水灯为最简单的实验,我自己也只是才开始学习单片机,不会那些难的实验,以及讲解的也不好

四、总结

 

感觉自己似乎偏题了,但是对于自己学习的初学体验吧,如下面几点吧:

1、在学习单片机之前有一些C语言的基础能让自己在学习单片机的过程中更加的方便一些;

2、学习单片机一定不能只从理论上学习,更多的是实验,只有进行实验后才能理解书上所学的理论知识;

3、一定要熟悉使用软件的流程,避免出错;

4、在开发板上接线时要接对,不然所出现的实验结果会有一些误差;注:我自己接错过一次,当时还以为开发板坏了

5、输入代码时要细心一些;

这些差不多就是自己学习单片机的一些初学体验,感觉不能说很难,更多的是理论要结合实验一起进行,这样才能更好的学习,把自己在书本上不能理解的东西弄得理解。

 

posted @ 2020-10-22 00:16  一个胖菠萝猪  阅读(161)  评论(0)    收藏  举报