树莓派开发之——跑马灯

18 篇文章 1 订阅
1 篇文章 0 订阅

raspberry实现跑马灯用例

使用跑马灯是学习树莓派的开始,下面的例子即为树莓派开发跑马灯的python代码用例。

import RPi.GPIO as GPIO
import time

WHITE = 5
YELLOW = 6
BLUE = 13
GREEN = 19
RED = 26

leds = [WHITE, YELLOW, BLUE, GREEN, RED]

ON = GPIO.HIGH
OFF = GPIO.LOW

def sleep(sec):
        time.sleep(sec)

def off_all():
        GPIO.output(leds, GPIO.LOW)

def on_all():
        GPIO.output(leds, GPIO.HIGH)

def light_crt(light, status, t):
        GPIO.output(light, status)
        sleep(t)

def do():
        light_crt(WHITE, ON, 0.5)
        light_crt(YELLOW, ON, 0.5)
        light_crt(BLUE, ON, 0.5)
        light_crt(GREEN, ON, 0.5)
        light_crt(RED, ON, 0.5)
        sleep(1)
        off_all()
        sleep(0.2)
        on_all()
        sleep(0.2)
        off_all()
        sleep(0.2)
        on_all()
        sleep(0.2)
        off_all()
        sleep(0.2)
        on_all()
        sleep(0.2)
        off_all()
        light_crt(WHITE, ON, 0.2)
        light_crt(WHITE, OFF, 0.2)
        light_crt(YELLOW, ON, 0.2)
        light_crt(YELLOW, OFF, 0.2)
        light_crt(BLUE, ON, 0.2)
        light_crt(BLUE, OFF, 0.2)
        light_crt(GREEN, ON, 0.2)
        light_crt(GREEN, OFF, 0.2)
        light_crt(RED, ON, 0.2)
        light_crt(RED, OFF, 0.2)
        sleep(0.5)
        light_crt(WHITE, ON, 0.2)
        light_crt(WHITE, OFF, 0.2)
        light_crt(YELLOW, ON, 0.2)
        light_crt(YELLOW, OFF, 0.2)
        light_crt(BLUE, ON, 0.2)
        light_crt(BLUE, OFF, 0.2)
        light_crt(GREEN, ON, 0.2)
        light_crt(GREEN, OFF, 0.2)
        light_crt(RED, ON, 0.2)
        light_crt(RED, OFF, 0.2)
        sleep(0.5)
        light_crt(WHITE, ON, 0.2)
        light_crt(WHITE, OFF, 0.2)
        light_crt(YELLOW, ON, 0.2)
        light_crt(YELLOW, OFF, 0.2)
        light_crt(BLUE, ON, 0.2)
        light_crt(BLUE, OFF, 0.2)
        light_crt(GREEN, ON, 0.2)
        light_crt(GREEN, OFF, 0.2)
        light_crt(RED, ON, 0.2)
        light_crt(RED, OFF, 0.2)

def main():
        times = int(input("input the times,please: "))
        sleep(1)
        i = 0 
        while i<times:
                do()
                i += 1

if __name__ == '__main__':
        GPIO.setmode(GPIO.BCM)
        GPIO.setup(leds,GPIO.OUT)
        main()
        GPIO.cleanup()
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值