![](/media/cache/group/default_image.jpg.50x50_q85.jpg)
demo that cycles the led strip with a fade and with no fade
Dependencies: mbed
main.cpp@0:b33f0064af58, 2017-05-12 (annotated)
- Committer:
- MattShilling
- Date:
- Fri May 12 20:58:31 2017 +0000
- Revision:
- 0:b33f0064af58
publish strip_master_demo;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
MattShilling | 0:b33f0064af58 | 1 | #include "mbed.h" |
MattShilling | 0:b33f0064af58 | 2 | |
MattShilling | 0:b33f0064af58 | 3 | Serial pc(USBTX, USBRX); // tx, rx |
MattShilling | 0:b33f0064af58 | 4 | |
MattShilling | 0:b33f0064af58 | 5 | PwmOut blue(D2); |
MattShilling | 0:b33f0064af58 | 6 | PwmOut green(D3); |
MattShilling | 0:b33f0064af58 | 7 | PwmOut red(D4); |
MattShilling | 0:b33f0064af58 | 8 | |
MattShilling | 0:b33f0064af58 | 9 | #define RED 0 |
MattShilling | 0:b33f0064af58 | 10 | #define GREEN 2 |
MattShilling | 0:b33f0064af58 | 11 | #define BLUE 1 |
MattShilling | 0:b33f0064af58 | 12 | |
MattShilling | 0:b33f0064af58 | 13 | volatile bool fade = false; |
MattShilling | 0:b33f0064af58 | 14 | |
MattShilling | 0:b33f0064af58 | 15 | volatile float amnt = 1; |
MattShilling | 0:b33f0064af58 | 16 | |
MattShilling | 0:b33f0064af58 | 17 | void handle_input(){ |
MattShilling | 0:b33f0064af58 | 18 | |
MattShilling | 0:b33f0064af58 | 19 | //if(pc.readable()){ |
MattShilling | 0:b33f0064af58 | 20 | char input = pc.getc(); |
MattShilling | 0:b33f0064af58 | 21 | |
MattShilling | 0:b33f0064af58 | 22 | // on/off |
MattShilling | 0:b33f0064af58 | 23 | if(input == '1'){ |
MattShilling | 0:b33f0064af58 | 24 | pc.printf("On/Off 1 Sec Cycle!\n"); |
MattShilling | 0:b33f0064af58 | 25 | fade = false; |
MattShilling | 0:b33f0064af58 | 26 | } |
MattShilling | 0:b33f0064af58 | 27 | |
MattShilling | 0:b33f0064af58 | 28 | // fade |
MattShilling | 0:b33f0064af58 | 29 | else if(input == '2'){ |
MattShilling | 0:b33f0064af58 | 30 | pc.printf("Fade On/Off 1 sec cycle!\n"); |
MattShilling | 0:b33f0064af58 | 31 | fade = true; |
MattShilling | 0:b33f0064af58 | 32 | } |
MattShilling | 0:b33f0064af58 | 33 | |
MattShilling | 0:b33f0064af58 | 34 | |
MattShilling | 0:b33f0064af58 | 35 | } |
MattShilling | 0:b33f0064af58 | 36 | |
MattShilling | 0:b33f0064af58 | 37 | int main() { |
MattShilling | 0:b33f0064af58 | 38 | |
MattShilling | 0:b33f0064af58 | 39 | // set the |
MattShilling | 0:b33f0064af58 | 40 | blue.period_ms(10); |
MattShilling | 0:b33f0064af58 | 41 | green.period_ms(10); |
MattShilling | 0:b33f0064af58 | 42 | red.period_ms(10); |
MattShilling | 0:b33f0064af58 | 43 | |
MattShilling | 0:b33f0064af58 | 44 | while(1){ |
MattShilling | 0:b33f0064af58 | 45 | |
MattShilling | 0:b33f0064af58 | 46 | |
MattShilling | 0:b33f0064af58 | 47 | if(pc.readable()){ |
MattShilling | 0:b33f0064af58 | 48 | handle_input(); |
MattShilling | 0:b33f0064af58 | 49 | |
MattShilling | 0:b33f0064af58 | 50 | red = 1; |
MattShilling | 0:b33f0064af58 | 51 | green.pulsewidth_us((int)(amnt*100)); |
MattShilling | 0:b33f0064af58 | 52 | blue = 1; |
MattShilling | 0:b33f0064af58 | 53 | |
MattShilling | 0:b33f0064af58 | 54 | } |
MattShilling | 0:b33f0064af58 | 55 | |
MattShilling | 0:b33f0064af58 | 56 | } |
MattShilling | 0:b33f0064af58 | 57 | } |