当前位置:首页 > 科学研究 > 电子编程 > 正文内容

Arduino Project 008 - RGB LED Mood Lamp

RonWang7个月前 (07-09)电子编程123

In the last project, you learned how to adjust the brightness of an LED using the PWM capabilities of the Atmega chip. You’ll now take advantage of this capability by using a red, green, and blue LED and mixing these colors to create any color you wish. From that, you’ll create a mood lamp similar to those seen in stores nowadays.

项目8 RGB Mood Lamp 

08 RGB Mood Lamp Circuit

08 RGB Mood Lamp Schematic

/* Coding Ron Wang
   July 9th 2024
   Autaba support for coding hardware
 */
// Project 8 - Mood Lamp
float RGB1[3];
float RGB2[3];
float INC[3];
int red, green, blue;
int RedPin = 10;
int GreenPin = 9;
int BluePin = 8;
void setup()
{
 randomSeed(analogRead(0));
 RGB1[0] = 0;
 RGB1[1] = 0;
 RGB1[2] = 0;
 RGB2[0] = random(256);
 RGB2[1] = random(256);
 RGB2[2] = random(256);
}
void loop()
{
 randomSeed(analogRead(0));
 for (int x=0; x<3; x++) {
 INC[x] = (RGB1[x] - RGB2[x]) / 256; }
 for (int x=0; x<256; x++) {
 red = int(RGB1[0]);
 green = int(RGB1[1]);
 blue = int(RGB1[2]);
 analogWrite (RedPin, red);
 analogWrite (GreenPin, green);
 analogWrite (BluePin, blue);
 delay(100);
 RGB1[0] -= INC[0];
 RGB1[1] -= INC[1];
 RGB1[2] -= INC[2];
 }
 for (int x=0; x<3; x++) {
 RGB2[x] = random(556)-300;
 RGB2[x] = constrain(RGB2[x], 0, 255);
 delay(1000);
 }
}

版权声明:本文为原创文章,版权归donstudio所有,欢迎分享本文,转载请保留出处!

本文链接:http://www.donstudio.cn/?id=258

标签: Arduino

相关文章

Arduino Project 023 - Liquid Crystal Displays - Hello World

Arduino Project 023 - Liquid Crystal Displays - Hello World

Before wiring the LCD screen to your Arduino board we suggest to solder a pin header strip to the 14...

Arduino Project 032 - BMP280 Pressure Sensor LCD Display

Arduino Project 032 - BMP280 Pressure Sensor LCD Display

For this project we will use Arduino Uno and BMP280 along with LCD 16x2 display module to display te...

Arduino Project 030B - MX1508 H-Driver Motor

Arduino Project 030B - MX1508 H-Driver Motor

MX1508 H-BridgeDual Motor DriverThe driver can drive up to two motors. The H-Bridge dual motor drive...

 Arduino Project 043 - SD CardTemperature Datalogger

Arduino Project 043 - SD CardTemperature Datalogger

Todady I made a simple Arduino datalogger using SD card and DHT11  relative humidity and t...

 Arduino Project 037 - 18B20 Temperature Sensor

Arduino Project 037 - 18B20 Temperature Sensor

The DS18B20 Temperature Sensor is a digital temperature sensor capable of measuring temperatures wit...

Arduino Project 034 - TM1637 4Digital 7Segment Display Module

Arduino Project 034 - TM1637 4Digital 7Segment Display Module

A standard 4-digit 7-segment display is needed for clock, timer and counter projects, but it usually...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。