电子工程师技术服务社区
公告
登录
|
注册
首页
技术问答
厂商活动
正点原子
板卡试用
资源库
下载
文章
社区首页
文章
树莓派小夜灯初探
分 享
扫描二维码分享
树莓派小夜灯初探
树莓派
小夜灯
i2c协议
yoyojacky
关注
发布时间: 2019-07-19
丨
阅读: 2918
# 树莓派小夜灯初探 最近因为太忙,所以很久没有来和小伙伴们分享一下(安利)一些有趣的产品了。 最近拿到一款小夜灯,非常适合撩妹,单身狗可以考虑一下入手一个搞点儿小惊喜了。 今天打开这个编辑器,我要给站点的管理员点个非常大的赞!!!真的太舒服了,就是我喜欢的风格,markdown语法完全可以用起来了,巴适地板儿~ 好了,言归正传,让我们来谈谈小夜灯。 ## Docker Pi Night Light Board 小夜灯板 ![](https://cf03.ickimg.com/bbsimages/201907/f0dba0e361b38a04cac0de8317cad020.jpg) ![](https://cf03.ickimg.com/bbsimages/201907/2d4e514d7fb3f5b7568374c35b2c307c.jpg) 配置非常简单,几颗螺丝一拧就可以到树莓派上去调试了。组装时间小于20分钟。 ## 特性 * i2c 通信协议,不用占据多余的GPIO引脚 * ws2812的RGB灯珠,色彩斑斓夺目耀眼 * 安装简单方便 * 可以堆叠其他dockerpi的产品,非常适合大家练手 * 支持多语言,C,python,shell, java等,你会啥语言就上来用就是了。 * 多平台支持,什么香蕉派,树莓派,tinkerboard 都可以跑,只要GPIO引脚兼容树莓派的板子你都可以尝试一下, 目前我测试的有树莓派2B/3B/3B+/4B/zero/zero w, 香蕉派M3, Tinkerboard, Tinkerboard S, OrangePi zero(bus0), ## 测试环境 * 树莓派3B+ * 16GB class10 TF卡,烧录raspbian系统,随便什么版本,当然最新版的看起来更漂亮一些。 * 5v/2.5A 足量美标电源,供电有保障。 * wifi接入点,其实没有也没关系,只要有屏幕,键盘鼠标就可以搞起来了。 ## 测试方法 * 树莓派上电后,启动到桌面环境中以后,打开一个终端,然后输入: ```bash sudo raspi-config ``` 导航到Interfacing Options,接口配置这里,然后选择开启ssh和i2c,非常方便,你只要看到图片肯定能操作。 ![](https://cf03.ickimg.com/bbsimages/201907/d632cda64d4422c556db2700501ca183.png) 然后继续: ![](https://cf03.ickimg.com/bbsimages/201907/887607bafca191016cc9716de84c71a1.png) 启用: ![](https://cf03.ickimg.com/bbsimages/201907/145fae6157c0aa22762f7f876614e3a9.png) 结束: ![](https://cf03.ickimg.com/bbsimages/201907/1459826ef0ea5dcc667157426b31f37e.png) 然后通过命令行输入: ```bash i2cdetect -y 1 ``` 就会看到一个地址: ![](https://cf03.ickimg.com/bbsimages/201907/8b54621beadcb30796c99745a3ae2b92.jpg) 这个是灯板的i2c地址,待会操作就要用到它。 ![](https://cf03.ickimg.com/bbsimages/201907/f2c8cfc1e55120de4675f1b895eb83d9.jpg) 然后,这里要非常仔细的听我说,灯板上总共4排灯,每排有两个灯,每个灯有RGB三个颜色,然后每个灯都有独立的寄存器地址,例如,第一个灯的红色就是0x01, 绿色是0x02, 蓝色是0x03, 其他灯顺次排序下去,那么第二个灯的红色就是0x04, 绿色就是0x05, 蓝色就是0x06....直到最后一个灯的蓝色0x18, 总共24个寄存器,每个灯的亮度又可以从0x0~0xff, 也就是说你可以让整个灯亮起来就0xff, 如果想暗一些就可以用0x55,不知道你们听懂没有?另外还有一个0x19 是控制按键的,0x01就是按下,0x00 就是松开。 ![](https://cf03.ickimg.com/bbsimages/201907/7c580ad0beb13f974f91675e914eaecb.jpg) 下面我们用一条命令来解释一下。 ```bash i2cset -y 1 0x15 0x01 0xff ``` 这条命令的意思是给这个灯板的0x15寄存器地址写入两个数据,一个是灯的编号,一个是灯的亮度,0x01表示第一个灯的第一个颜色-红色,0xff表示全亮,意思是点亮第一个RGB灯的红色灯,并开到最亮,执行完了眼前一片血红。。。。哎,太刺眼了,我无法描述和正视它的美... ## 那关灯呢? ```bash i2cset -y 1 0x15 0x01 0x00 ``` 就这么简单,是不是so easy? ### Shell脚本跑个流水灯 ![](https://cf03.ickimg.com/bbsimages/201907/861fcc049e2c80815ed3d84e5513820b.jpg) ## C语言走一波按键控制灯 杠精1号:这个是命令操作,我想写代码操作怎么办呢?我是重度C语言使用者~ 我:这个嘛~ 上代码伺候: ![](https://cf03.ickimg.com/bbsimages/201907/03c11448339e0741a2f8340b9e479bac.jpg) ![](https://cf03.ickimg.com/bbsimages/201907/c8c1635b00dc3940259bf583ffcbfa67.jpg) 代码有点儿乱,转义字符上来后格式不好看了,大家多包涵。 然后编译一下去执行。 ```bash gcc led.c -lwiringPi -o led ./led ``` 现在按一下亮一排,你会停不下来的,配上亚克力的灯板,显示漂亮的激光雕刻图案,像一颗魔咒,海藻海藻...随风飘摇...杠精1号满足下台。 ## Python来凑个热闹? 用python代码太短不忍直视,好吧,就用python来做一下吧! ![](https://cf03.ickimg.com/bbsimages/201907/6e0a853f07d19c7413610665cd092be3.jpg) python需要你安装一个smbus库,也是非常方便的,自己体会。 ## 杠精3号出来怼 杠精3号: 我只会用java,你这个java能点亮么? 我:![](https://cf03.ickimg.com/bbsimages/201907/88b72488385499c14064379a78875620.jpg) 要想用java也不是没有可能... ![](https://cf03.ickimg.com/bbsimages/201907/d854f1f69c278403cf497c9236d40770.jpg) ![](https://cf03.ickimg.com/bbsimages/201907/4ca9a8250fb2eccdcedbb10e11bac00b.jpg) 同样编译一下: ```bash javac NightLight.java -classpath .:/opt/pi4j/lib/'*' sudo java -classpath .:classes:/opt/pi4j/lib/'*' NightLight `` ![](https://cf03.ickimg.com/bbsimages/201907/cfbb026a3fea1643d0edb0787e2b8cf7.jpg) 好了,今天到这里,我是骑驴玩儿漂移,咱们后会有期,白了个白~ ![](https://cf03.ickimg.com/bbsimages/201907/8d181d68250f20fd2eb8e1087c6f02ce.png) ### **树莓派4(4G)秒杀429元活动正在进行中,数量有限,扫码抢购** ![](https://cf03.ickimg.com/bbsimages/201909/9ba04e7ba842973d286236329a9412d7.jpg)
原创作品,未经权利人授权禁止转载。详情见
转载须知
。
举报文章
点赞
(
4
)
yoyojacky
擅长:科研教育
关注
评论
(5)
登录后可评论,请
登录
或
注册
yoyojacky
275
天前...
贴视频有点儿麻烦呢。。
0
回复
发布
公子1号
回复
yoyojacky
274
天前...
你怎么这么厉害啊。
0
回复
发布
d4ce3ed15fd0e353
275
天前...
怎么没有视频啊,把视频贴出来看看
0
回复
发布
kwwl
268
天前...
佩服动手能力
0
回复
发布
9c0d9426101f40a0
317
天前...
在哪里买的小夜灯板啊
0
回复
发布
相关文章推荐
MK-米客方德推出工业级存储卡
Beetle ESP32 C3 蓝牙数据收发
Beetle ESP32 C3 wifi联网获取实时天气信息
开箱测评Beetle ESP32-C3 (RISC-V芯片)模块
正点原子数控电源DP100测评
DP100试用评测-----开箱+初体验
Beetle ESP32 C3环境搭建
【花雕体验】16 使用Beetle ESP32 C3控制8X32位WS2812硬屏之二
X
你的打赏是对原创作者最大的认可
请选择打赏IC币的数量,一经提交无法退回 !
100IC币
500IC币
1000IC币
自定义
IC币
确定
X
提交成功 ! 谢谢您的支持
返回
我要举报该内容理由
×
广告及垃圾信息
抄袭或未经授权
其它举报理由
请输入您举报的理由(50字以内)
取消
提交