一、介绍

双色发光二极管(LED)能够发出两种不同颜色的光,通常是红的和绿色的,而不是仅有一种颜色。它采用3mm或5mm环氧树脂封装。它有3个引脚,共阴极或者共阳极可用。双色LED具有两个LED端子或者引脚,以反向平行方式排列在电路中并通过阴极/阳极连接。正电压可以指向LED端子之一,使该端子发出相应颜色的光;当电压的方向反转时,发出另一种颜色的光。在双色LED中,一次只能有一个引脚接受电压。因此,这种LED经常用作各种设备(包括电视机、数码相机和遥控器)的指示灯。
图2.1 双色LED模块

二、材料准备

Arduino Uno 主板*1USB数据线*1面包板*1双色LED模块*1跳线若干

三、实验原理

通过模拟信号端口控制LED灯的亮度,LED灯的颜色从红色变为绿色并闪烁混合颜色。
图2.2是我用NI Multisim画的一个原理图。
图2.2 双色LED灯电路原理图
四、实验过程
首先,这个实验需要用到的主要元器件就是一个双色LED灯,非常简单,按图2.3连接好就可以了。
图2.3 模拟电路连线图
图2.3中的红色线连接在板子的11号引脚上,绿色线连接在板子的10号引脚上,蓝色的线作为接地(大家注意一下,实际接线时略有差异)。
按要求将线接好后就是图2.4的样子了,怎么样,是不是很简单呢!没错,我也这么觉得!
图2.4 实际的电路接线图
给板子接上USB连接线后,我们就可以进行程序部分的工作了。
五、代码
/************************************ * 项目名字:双色LED实验 * 接口列表: * Dual-color Arduino Uno R3 * R 11 * GND GND * G 10 *编写:南友***********************/intredPin=11;//选择板子的11接口作为LED的红灯输出信号接口 intgreenPin=10;//选择板子的10接口作为LED的 绿灯输出信号接口 intval=0;voidsetup()//引脚分配 {pinMode(redPin,OUTPUT);pinMode(greenPin,OUTPUT);Serial.begin(9600);}voidloop(){for(val=255;val>0;val--){analogWrite(redPin,val);analogWrite(greenPin,255-val);Serial.println(val,DEC);delay(200);//延时200毫秒 }for(val=0;val