Charles Tritt / Mbed OS Serial2RGB_21_v5
Committer:
CSTritt
Date:
Wed Mar 15 02:24:10 2017 +0000
Revision:
2:f91fc3b8d8f7
Parent:
1:fdb8ecdf954f
Child:
3:cbacf69dbed5
Added wiring diagram and revised comments.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mab5449 0:8d318218bac1 1 #include "mbed.h"
CSTritt 1:fdb8ecdf954f 2 /*
CSTritt 1:fdb8ecdf954f 3 Serial2RGB main by C. S. Tritt, Last revised 3/14/17 (v. 1.0)
CSTritt 2:f91fc3b8d8f7 4
CSTritt 2:f91fc3b8d8f7 5 Toggles RGB LED junctions in response to serial input.
CSTritt 2:f91fc3b8d8f7 6
CSTritt 2:f91fc3b8d8f7 7 Suggested wiring...
CSTritt 2:f91fc3b8d8f7 8
CSTritt 2:f91fc3b8d8f7 9 Common Anode LED (active low)
CSTritt 2:f91fc3b8d8f7 10
CSTritt 2:f91fc3b8d8f7 11 /-- 1 kΩ -- D9 (red)
CSTritt 2:f91fc3b8d8f7 12 + 3.3 to 5.0 V ----LED<--- 680 Ω -- D10 (green)
CSTritt 2:f91fc3b8d8f7 13 \-- 680 Ω -- D11 (blue)
CSTritt 2:f91fc3b8d8f7 14
CSTritt 2:f91fc3b8d8f7 15 Common Cathode LED (active high)
CSTritt 2:f91fc3b8d8f7 16
CSTritt 2:f91fc3b8d8f7 17 /-- 1 kΩ -- D9 (red)
CSTritt 2:f91fc3b8d8f7 18 GND ----LED<--- 680 Ω -- D10 (green)
CSTritt 2:f91fc3b8d8f7 19 \-- 680 Ω -- D11 (blue)
CSTritt 2:f91fc3b8d8f7 20
CSTritt 1:fdb8ecdf954f 21 */
CSTritt 1:fdb8ecdf954f 22 DigitalOut RedLED(D9); // Physically same as Arduino Digital pin 9.
CSTritt 1:fdb8ecdf954f 23 DigitalOut GrnLED(D10); // Physically same as Arduino Digital pin 10.
CSTritt 1:fdb8ecdf954f 24 DigitalOut BluLED(D11); // Physically same as Arduino Digital pin 11.
CSTritt 1:fdb8ecdf954f 25
CSTritt 1:fdb8ecdf954f 26 Serial pc(USBTX, USBRX); // Default settings are 9600 Baud, 8-N-1.
mab5449 0:8d318218bac1 27
mab5449 0:8d318218bac1 28 int main() {
CSTritt 1:fdb8ecdf954f 29
CSTritt 1:fdb8ecdf954f 30 RedLED = 0;
CSTritt 1:fdb8ecdf954f 31 GrnLED = 0;
CSTritt 1:fdb8ecdf954f 32 BluLED = 0;
CSTritt 1:fdb8ecdf954f 33 char letter;
CSTritt 1:fdb8ecdf954f 34
mab5449 0:8d318218bac1 35 while(1) {
CSTritt 1:fdb8ecdf954f 36 if (pc.readable()) {
CSTritt 1:fdb8ecdf954f 37 letter = pc.getc();
CSTritt 1:fdb8ecdf954f 38 pc.putc(letter);
CSTritt 1:fdb8ecdf954f 39 if (letter == 'r') {
CSTritt 1:fdb8ecdf954f 40 RedLED = !RedLED;
CSTritt 1:fdb8ecdf954f 41 }
CSTritt 1:fdb8ecdf954f 42 else if (letter == 'g') {
CSTritt 1:fdb8ecdf954f 43 GrnLED = !GrnLED;
CSTritt 1:fdb8ecdf954f 44 }
CSTritt 1:fdb8ecdf954f 45 else if (letter == 'b') {
CSTritt 1:fdb8ecdf954f 46 BluLED = !BluLED;
CSTritt 1:fdb8ecdf954f 47 }
mab5449 0:8d318218bac1 48 }
mab5449 0:8d318218bac1 49 }
mab5449 0:8d318218bac1 50 }