Led花样流水

来自Microduino Wikipedia
Radiumray9@gmail.com讨论 | 贡献2014年10月29日 (三) 07:05的版本 程序
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转至: 导航搜索
Language English

目的

本教程将教大家如何用Processing来控制8个LED灯,想让谁亮就谁亮。

设备

  • 其他硬件设备
    • USB数据连接线 一根
    • LED灯 八个
    • 330欧电阻 一个
    • 面包板 一个
    • 跳线 一盒

原理图

ProcessingControl8LEDSchematics.jpg


程序

sketch_8LEDs

注意:代码里包含图片请不要丢掉

调试

步骤一:按着原理图搭建硬件环境,像这样:

ProcessingControl8LEDConnectionDiagram.jpg


步骤二:解释一下代码:

在本例中有两个代码文件:

LED:LED灯的对象

//定义的对象内变量

 int xpos;
 int ypos;
 int w = 50;
 int h = 50;
 
 PImage LEDState=loadImage("LEDOFF.png");
 int ledPin;
 boolean button = false;


//构造函数

 LED(int xpos_, int ypos_, int ledPin_) {
   xpos = xpos_;
   ypos = ypos_;
   ledPin=ledPin_;
 }

//显示函数

 void display() {
   if(button) {
     LEDState=loadImage("LEDON.png");
   } else {
     LEDState=loadImage("LEDOFF.png");
   }
   image(LEDState,xpos,ypos);
 }


sketch_8LEDs:主程序

//鼠标点击函数,判断点击的LED,点击后切换按钮状态和LED灯的状态

 void mousePressed() {
   for (int i = 0; i < leds.length; i ++ ) {
     x=leds[i].xpos;
     y=leds[i].ypos;
     w=leds[i].w;
     h=leds[i].h;
     if (mouseX > x && mouseX < x+w && mouseY > y && mouseY < y+h) {
       leds[i].button = !leds[i].button;
     }
   }
 }

步骤三:下载代码并编译通过。


步骤四:运行后随便点几个灯泡,看看有界面和实际的LED灯什么反应。

结果

屏幕上会显示8个灯泡,你让那个灯泡亮,实际对应的LED灯就会亮

ProcessingControl8LEDResult.jpg

视频