查看“距离表情小交互”的源代码
←
距离表情小交互
跳转至:
导航
、
搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
{| style="width: 800px;" |- | <p style="color: #4F4E4E;font-size:220%">'''Sensor-Ultrasonic+距离表情小交互'''</p> <br> 本示例给出了超声波传感器测距与点阵显示图案交互的效果 <br> <br> <p style="color: #E87E05;font-size:135%">所需硬件</p> *[[mCookie-Core]] *[[mCookie-Battery]] *[[mCookie-Hub/zh|mCookie-Hub]] *[[Sensor-Ultrasonic+]] <br> <p style="color: #E87E05;font-size:135%">电路搭建</p> 将Ultrasonic+传感器接到Hub的IIC引脚。 <br> 将Battery、Core、Hub堆叠在一起(或者用mCenter+代替这三种模块,代替后下载编译核心选择core+),通过MicroUSB数据线接入电脑。初次使用请参考:[[AVR核心:Getting_started/zh|Getting Started]]。 <br> <br> <p style="color: #E87E05;font-size:135%">代码</p> <source lang="cpp"> #include <Microduino_Ultrasonic.h> //引用超声波库文件 #include <Microduino_Matrix.h> uint8_t Addr[MatrixPix_X][MatrixPix_Y] = { //1x1 {48} //点阵IIC地址 }; Matrix display = Matrix(Addr, TYPE_S2); //TYPE_COLOR or TYPE_S2 Ultrasonic Ultrasonic1(ULTRASONIC_ADDR_1);//将Ultrasonic实例化 uint16_t Distance; //定义变量 uint32_t oledTime = millis(); uint8_t disFlag; void setup() { Serial.begin(9600); // 串口初始化 Ultrasonic1.begin(); //超声波初始化 display.setBrightness(100); delay(2000); display.clearDisplay(); disFlag = 2; } void loop() { Distance = Ultrasonic1.getDistance(); //获取超声波测得的距离 Serial.println(Distance); //串口打印距离值 matrixDraw(Distance); delay(10); //延时10ms } void matrixDraw(uint16_t Dis) { if (Dis <= 150) { if (disFlag == 0) return; else { disFlag = 0; display.clearDisplay(); display.drawLine(0, 2, 7, 2); display.drawLine(0, 3, 2, 7); display.drawLine(7, 3, 5, 7); display.setLed(3, 7, true); display.setLed(4, 7, true); } } else if ((Dis > 150) && (Dis < 300)) { if (disFlag == 1) return; else { disFlag = 1; display.clearDisplay(); display.drawLine(0, 2, 7, 2); display.drawLine(0, 3, 1, 4); display.drawLine(7, 3, 6, 4); display.drawLine(1, 4, 6, 4); } } else { if (disFlag == 2) return; else { disFlag = 2; display.clearDisplay(); display.drawLine(0, 5, 2, 3); display.drawLine(7, 5, 5, 3); display.setLed(3, 3, true); display.setLed(4, 3, true); } } } </source> <br> |} <br> <p style="color: #E87E05;font-size:135%">应用效果</p> 0-15厘米时,点阵效果如下: [[File:Sensor_Ultrasonic+_mouth1.jpg|200px|left]] <br> 15-30厘米时,点阵效果如下: [[File:Sensor_Ultrasonic+_mouth2.jpg|200px|left]] <br> 超过30厘米 [[File:Sensor_Ultrasonic+_mouth3.jpg|200px|left]] <br> [[Sensor-Ultrasonic/zh|返回Sensor-Ultrasonic 界面]]
返回至
距离表情小交互
。
导航菜单
个人工具
创建账户
登录
名字空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
Welcome
首页
创客大赛
大赛详情
3D打印
安装月球车
图形化编程
操控月球车
升级月球车
编程工具下载
软件下载
Arduino
Processing
Mixly
Scratch
模块套件
Microduino 102
mCookie 102
mCookie 202
mCookie 302
IBC
其他
应用套件
四轴飞行器
平衡车
小车CUBE
音乐播放器
刷卡音乐播放器
wifi气象站
彩虹音乐触摸灯
分贝检测仪
迎门汇报
LED点阵时钟
LED点阵屏幕
硬件
mCookie
Sensor
Microduino
MicroWrt
MicroNux
MicroRobot-Core
MicroRobot-CoreESP
ideaBoard
ideaBox
MicroMV
MicroAI
帮助
常见问题
帮助
工具
链入页面
相关更改
特殊页面
页面信息