From 006bfeb35e6eb70a698571a7ff289e62ad064378 Mon Sep 17 00:00:00 2001 From: Kjetil Orbekk Date: Fri, 27 Nov 2015 23:02:20 -0500 Subject: Add exercise 2 and 3. --- led-dim/led-dim.ino | 16 ++++++++++++++++ rgb-led/rgb-led.ino | 41 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 57 insertions(+) create mode 100644 led-dim/led-dim.ino create mode 100644 rgb-led/rgb-led.ino diff --git a/led-dim/led-dim.ino b/led-dim/led-dim.ino new file mode 100644 index 0000000..fe41a53 --- /dev/null +++ b/led-dim/led-dim.ino @@ -0,0 +1,16 @@ +const int kLed = 10; +const int kSensor = A0; + +void setup() { + pinMode(kSensor, INPUT); + pinMode(kLed, OUTPUT); +} + +void loop() { + int value = analogRead(kSensor); + digitalWrite(kLed, HIGH); + delay(value); + digitalWrite(kLed, LOW); + delay(value); + printf("%s\n", value); +} diff --git a/rgb-led/rgb-led.ino b/rgb-led/rgb-led.ino new file mode 100644 index 0000000..f635313 --- /dev/null +++ b/rgb-led/rgb-led.ino @@ -0,0 +1,41 @@ +int kPinRed = 9; +int kPinGreen = 10; +int kPinBlue = 11; + +void setup() { + pinMode(kPinRed, OUTPUT); + pinMode(kPinGreen, OUTPUT); + pinMode(kPinBlue, OUTPUT); +} + +void loop() { + //analogWrite(kPinBlue, 100); + //delay(1000); + + for (int i=0; i<768; i+=4) { + showColor(i); + delay(3); + } +} + +void showColor(int color) { + int r, g, b; + if (color < 256) { + r = 255-color; + g = color; + b = 0; + } else if (color < 512) { + r = 0; + g = 255-(color-256); + b = color-256; + } else { + r = color-512; + g = 0; + b = 255-(color-512); + } + + analogWrite(kPinRed, r); + analogWrite(kPinGreen, g); + analogWrite(kPinBlue, b); +} + -- cgit v1.2.3