l

Dependencies:   mbed

Fork of Nucleo_serial_sf by PuG

Committer:
Peeraya
Date:
Tue Oct 20 06:30:21 2015 +0000
Revision:
0:09e78c46c376
Child:
1:a3a6e8f878da
led

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Peeraya 0:09e78c46c376 1 #include "mbed.h"
Peeraya 0:09e78c46c376 2
Peeraya 0:09e78c46c376 3 //------------------------------------
Peeraya 0:09e78c46c376 4 // Hyperterminal configuration
Peeraya 0:09e78c46c376 5 // 9600 bauds, 8-bit data, no parity
Peeraya 0:09e78c46c376 6 //------------------------------------
Peeraya 0:09e78c46c376 7
Peeraya 0:09e78c46c376 8 Serial pc(PA_9, PA_10);
Peeraya 0:09e78c46c376 9
Peeraya 0:09e78c46c376 10 DigitalOut myled0(D15);
Peeraya 0:09e78c46c376 11 DigitalOut myled1(D14);
Peeraya 0:09e78c46c376 12 DigitalOut myled2(D13);
Peeraya 0:09e78c46c376 13 DigitalOut myled3(D12);
Peeraya 0:09e78c46c376 14 DigitalOut myled4(D11);
Peeraya 0:09e78c46c376 15 DigitalOut myled5(D10);
Peeraya 0:09e78c46c376 16 DigitalOut myled6(D9);
Peeraya 0:09e78c46c376 17 DigitalOut myled7(D8);
Peeraya 0:09e78c46c376 18
Peeraya 0:09e78c46c376 19 DigitalIn inbutton(D3);
Peeraya 0:09e78c46c376 20
Peeraya 0:09e78c46c376 21
Peeraya 0:09e78c46c376 22 int main()
Peeraya 0:09e78c46c376 23 {
Peeraya 0:09e78c46c376 24
Peeraya 0:09e78c46c376 25 uint8_t state_menu=0;
Peeraya 0:09e78c46c376 26 uint8_t state_show=0;
Peeraya 0:09e78c46c376 27 uint8_t state_exit =0;
Peeraya 0:09e78c46c376 28 uint8_t data;
Peeraya 0:09e78c46c376 29
Peeraya 0:09e78c46c376 30 myled0 = 0;myled1 = 0;myled2 = 0;myled3 = 0;myled4 = 0;myled5 = 0;myled6 = 0;myled7 = 0;
Peeraya 0:09e78c46c376 31 pc.printf("Select Mode\n");
Peeraya 0:09e78c46c376 32 while(1) {
Peeraya 0:09e78c46c376 33 if(state_show == 0) {
Peeraya 0:09e78c46c376 34 pc.printf("Menu\n");
Peeraya 0:09e78c46c376 35 pc.printf("1.Choose LED pattern\n");
Peeraya 0:09e78c46c376 36 pc.printf("2.Print status\n");
Peeraya 0:09e78c46c376 37 state_show =1;
Peeraya 0:09e78c46c376 38 }
Peeraya 0:09e78c46c376 39 if(pc.readable()) {
Peeraya 0:09e78c46c376 40 data = pc.getc();
Peeraya 0:09e78c46c376 41 pc.printf("\n");
Peeraya 0:09e78c46c376 42 state_show =0;
Peeraya 0:09e78c46c376 43 state_exit =0;
Peeraya 0:09e78c46c376 44
Peeraya 0:09e78c46c376 45 switch(data) {
Peeraya 0:09e78c46c376 46 case '1':
Peeraya 0:09e78c46c376 47 do {
Peeraya 0:09e78c46c376 48 if(state_menu == 0) {
Peeraya 0:09e78c46c376 49 pc.printf("Choose LED pattern\n");
Peeraya 0:09e78c46c376 50 pc.printf("a.Pattern1\n");
Peeraya 0:09e78c46c376 51 pc.printf("d.Pattern2\n");
Peeraya 0:09e78c46c376 52 pc.printf("s.Exit\n");
Peeraya 0:09e78c46c376 53 state_menu = 1;
Peeraya 0:09e78c46c376 54 }
Peeraya 0:09e78c46c376 55 if(pc.readable()) {
Peeraya 0:09e78c46c376 56 data = pc.getc();
Peeraya 0:09e78c46c376 57 pc.printf("\n");
Peeraya 0:09e78c46c376 58 state_menu=0;
Peeraya 0:09e78c46c376 59
Peeraya 0:09e78c46c376 60 switch(data) {
Peeraya 0:09e78c46c376 61
Peeraya 0:09e78c46c376 62 case 'a':
Peeraya 0:09e78c46c376 63 case 'A':
Peeraya 0:09e78c46c376 64 myled0=1;
Peeraya 0:09e78c46c376 65 wait(1);
Peeraya 0:09e78c46c376 66 myled0=0;
Peeraya 0:09e78c46c376 67
Peeraya 0:09e78c46c376 68 myled1=1;
Peeraya 0:09e78c46c376 69 wait(1);
Peeraya 0:09e78c46c376 70 myled1=0;
Peeraya 0:09e78c46c376 71
Peeraya 0:09e78c46c376 72 myled2=1;
Peeraya 0:09e78c46c376 73 wait(1);
Peeraya 0:09e78c46c376 74 myled2=0;
Peeraya 0:09e78c46c376 75
Peeraya 0:09e78c46c376 76 myled3=1;
Peeraya 0:09e78c46c376 77 wait(1);
Peeraya 0:09e78c46c376 78 myled3=0;
Peeraya 0:09e78c46c376 79
Peeraya 0:09e78c46c376 80 myled4=1;
Peeraya 0:09e78c46c376 81 wait(1);
Peeraya 0:09e78c46c376 82 myled4=0;
Peeraya 0:09e78c46c376 83
Peeraya 0:09e78c46c376 84 myled5=1;
Peeraya 0:09e78c46c376 85 wait(1);
Peeraya 0:09e78c46c376 86 myled5=0;
Peeraya 0:09e78c46c376 87
Peeraya 0:09e78c46c376 88 myled6=1;
Peeraya 0:09e78c46c376 89 wait(1);
Peeraya 0:09e78c46c376 90 myled6=0;
Peeraya 0:09e78c46c376 91
Peeraya 0:09e78c46c376 92 myled7=1;
Peeraya 0:09e78c46c376 93 wait(1);
Peeraya 0:09e78c46c376 94 myled7=0;
Peeraya 0:09e78c46c376 95
Peeraya 0:09e78c46c376 96 break;
Peeraya 0:09e78c46c376 97
Peeraya 0:09e78c46c376 98 case 'd':
Peeraya 0:09e78c46c376 99 case 'D':
Peeraya 0:09e78c46c376 100 myled0 =1;
Peeraya 0:09e78c46c376 101 myled1 =1;
Peeraya 0:09e78c46c376 102 myled4 =1;
Peeraya 0:09e78c46c376 103 myled5 =1;
Peeraya 0:09e78c46c376 104 wait(1);
Peeraya 0:09e78c46c376 105 myled0 =0;
Peeraya 0:09e78c46c376 106 myled1 =0;
Peeraya 0:09e78c46c376 107 myled4 =0;
Peeraya 0:09e78c46c376 108 myled5 =0;
Peeraya 0:09e78c46c376 109
Peeraya 0:09e78c46c376 110 myled2 =1;
Peeraya 0:09e78c46c376 111 myled3 =1;
Peeraya 0:09e78c46c376 112 myled6 =1;
Peeraya 0:09e78c46c376 113 myled7 =1;
Peeraya 0:09e78c46c376 114 wait(1);
Peeraya 0:09e78c46c376 115 myled2 =0;
Peeraya 0:09e78c46c376 116 myled3 =0;
Peeraya 0:09e78c46c376 117 myled6 =0;
Peeraya 0:09e78c46c376 118 myled7 =0;
Peeraya 0:09e78c46c376 119
Peeraya 0:09e78c46c376 120 break;
Peeraya 0:09e78c46c376 121
Peeraya 0:09e78c46c376 122 case 's':
Peeraya 0:09e78c46c376 123 state_exit =1;
Peeraya 0:09e78c46c376 124
Peeraya 0:09e78c46c376 125 break;
Peeraya 0:09e78c46c376 126
Peeraya 0:09e78c46c376 127 default:
Peeraya 0:09e78c46c376 128 pc.printf("plz select a or d\n");
Peeraya 0:09e78c46c376 129 pc.printf("\n\n");
Peeraya 0:09e78c46c376 130 break;
Peeraya 0:09e78c46c376 131
Peeraya 0:09e78c46c376 132 }
Peeraya 0:09e78c46c376 133 }
Peeraya 0:09e78c46c376 134
Peeraya 0:09e78c46c376 135 } while(state_exit ==0);
Peeraya 0:09e78c46c376 136 pc.printf("\n");
Peeraya 0:09e78c46c376 137 break;
Peeraya 0:09e78c46c376 138
Peeraya 0:09e78c46c376 139 case '2':
Peeraya 0:09e78c46c376 140
Peeraya 0:09e78c46c376 141 do {
Peeraya 0:09e78c46c376 142 if(state_menu == 0)
Peeraya 0:09e78c46c376 143 {
Peeraya 0:09e78c46c376 144 pc.printf("LED status\n");
Peeraya 0:09e78c46c376 145 state_menu = 1;
Peeraya 0:09e78c46c376 146 }
Peeraya 0:09e78c46c376 147 if(inbutton == 0)
Peeraya 0:09e78c46c376 148 {
Peeraya 0:09e78c46c376 149 pc.printf("OFF\n");
Peeraya 0:09e78c46c376 150 state_menu=0;
Peeraya 0:09e78c46c376 151 }
Peeraya 0:09e78c46c376 152 if(inbutton == 1)
Peeraya 0:09e78c46c376 153 {
Peeraya 0:09e78c46c376 154 pc.printf("ON\n");
Peeraya 0:09e78c46c376 155 state_menu=0;
Peeraya 0:09e78c46c376 156 }
Peeraya 0:09e78c46c376 157
Peeraya 0:09e78c46c376 158 } while(state_exit ==0);
Peeraya 0:09e78c46c376 159 pc.printf("\n\n");
Peeraya 0:09e78c46c376 160 break;
Peeraya 0:09e78c46c376 161
Peeraya 0:09e78c46c376 162 default:
Peeraya 0:09e78c46c376 163 pc.printf("plz select 1 or 2 only\n");
Peeraya 0:09e78c46c376 164 pc.printf("\n\n");
Peeraya 0:09e78c46c376 165 break;
Peeraya 0:09e78c46c376 166 }
Peeraya 0:09e78c46c376 167 }
Peeraya 0:09e78c46c376 168
Peeraya 0:09e78c46c376 169 }
Peeraya 0:09e78c46c376 170 }