【Raspberry Pi入门】PWM

2016-04-291.2万
AI 快速预览详细 收起
本教程介绍了如何使用Raspberry Pi的GPIO和PWM功能实现LED的渐变调光效果。首先导入RPi.GPIO库和time模块,然后设置GPIO模式为BOARD,并配置GPIO引脚12为输出。接着创建一个60Hz的PWM对象,并通过循环改变占空比来实现LED的渐变调光。最后,在按下Ctrl+C时停止PWM输出并清理GPIO。
好久之前写的了……

贴段代码上来好了
稍后上视频。

  1. import RPi.GPIO as GPIO # always needed with RPi.GPIO  
  2. from time import sleep  # pull in the sleep function from time module  
  3.   
  4. GPIO.setmode(GPIO.BOARD)  # choose BCM or BOARD numbering schemes. I use BCM  
  5.   
  6. GPIO.setup(12, GPIO.OUT)# set GPIO 25 as output for white led  
  7.   
  8. white = GPIO.PWM(12, 60)    # create object white for PWM on port 25 at 60 Hertz   
  9.   
  10. red.start(0)              # start white led on 0 percent duty cycle (off)  
  11.   
  12. # now the fun starts, we'll vary the duty cycle to   
  13. # dim/brighten the leds, so one is bright while the other is dim  
  14.   
  15. pause_time = 0.02           # you can change this to slow down/speed up  
  16.   
  17. try:  
  18.     while True:  
  19.         for i in range(0,101):      # 101 because it stops when it finishes 100  
  20.             red.ChangeDutyCycle(i)   
  21.             sleep(pause_time)  
  22.         for i in range(100,-1,-1):      # from 100 to zero in steps of -1  
  23.             red.ChangeDutyCycle(i)  
  24.             sleep(pause_time)  
  25.   
  26. except KeyboardInterrupt:  
  27.     red.stop()              # stop the red PWM output  
  28.     GPIO.cleanup()          # clean up GPIO on CTRL+C exit  
复制代码



创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(3)
dsweiliang
dsweiliang
树莓派积尘中...
凌风清羽
凌风清羽
两只树莓派2都出二手了:lol
iooops
iooops
作者
回复凌风清羽
树莓派不嫌多啊~
多备着几个可以多做几个项目啊
凌风清羽
凌风清羽回复hnyzcj
你自己找个论坛挂挂或者闲鱼什么的卖掉就好了:lol
共7条回复,已加载2条,点击查看更多共7条回复,已加载全部
qq815076543322
qq815076543322
本论坛的树莓派教程 越来越多
- 没有更多了 -