面向儿童的 Arduino 编程:Arduino入门项目 |
您所在的位置:网站首页 › arduino儿童编程襄阳 › 面向儿童的 Arduino 编程:Arduino入门项目 |
浏览量: 228 夜晚在街上行走的时候或者去某个城市的景区游玩的时候,大家一定看到过流光溢彩的灯光秀,那你知道这些动人的灯光夜景是怎么实现的吗? 这就和我们本节课要讲的RGB LED有关,RGB LED是一种可编程的LED灯,由红、绿、蓝三种颜色的LED芯片组成,通过调节每一种颜色的亮度和混合比例,实现不同颜色的灯光效果。 本节课我们就来详细的学习如何将RGB LED和Arduino连接起来。 1、所需组件 RGB共阳极RGB共阴极Arduino UNO面包板跳线电阻220欧姆2、电路图 3、项目说明 (1)RGB LED 类型和结构 RGB LED 内部有三个 LED,通常,这三个内部 LED 共享一个公共阳极或一个公共阴极,尤其是在通孔封装中。因此,我们可以将RGB LED分类为公共阳极或公共阴极类型,就像在七段显示器中一样。 (2)共阳极RGB LED 在公共阳极RGB LED中,内部LED的阳极都连接到外部阳极引线。要控制每种颜色,您需要对红色、绿色和蓝色引线施加低电平信号或接地,并将阳极引线连接到电源的正极端子。 (3)共阴极RGB LED 在普通的阴极RGB LED中,内部LED的阴极都连接到外部阴极引线。要控制每种颜色,您需要对红色、绿色和蓝色引线施加高电平信号或 VCC,并将阳极引线连接到电源的负极端子。 (4)PWM(脉宽调制)基础知识 脉宽调制(PWM)是一种通过数字方式获得模拟结果的技术。数字控制用于创建方波,即在开和关之间切换的信号。 这种开关模式可以通过改变信号开启时间与信号关闭时间的部分来模拟电路板全Vcc(例如,UNO为5 V,MKR板为3.3 V)和关闭(0 V)之间的电压。 “导通时间”的持续时间称为脉冲宽度。要获得不同的模拟值,需要更改或调制脉冲宽度。例如,如果对 LED 足够快地重复这种开关模式,则结果就好像信号是介于 0 和 Vcc 之间的稳定电压,控制 LED 的亮度。 在下图中,绿线表示常规时间段。该持续时间或周期是PWM频率的倒数。换句话说,当Arduino的PWM频率约为500Hz时,每条绿线的测量值为2毫秒。 4、Arduino代码 // *Interfacing RGB LED with Arduino // * Author: Osama Ahmed //Defining variable and the GPIO pin on Arduino int redPin= 5; int greenPin = 6; int bluePin = 7; void setup() { //Defining the pins as OUTPUT pinMode(redPin, OUTPUT); pinMode(greenPin, OUTPUT); pinMode(bluePin, OUTPUT); } void loop() { setColor(255, 0, 0); // Red Color delay(1000); setColor(0, 255, 0); // Green Color delay(1000); setColor(0, 0, 255); // Blue Color delay(1000); setColor(255, 255, 255); // White Color delay(1000); setColor(170, 0, 255); // Purple Color delay(1000); setColor(127, 127, 127); // Light Blue delay(1000); } void setColor(int redValue, int greenValue, int blueValue) { analogWrite(redPin, redValue); analogWrite(greenPin, greenValue); analogWrite(bluePin, blueValue); } Code language: C++ (cpp)这个项目适合Arduino初学者制作,大家可以参考课程内容动手实践起来了。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |