用python编程红绿灯程序
时间: 2023-10-20 09:08:26 浏览: 46
下面是一个简单的红绿灯程序,使用 Python 编写,基于时间控制灯的变化。
```python
import time
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
# 设置红绿灯引脚
red_pin = 18
yellow_pin = 23
green_pin = 24
# 设置每个灯的持续时间(秒)
red_time = 5
yellow_time = 2
green_time = 5
# 设置每个灯的状态(高电平为开,低电平为关)
GPIO.setup(red_pin, GPIO.OUT)
GPIO.output(red_pin, GPIO.LOW)
GPIO.setup(yellow_pin, GPIO.OUT)
GPIO.output(yellow_pin, GPIO.LOW)
GPIO.setup(green_pin, GPIO.OUT)
GPIO.output(green_pin, GPIO.LOW)
# 定义一个函数,用于切换灯的状态
def switch_lights(pin, state):
GPIO.output(pin, state)
# 循环执行红绿灯变化
while True:
switch_lights(red_pin, GPIO.HIGH)
time.sleep(red_time)
switch_lights(red_pin, GPIO.LOW)
switch_lights(yellow_pin, GPIO.HIGH)
time.sleep(yellow_time)
switch_lights(yellow_pin, GPIO.LOW)
switch_lights(green_pin, GPIO.HIGH)
time.sleep(green_time)
switch_lights(green_pin, GPIO.LOW)
switch_lights(yellow_pin, GPIO.HIGH)
time.sleep(yellow_time)
switch_lights(yellow_pin, GPIO.LOW)
```
注意:在运行此程序之前,请确保您已经正确连接了红绿灯的引脚,并且已经安装了 RPi.GPIO 库。