【Arduino29】74HC595控制LED灯

硬件准备

74HC595直插芯片:1 个

绿色LED灯:4 个

红色LED灯:4 个

220欧的电阻:8个

面包板:1个

杜邦线:若干

硬件连线

【Arduino29】74HC595控制LED灯_第1张图片

软件程序

#define DS_pin 11    //DS引脚
#define STCP_pin 8   //ST_CP引脚,输出
#define SHCP_pin 12  //SH_CP引脚,输入

void setup() {
  Serial.begin(9600);
  pinMode(DS_pin, OUTPUT);
  pinMode(STCP_pin, OUTPUT);
  pinMode(SHCP_pin, OUTPUT);
}

void loop() {
  //test();
  run();
}

void run(){
  for (int i = 0; i < 256; i++) {
    digitalWrite(STCP_pin, LOW);
    shiftOut(DS_pin, SHCP_pin, LSBFIRST, i);  //低字节先出模式
    digitalWrite(STCP_pin, HIGH);
    delay(200);
  }
}

void test() {
  digitalWrite(STCP_pin, LOW);
  shiftOut(DS_pin, SHCP_pin, LSBFIRST, 255);  //低字节先出模式
  digitalWrite(STCP_pin, HIGH);
  delay(1000);
}

产品展示视频

八个小灯对应八位二进制00000000,上电后小灯从00000001每次加1至最终全亮11111111.之后复位,重复之前的效果

【Arduino29】74HC595控制LED灯

总结

在本次实验中,我学会了 74HC595 位移缓存器的使用,了解了 74HC595 中各个引脚的功能。此外,我还学会了 shiftOut() 函数的使用。

你可能感兴趣的:(算法)