树莓派4b 软路由,树莓派4b做软路由能发挥多少宽带

  树莓派4b 软路由,树莓派4b做软路由能发挥多少宽带

  本文用草莓派4B点亮WS2812灯圈,实现各种颜色的变换。

  草莓派4B的参数和工作原理介绍——Python——control ws 2812 b ws 2812以及草莓派4B连线可能出现的问题;

  以前我突发奇想,在我的小电风扇上安装了可控led灯WS2812,就是为了有更好的夜灯视觉效果。

  WS2812 WS2812B是集控制电路和发光电路于一体的智能外控LED光源。它的外观和5050LED灯泡一样,每个元素都是一个像素。

  这里不再重复参数的介绍和结构。请参考以下博客/论坛等。详情请见。希望能有帮助。

  1个参考

  2参考

  参考文献3

  4参考

  与草莓馅饼4B相连

  红色-5v

  蓝色-GND

  黄色- GPIO18

  代码必须首先安装相关的库:

  sudopipinstallrpi-ws 281 x http://www.Sina.com/

  O SUDAPT-GET INSTALL Python-pip以下是光线多次变换的代码,每个函数一次变换。

  importtimefromrpi _ ws 281 xmimportalpixelstrip,在colorportargparsed _ count=16 # LED灯数LED_PIN=18 # DI端子上,GPIO18#是LED _ freq _ Hz=800000 # LED signal frequency dmachanneltouseforgenerating signal(try 10)LED _ brightness=255 # setto 0 for markstand 255 for brighted stled truetoinverthesignal(whenusingnpntranistorlevelshift)LED _ channel=0 # settoforIinrange(strip . numpixels()):strip . setpixelcolor(I)I,Color(strip . show)time . sleep)wait _ min iterations=10):“电影院灯光风格跟踪动画。" " for gin range(iterations):for q in range(3)3):for I in range(0 3):strip . 0 . set pixel color(IQ,color)strip . show(time . sleep)wait _ ms/1000.0)for I in range(0)0,strip . 0 3):strip . set pixel color(IQ,0) defwheel) pos)生成一个横跨" " 0-255个位置的彩虹颜色。"如果pos 853360返回颜色(pos* )0) elif pos 1703360 pos-=85返回cos wait_ms=20,迭代次数=1(: 画彩虹,一次只能画出所有褪色的像素。Forginrange (256 *迭代)3360 for inrange()wheel(ij)255))strip . show)time . sleep)wait _ ms/1000.0)rainbowcycle)strip,wait_ms=10,

  操作数=5): 画出均匀分布在所有像素上的彩虹.“”对于范围内的j(256次迭代):对于范围内的I(条带。numpixels()):strip。setpixelcolor(I,wheel((int(I * 256/strip。numpixels())j)255))条。显示()时间。sleep(wait _ ms/1000.0)def theaterchasearrainbow(strip,wait_ms=50): 旋转的彩色灯光。 for j in range(256):for q in range(3):for I in range(0,strip.numPixels(),3): strip.setPixelColor(i q,wheel((I j)% 255))strip。显示()时间。范围内I的sleep(wait _ ms/1000.0)(0,strip.numPixels(),3): strip.setPixelColor(i q,0)# Main程序逻辑如下:if _ _ name _ _= _ _ Main _ _ :# Process arg arg parse .参数解析器()解析器。add _ argument(-c ,- clear ,action=store_true ,help=清除退出时的显示)args=parser.parse_args() #用适当的配置创建新像素对象. strip=PixelStrip(LED_COUNT,LED_PIN,LED_FREQ_HZ,LED_DMA,LED_INVERT,LED_BRIGHTNESS,LED_CHANNEL) #初始化库(必须在其他函数之前调用一次)。strip.begin() print(按Ctrl-C退出。)如果不是args.clear: print(使用-丙参数在退出时清除led )try:while True:print(颜色擦除动画. )colorWipe(strip,Color(255,255,0)) #红色wipe colorWipe(strip,Color(0,0,0),30) colorWipe(strip,Color(0,255,255))。蓝色wipe colorWipe(strip,Color(0,0,0),30) print(剧场追逐动画。)打印(彩虹动画)rainbow(strip) colorWipe(strip,Color(0,0,0),50) rainbowCycle(strip,Color(0,0,0),40)break while True:rainbow cycle(strip)# print( * * * * * * * * * * * * * * * * * * * * * * * * * * *)Color wipe(strip,Color(0,0,0),100)除了:彩色擦拭(条形,颜色(0,0,0),100)可能会出现的问题:问题1:提示" strip.begin()"该代码出错,显示错误为:

  RuntimeError: ws2811_init失败,代码为-5 (mmap()失败)原因:直接从集成驱动电子设备上运行了该程序。

  解决方法:从命令行上运行程序。方法如下:

  假设程序文件放在桌面上

  激光唱片桌面进入桌面后打开程序文件,假设文件名为123.py

  须藤蟒3 123.py 运行时若想要退出就按拷贝

  问题2:

  不能使用中文注释?

  经过验证,其实是可以的使用中文注释的,并且根本不用删除注释再运行程序,完全不受影响

  问题3:

  出现导入错误:没有名为_rpi_ws281x的模块的错误提示

  较大的可能是安装错了,用点安装可能是Python2的,用pip3安装就能解决

  sudo pip3安装rpi-ws281x ##2020.8.29

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: