电子工程师技术服务社区
公告
登录
|
注册
首页
技术问答
厂商活动
正点原子
板卡试用
资源库
下载
文章
社区首页
文章
发光逗趣口罩
分 享
扫描二维码分享
发光逗趣口罩
arduino
点阵
震动模块
gada8881
关注
发布时间: 2020-08-25
丨
阅读: 3066
# 引言: **Arduino做的各种应用广泛被开源硬件爱好者喜欢。今天给大家介绍一个互动性强的arduino点阵搞怪口罩,这个是我在看到国外的创客伙伴先做了一个麦克风+8x8LED的模仿人说话口型的口罩出来,然后灵机一动,用手边的点阵模块+震动模块的组合也模仿了一个模仿人说话口型的口罩出来,主要是给经常带口罩的人娱乐他人用的。** ![](https://cf01.ickimg.com/bbsimages/202008/3eff7916a41830b1ffdfd419ce913c45.jpg) ## 第一步:展示内容 通过嘴巴的运动触发震动模块,从中使得arduino控制的点阵led显示打开的嘴巴形状,好像人在说话的喜剧效果。 ![](https://cf01.ickimg.com/bbsimages/202008/b17c95382188e546187409395ccad5c6.png) ![](https://cf01.ickimg.com/bbsimages/202008/1fbec3d333f01edd0832a42a37f0f26e.jpg) ![](https://cf01.ickimg.com/bbsimages/202008/2f30da29fcb516dae0075a56887f8004.jpg) ![](https://cf01.ickimg.com/bbsimages/202008/13d44d9dd90b0b962257af148e01bde4.jpg) ## 第二步:关键难点是arduino的选型,最后选了可穿戴的arduino lilypad模块做主控 ![](https://cf01.ickimg.com/bbsimages/202008/2c046736b27768edd50e39bf31da9872.jpg) ![](https://cf01.ickimg.com/bbsimages/202008/5cbdb7a363f9286af79f444c74d8edd7.png) ## 第三步:硬件搭建 所需器材:Arduino lilypad控制器(2);震动传感器(3);8x8点阵模块(4);5v 锂电池;(5);FTDI烧录模块; ![](https://cf01.ickimg.com/bbsimages/202008/c7935a77470bfb42d055f9284355fbeb.png) ## 第四步:了解一下关键硬件的参数 根据测试,震动模块的旋钮调整到绿色led灯亮时候,效果最佳 ## 第五步:硬件清单 参考上图 ## 第六步:总体介绍 逗趣口罩设计系统是由点阵模块震动传感器和lilypad arduino来完成的。震动传感的灵敏度可以调整, 做好后放在两个口罩中间缝合好,工作原理是通过嘴的动作触发震动模块来实现点阵决定显示何种图案的。 ## 第七部:连线图 ![](https://cf01.ickimg.com/bbsimages/202008/5d55e4b2101f6e5b91de5b76ab7acfc5.jpg) ## 第八部:代码部分的设计 ```c /*[/align]* This project is for fun only.it simulates a speaking mouth through * a 8x8 led matrix modual and a Vibration modual. * It was made by gada888 from Luoyang.CN.28-06-2020 * contact email:gada888@hotmail.com */ #include <LedControl.h> int VIB =6; int DIN = 8; int CS = 9; int CLK = 10; LedControl lc = LedControl(DIN, CLK, CS, 0); byte open[8] = {0x0,0x0,0x3C,0xC3,0x42,0x3C,0x0,0x0}; byte close[8] = {0x0,0x0,0x0,0xFF,0x0,0x0,0x0,0x0}; void setup() { lc.shutdown(0, false); //The MAX72XX is in power-saving mode on startup lc.setIntensity(0, 4); // Set the brightness to maximum value lc.clearDisplay(0); // and clear the display pinMode(VIB, INPUT); Serial.begin(9600); } void loop() { long measurement =TP_init(); delay(50); Serial.print("measurment="); Serial.println(measurement); if (measurement > 1000){ printByte(open); } else{ printByte(close); } } void printByte(byte character []) { int i = 0; for(i = 0; i < 8; i++) { lc.setRow(0, i, character); } } long TP_init(){ delay(10); long measurement=pulseIn (VIB, HIGH); //wait for the pin to get HIGH and returns measurement return measurement; } ```
原创作品,未经权利人授权禁止转载。详情见
转载须知
。
举报文章
点赞
(
0
)
gada8881
关注
评论
(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字以内)
取消
提交