帮我写一个流水灯代码
时间: 2024-11-30 07:18:53 浏览: 8
编写一个简单的流水灯(也称为彩虹灯效果)的代码通常涉及到LED灯的控制,这里以Python语言和GPIO模块作为示例,假设我们使用的是树莓派(Raspberry Pi):
```python
import RPi.GPIO as GPIO
import time
# 设置GPIO模式为BCM
GPIO.setmode(GPIO.BCM)
# 假设我们有8个LED,连接到GPIO Pin列表 [7, 11, 13, 15, 19, 21, 26, 29]
led_pins = [7, 11, 13, 15, 19, 21, 26, 29]
def setup_leds():
for pin in led_pins:
GPIO.setup(pin, GPIO.OUT)
GPIO.output(pin, GPIO.LOW)
def blink_leds():
for i in range(8):
GPIO.output(led_pins[i], GPIO.HIGH)
time.sleep(0.1) # 等待0.1秒
GPIO.output(led_pins[i], GPIO.LOW)
time.sleep(0.1)
def main():
try:
setup_leds()
while True:
blink_leds()
except KeyboardInterrupt:
print("Keyboard interrupt detected, cleaning up...")
GPIO.cleanup()
if __name__ == "__main__":
main()
```
这个代码首先初始化GPIO,然后设置LED针脚为输出并将其置低。`blink_leds`函数会循环遍历LED,将每个LED点亮0.1秒后再关闭,如此往复形成流水灯的效果。
注意:在实际操作前,请确保已经安装了RPi.GPIO库,并且硬件连接正确。运行此代码时可能会因为频繁开关LED而消耗较多电能,所以请谨慎使用。
阅读全文