“RGB LED HAT (B)”的版本间的差异
小 (文本替换 - 替换“http://{{”为“https://{{”) |
|||
(未显示同一用户的3个中间版本) | |||
第2行: | 第2行: | ||
{{扩展板|colorscheme=blue | {{扩展板|colorscheme=blue | ||
|name = RGB LED HAT (B) | |name = RGB LED HAT (B) | ||
− | |img = [[File:RGB-LED-HAT-B-intro.jpg|360px |alt=RGB LED HAT (B)|link= | + | |img = [[File:RGB-LED-HAT-B-intro.jpg|360px |alt=RGB LED HAT (B)|link=https://{{SERVERNAME}}/shop/RGB-LED-HAT-B.htm | RGB LED HAT (B)]] |
|category1=树莓派 | |category1=树莓派 | ||
|category2=mini PC | |category2=mini PC | ||
第14行: | 第14行: | ||
<div class="tabbertab" title="资料"> | <div class="tabbertab" title="资料"> | ||
===文档=== | ===文档=== | ||
− | *[ | + | *[https://{{SERVERNAME}}/w/upload/1/16/RGB_LED_HAT_%28B%29_Schematic.pdf 原理图]<br> |
===程序=== | ===程序=== | ||
− | *[ | + | *[https://{{SERVERNAME}}/w/upload/6/6a/RGB_LED_HAT_Code.7z 示例程序] |
===数据手册=== | ===数据手册=== | ||
− | *[ | + | *[https://{{SERVERNAME}}/w/upload/a/a6/WS2812B_datasheet_CN.pdf WS2812B中文手册] |
− | *[ | + | *[https://{{SERVERNAME}}/w/upload/9/94/WS2812B_datasheet_EN.pdf WS2812B英文手册] |
===相关链接=== | ===相关链接=== | ||
{{Raspberry Pi Study}} | {{Raspberry Pi Study}} | ||
− | + | 转到:[[#软件]],[[#程序]],[[#文档]] | |
<!--{{Join_us}}--> | <!--{{Join_us}}--> | ||
</div> | </div> | ||
+ | == FAQ == | ||
<div class="tabbertab" title="FAQ"><br /></div> | <div class="tabbertab" title="FAQ"><br /></div> | ||
<div class="tabbertab" title="售后"><br />{{Service08}}</div> | <div class="tabbertab" title="售后"><br />{{Service08}}</div> |
2021年6月18日 (五) 18:00的最新版本
| |||||||||||||||||||||||||
| |||||||||||||||||||||||||
| |||||||||||||||||||||||||
|
器件介绍
WS2812B是一个集控制电路与发光电路于一体的智能外控LED光源。其外型与一个5050LED灯珠相同,每个元件即为一个像素点。像素点内部包含了智能数字接口数据锁存信号整形放大驱动电路,还包含有高精度的内部振荡器和12V高压可编程定电流控制部分,有效保证了像素点光的颜色高度一致。
数据协议采用单线归零码的通讯方式,像素点在上电复位以后,DIN端接受从控制器传输过来的数据,首先送过来的24bit数据被第一个像素点提取后,送到像素点内部的数据锁存器,剩余的数据经过内部整形处理电路整形放大后通过DO端口开始转发输出给下一个级联的像素点,每经过一个像素点的传输,信号减少24bit。像素点采用自动整形转发技术(见:数据传输协议),使得该像素点的级联个数不受信号传送的限制,仅仅受限信号传输速度要求。
数据传输协议
数据传输时间( TH+TL=1.25µs±600ns)
T0H | 0码, 高电平时间 | 0.4µs | ±150ns |
T1H | 1码, 高电平时间 | 0.8µs | ±150ns |
T0L | 0码, 低电平时间 | 0.85µs | ±150ns |
T1L | 1码, 低电平时间 | 0.45µs | ±150ns |
数据传输方法
注: 其中 D1 为 MCU 端发送的数据, D2、 D3、 D4 为级联电路自动整形转发的数
颜色格式
颜色的格式分为很多种,常用的有RGB888、RGB565等等;
RGB888表示:R:红色(Red),G:绿色(Green),B:蓝色(Blue)。表示占8位数据。因此传输一个完整的颜色数据,需要24位。
对于WS2812B而言,他使用的就是就是这种格式,只不过他发送的颜色数据是G-R-B,所以我们的再发送的时候,需要把我们的RGB转化成GRB:
G7 | G6 | G5 | G4 | G3 | G2 | G1 | G0 |
R7 | R6 | R5 | R4 | R3 | R2 | R1 | R0 |
B7 | B6 | B5 | B4 | B3 | B2 | B1 | B0 |
注: 高位先发, 按照 GRB 的顺序发送数据
树莓派使用
基础使用
树莓派打开终端,安装如下库:
sudo apt-get install python-pip sudo pip install rpi_ws281x
下载示例程序,解压到指定目录,并运行示例程序:
sudo apt-get install p7zip wget http://wiki.diustou.com/w/upload/6/6a/RGB_LED_HAT_Code.7z 7zr x RGB_LED_HAT_Code.7z -r -o./RGB_LED_HAT sudo chmod 777 -R RGB_LED_HAT cd RGB_LED_HAT sudo python ws2812.py
运行这个示例程序,RGB LED会有颜色渐变的效果
如果使用的是RGB LED HAT (B),需要修改ws2812.py,不然灯的数量不全,如下:
如果显示颜色不对,请尝试在/boot/config.txt 文件中添加如下两个语句,重启生效。
由于RGB LED采用DMA控制,占用树莓派上的音频输出DMA通道,因此添加这两个语句会导致耳机接口不能使用。
hdmi_force_hotplug=1 hdmi_force_edid_audio=1
手机网页控制
确保能够基础使用的前提下,再执行如下命令
sudo apt-get install python-bottle cd ~/RGB LED HAT/web-RGB sudo python main.py
如果使用的是RGB LED HAT (B),需要修改main.py,把LED_COUNT修改成64
如上图,在手机浏览器地址栏内输入树莓派 ip 地址,端口号 8000。通过点击调色盘不同的位置,RGB LED会显示不同的颜色。“static”、“breath”、“flash”分别对应三种显示模式。
文档
程序
数据手册
相关链接
- 树莓派系列教程:人生若只如初见
- 树莓派系列教程:烧写镜像
- 树莓派系列教程:远程登录树莓派(SSH登陆/远程桌面登陆/串口登陆)
- 树莓派系列教程:更换软件源
- 树莓派系列教程:访问树莓派
- 树莓派系列教程:配置WiFi
- 树莓派系列教程:系统配置(raspi-config)
- 树莓派系列教程:中文输入法
- 树莓派系列教程:摄像头
- 树莓派系列教程:Linux常用命令以及vi/vim编辑器
- 树莓派系列教程:文件共享(samba)
- 树莓派系列教程:wiringPi、bcm2835、python库安装
- 树莓派系列教程:如何点亮一个LED灯(上)
- 树莓派系列教程:如何点亮一个LED灯(下)
- 树莓派系列教程:按键
- 树莓派系列教程:I2C
- 树莓派系列教程:I2C编程
- 树莓派系列教程:I2C总线控制BMP180
- 树莓派系列教程:Serial串口
- 树莓派系列教程:红外遥控
- 树莓派系列教程:RTC
- 树莓派系列教程:PCF8591 AD/DA
- 树莓派系列教程:SPI
- 树莓派系列教程:物联网之MQTT
- Alphabot树莓派教程:变身路由器
- Alphabot树莓派教程:刷LEDE(OpenWRT)系统变身路由器
- 树莓派引脚对照表
- SIM868 ppp拨号上网