Arduino 使用74HC595寄存器实现8个和16个led随机亮灯

材料准备:

面包板

arduino UNO控制板 

74HC595 寄存器

LED灯16个

欧姆电阻16个

74HC595寄存器引脚说明(查看更多):

内部包含了一个8位移位寄存器和8位锁存寄存器

Arduino 使用74HC595寄存器实现8个和16个led随机亮灯_第1张图片

电路图:

注意:本例为了方便OE引脚直接接在GND上使其一直保持低电平输出数据,MR直接连接在Vcc上一直保持高电平。

Arduino 使用74HC595寄存器实现8个和16个led随机亮灯_第2张图片
8灯


Arduino 使用74HC595寄存器实现8个和16个led随机亮灯_第3张图片
16灯

实现代码:

//接ST_CP引脚

int latchPin = 8;

//接SH_CP引脚

int clockPin = 12;

//接DS引脚

int dataPin = 11;

void setup() {

  pinMode(latchPin, OUTPUT);

  pinMode(clockPin, OUTPUT);

  pinMode(dataPin, OUTPUT);

}

void loop() {

    //产生随机数

    int num =rand()%(256);

    //拉低电平

    digitalWrite(latchPin, LOW);

    //向DS一个字节

    shiftOut(dataPin, clockPin, LSBFIRST,num);

    //把DS引脚的数据保存到移位寄存器

    digitalWrite(latchPin, HIGH);

    delay(1000);

  }

}



你可能感兴趣的:(Arduino 使用74HC595寄存器实现8个和16个led随机亮灯)