锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

基于arduino的流水灯

时间:2023-09-09 12:07:02 电位器turn

Arduino -8LED灯显示电位电路设计实验报告

  • 实验目的

用8位LED灯显示电位器位置的简单功能

  • 硬件设备

笔记本电脑,单片机,面包板,8LED灯、电位器、杜邦线、下载线等。

  • 所需软件

编程软件:arduino

  • 画连线图

图1 共阳极连线图

  • 控制程序

int LED1=8;

int LED2=9;

int LED3=10;

int LED4=11;

int LED5=12;

int LED6=13;

int n;

void setup()

{ //设置每个引脚的初始状态

for(n=8;n<=13;n )

{

pinMode(n, OUTPUT);

}

}

void loop()

{

turn1();//顺序点亮,顺序熄灭

clean(); //灭掉所有灯

turn2();//6灯齐闪

clean();//灭掉所有灯

turn3();

clean();//灭掉所有灯

}

void turn1() //顺序点亮,顺序熄灭

{

for(n=8;n<=13;n )

{

digitalWrite(n,HIGH);

delay(300);

}

for(n=8;n<=13;n )

{

digitalWrite(n,LOW);

delay(300);

}

}

void turn2()//6灯齐闪3

{ for(int x=0;x<=2;x++)

{

  for(n=8;n<=13;n++)

{

    digitalWrite(n,HIGH);  

}

delay(300);

  for(n=8;n<=13;n++)

{

    digitalWrite(n,LOW);   

}

delay(300);

}

}

void turn3()//两个两个一起闪3

{

  for(int x=0;x<=2;x++)

  {

  digitalWrite(8,HIGH);

  digitalWrite(9,HIGH);

  for(n=10;n<=13;n++){

    digitalWrite(n,LOW);

  }

  delay(300);

  digitalWrite(10,HIGH);

  digitalWrite(11,HIGH);

  digitalWrite(8,LOW);

  digitalWrite(9,LOW);

  digitalWrite(12,LOW);

  digitalWrite(13,LOW);

  delay(300);

  digitalWrite(12,HIGH);

  digitalWrite(13,HIGH);

  for(n=8;n<=11;n++){

    digitalWrite(n,LOW);

  }

  delay(300);

}

}

void clean()

{  for(n=8;n<=13;n++)

{

    digitalWrite(n,LOW); 

}

delay(300);

}

  • 连接调试

将程序保存。连接实物,搭建硬件平台,将程序下载到单片机中,如图2所示。调节电位器到不同的位置,观察LED的量灭情况。

 

 

图2 实物连线图

  • 实验结果

如图3,本次项目分为3种模式,第一种:依次亮,依次灭;第二种:全亮,全灭;第三种:两两亮,两两灭;

  

      

   

图3 实验效果图

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章