当前位置:职场发展 > 51单片机流水灯实验原理_51单片机8个流水灯原理图

51单片机流水灯实验原理_51单片机8个流水灯原理图

  • 发布:2023-09-25 13:40

本文目录一览:

  • 1、如何用单片机做流水灯
  • 2、流水灯原理
  • 3、花样流水灯电路原理
  • 4、单片机:16个发光二极管组成的流水灯实验
  • 5、51单片机最小系统流水灯的原理图关于AT89S52类型的
  • 6、51单片机流水灯原理有谁能解释下吗

如何用单片机做流水灯

因为电路用单片机控制,所以电路非常简洁。其电路原理图见下图,印制板图如下图所示。

电路的核心部分是AT89C2051单片机,前面提到它有Pl和P3两组I/O口,我们这里只用到Pl口,共8个引脚。图中Cl、R9组成典型的上电复位(即在加电时单片机复位)电路,XTAL、C2、C3与AT89C2051片内振荡电路组成时钟振荡器。值得注意的是,C2、C3的容量不能与图中数值偏差太大,否则可能引起不起振或振荡不稳定。XTAL的频率可以在4-20MHz之间,不过,频率的变化会导致程序运行速度的变化,这样就需要调整延时子函数的参数。事实上,不调整参数亦可,只是此时延迟时间不再是1秒,其延迟时间会随着XTAL频率的降低而增加。

二、软件部分

本程序包含两个函数,一个是主函数,另一个是延时子函数。源程序如下(为了便于讲解,我们为每行程序加上了编号):

程序各行作用如下:

00行:把AT89C2051的头文件“AT89x051.H”包含进来。

01行:声明Delay()延时子函数,该函数有一个无符号整型参数k,同时函数前面的void表明函数不返回函数值。

02行:延时子函数的开始,同时声明两个无符号整型变量i和j。

不过请注意,这里没有象上期的程序一样,把表示函数开始的“{”单独成行,而是把下一行写在一起了。事实上,写C程序的时候,可以把多行写作一行,C编译器只要遇到分号就认为是一行语句的结束。

当然,我们不能因为C程序有这个特点,就随意把多行合作一行书写,实际书写C程序的时候,还是要养成良好的程序书写习惯,按照约定俗成的原则来书写。

03行:声明for()循环。这个循环的初始条件是i=0,终止条件是i<k,循环计数是每循环一次,用手计数的变量i加1。因此,这个循环的循环次数就是k次。这样,只要改变k的值(即改变Delay()延时子函数的参数k的值),就可以很容易地控制循环次数,从而获得不同的延时时间。

04行:声明嵌套在03循环中的一个新的for()循环,这个循环与上一个循环相似,其循环次数是120次。本循环与上一个循环嵌套后,使得总的循环次数达120×k次。

05行:第一个分号,表示L条空语句,占用一个机器时间,以实现延时的目的。后面的两个“}”中,第一个“}”是04行for()循环的结束标志,程序遇到它时,将自动返回04行,使用于循环计数的变量j加1,同时判断j是否小于120,如果否,则转入05行;第二个是03行for()循环的结束标志,程序遇到它则会返回03行

流水灯原理

如图2(只关注led灯部分电路),P0口的8位输出分别连接了8个发光二极管L0~L7的阳极, P2.3经过一个反相器连接到8个发光二极管L0~L7的阴极(共阴极)。根据二极管的单向导通性(当阳极为高(对应P0口位为1)、阴极为低时,二极管导通,否则不导通),若P2.3输出信号为低电平“0”,则二极管的阴极都为高电平,此时无论P0输出的是“1”还是“0”,二极管都不会导通,也就不会发光。因此想要发光二极管导通,必须先设置P2.3输出信号为“1”,再通过设置P0,点亮想要点亮的发光二极管。

STC系列芯片有5组8位输入口,分别为P0到P5,其中P5口仅P5.0~P5.5用于输入输出。STC芯片的所有I/O口都可以配置为四种工作模式之一:准双向口/弱上拉、推挽/强上拉、输入/高阻和开漏模式。STC15系列单片机上电复位后为准双向口/弱上拉工作模式。

每个I/O口的工作模式由2个控制寄存器中的相应位控制(PnM0和PnM1,n=0、1、2、3、4、5)。也就是说P0口的具体工作模式由P0M0和P0M1控制。具体赋值方法参照表1。

其他I/O口工作模式设置类似。

四种工作模式的说明:

(1)准双向口。真正的双向口指的是具有输入和输出两种模式的端口,在不同模式之间需要进行转换;如果从输入改为输出,需要对某些控制寄存器进行设定,才能完成。而51系列单片机的I/O口线在输入和输出之间没有明确的模式区别。相应端口在同样模式下,既可以作为输入,又可以作为输出。P3口除外,因为它需要连接外设。51单片机的I/O口如果要读必须先写1才可以,因此称为“准”双向口。需要大电流高电平输出能力的场合和高速场合不能使用该模式。

(2) 推挽电路 输入输出(push-pull)模式。推挽电路的输出端好像有两个“臂”(两组放大元件),一个“臂”的电流增加时,另一个“臂”的电流则减小,二者的状态轮流转换。对负载而言,好象是一个“臂”在推,一个“臂”在拉,共同完成电流输出任务。该电路模式的主要作用是增强驱动能力,为外部设备提供大电流,可以直接输出高电平电压。

(3)输入/高阻模式。仅用于输入。

(4)开漏电路。I/O口的开漏就是没有连接 上拉电阻 。

注意: 需要将P0的8个引脚和P2.3都设置为推挽输出,led灯才可以点亮。其中的细节原理初学者可先不必深究。

花样流水灯电路原理

这个是51单片机最基本的一个应用,流水灯应用,一个I/O 最基本的开关动作。

建议你有条件弄个开发板,弄到线路图,自己实际动手。

单片机,你只知道那111条指令是不行的,还得懂线路配置,灵活应用。

单片机:16个发光二极管组成的流水灯实验

电路图注意:1、P0口里应加上排阻,图里我没画出来。

2、单片机最小系统所需的晶振、复位电路我也没画。

临时帮你做的图,写的程序,细节就不是很完善啦,凑合着看吧!!

下面是程序,_crol_()函数是让temp的值左移一位的即执行一次该函数,temp的值由11111110到11111101,再执行一次是11111011……

_cror_()是右移。

#includereg51.h

#includeintrins.h//包含对_crol_(),_cror_()函数的说明的头文件

unsigned char temp,i;

void delay(unsigned int z)//延时子程序,晶振11.0592M时延时大概1毫秒

{

unsigned int x ,y;

for(x=z;x0;x--)

for(y=110;y0;y--);

}

void main()

{

while(1)

{

temp=0xfe;

for(i=0;i8;i++)//流水灯从P0^0口到P0^7口

{

P0=temp;

temp=_crol_(temp,1);

delay(5);

}

i=0;

temp=0xfe;

for(i=0;i8;i++)//流水灯从P1^0口到P1^7口

{

P1=temp;

temp=_crol_(temp,1);

delay(5);

}

i=0;

temp=0x7f;

for(i=0;i8;i++)//流水灯从P1^7口到P1^0口

{

P1=temp;

temp=_cror_(temp,1);

delay(5);

}

i=0;

temp=0x7f;

for(i=0;i8;i++)//流水灯从P0^7口到P0^0口

{

P0=temp;

temp=_cror_(temp,1);

delay(5);

}

i=0;

}

}

51单片机最小系统流水灯的原理图关于AT89S52类型的

图中芯片是AT89C51,最小系统图的话是一样的

程序:

#includereg51.h

#includeintrins.h

#define uchar unsigned char

#define uint unsigned int

void delays(uint t)

{

uint i,j;

for(i=0;it;i++)

{

  for(j=0;j1141;j++);

}

}

void main()

{

//P0M1=0X00; //单片机除了P0口以外,其他I/O在内部都有上拉电阻

//P0M0=0XFF; //AT89C51没有推挽输出这一说,所以P0高电平不亮,要加上拉电阻;

//用其他端口不需要考虑

/**************从左到右流水灯**************/

uchar i;

P0=0Xfe;

delays(100);

while(1)

{

P0=_crol_(P0,1);//向左循环移动一位

delays(50);

}

}

/*****************左右来回点亮************/

void main()

{

uchar i;

P0=0x01;

delays(100);

while(1)

{

for(i=0;i7;i++)

{

P0=_crol_(P0,1);

delays(50);

}

for(i=0;i7;i++)

{

P0=_cror_(P0,1);

delays(50);

}

}

}

51单片机流水灯原理有谁能解释下吗

单片机流水灯控制原理就是将多个LED灯珠连接到不同的单片机输出端上,编程使单片机的这些输出端逐个的输出信号点亮LED,在设置好各个LED的通电时间和通电间隔时间后,就可以看到这些LED灯珠此起彼伏的亮起,如同流水一样。

相关文章

热门推荐