Arduino 双74HC595N控制16个LED灯

一个74HC595N控制8个LED,2个控制16个

原理 一个74HC595N可以控制8个,2个74HC595N可以控制16个,但是只用3个端口

元件

  • arduino duemilanove: 1块
  • 面包板:1块
  • 74HC595N: 2个
  • 导线: 若干
  • 电阻: 若干

arduinoLED-Dual74HC595N-1.jpg arduinoLED-Dual74HC595N-2.jpg arduinoLED-Dual74HC595N-3.jpg arduinoLED-Dual74HC595N-4.jpg

程序代码 用到for循环及函数

int latchPin=8;
int clockPin=12;
int dataPin=11;

void setup()
{
  pinMode(latchPin,OUTPUT);
  pinMode(clockPin,OUTPUT);
  pinMode(dataPin,OUTPUT);
}
void loop()
{
  for(int i=0;i<256;i++){
    digitalWrite(latchPin,LOW);
    shiftOut(i);
    shiftOut(255-i);
    digitalWrite(latchPin,HIGH);
    delay(250);
  }
}
void shiftOut(byte dataOut)
{
   boolean pinState;
   digitalWrite(dataPin,LOW);
   digitalWrite(clockPin,LOW);

   for(int i=0;i<=7;i++)
   {
     digitalWrite(clockPin,LOW);
       if(dataOut & (1<