先来看看成品效果
595控制led灯低阶灯光秀
电路图

原理:
控制芯片,输出到不同的led上面.展示一个低阶段的灯光秀.
代码
// 接 74HC595 的 ST_CP (pin 12,latch pin)
int latchPin = 8;
// 接 74HC595 的 SH_CP (pin 11, clock pin)
int clockPin = 12;
// 接 74HC595 的 DS (pin 14)
int dataPin = 11;
void show(int a){
//将latchPin设置为低电量
digitalWrite(latchPin, LOW);
//输出当前要亮的灯位
Serial.println(a);
// 使用 shiftOut 函式送出資料
shiftOut(dataPin, clockPin, MSBFIRST, a);
// 送完資料後要把 latchPin 拉回成高電位
digitalWrite(latchPin, HIGH);
// 休眠500毫秒
delay(500);
}
void setup() {
// 將 latchPin, clockPin, dataPin 設置為輸出
pinMode(latchPin, OUTPUT);
pinMode(clockPin, OUTPUT);
pinMode(dataPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
for(int i=0;i<8;i++){
//每次左移一位,只展示该位上面的led灯
show(1<<i);
}
int a = 0;
for(int i=0;i<8;i++){
//左移亮一个led,同时前面的led保持亮的状态
a = a + (1<<i);
show(a);
}
//全都灭
show(0);
//全都亮
show(255);
show(0);
show(255);
show(0);
}
有问题评论区见~下课!
使用595芯片实现LED低阶灯光秀

本文介绍了一种通过595控制芯片来实现简单的LED灯光秀的方法,包括电路图、工作原理及代码实现。在代码中,利用shiftOut函数逐位输出数据,实现不同LED灯的亮灭效果,展示了如何通过编程控制硬件设备进行动态灯光展示。
2114

被折叠的 条评论
为什么被折叠?



