l
Dependencies: mbed
Fork of Nucleo_serial_sf by
main.cpp@2:e06d96952cef, 2015-10-25 (annotated)
- Committer:
- Peeraya
- Date:
- Sun Oct 25 06:18:39 2015 +0000
- Revision:
- 2:e06d96952cef
- Parent:
- 1:a3a6e8f878da
- Child:
- 3:a46061896235
new
Who changed what in which revision?
User | Revision | Line number | New 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 | 1:a3a6e8f878da | 8 | Serial pc(SERIAL_TX, SERIAL_RX); |
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 | 1:a3a6e8f878da | 59 | |
Peeraya | 2:e06d96952cef | 60 | if(data=='a'||data='A') |
Peeraya | 1:a3a6e8f878da | 61 | { |
Peeraya | 1:a3a6e8f878da | 62 | myled0=1; |
Peeraya | 0:09e78c46c376 | 63 | wait(1); |
Peeraya | 0:09e78c46c376 | 64 | myled0=0; |
Peeraya | 0:09e78c46c376 | 65 | |
Peeraya | 0:09e78c46c376 | 66 | myled1=1; |
Peeraya | 0:09e78c46c376 | 67 | wait(1); |
Peeraya | 0:09e78c46c376 | 68 | myled1=0; |
Peeraya | 0:09e78c46c376 | 69 | |
Peeraya | 0:09e78c46c376 | 70 | myled2=1; |
Peeraya | 0:09e78c46c376 | 71 | wait(1); |
Peeraya | 0:09e78c46c376 | 72 | myled2=0; |
Peeraya | 0:09e78c46c376 | 73 | |
Peeraya | 0:09e78c46c376 | 74 | myled3=1; |
Peeraya | 0:09e78c46c376 | 75 | wait(1); |
Peeraya | 0:09e78c46c376 | 76 | myled3=0; |
Peeraya | 0:09e78c46c376 | 77 | |
Peeraya | 0:09e78c46c376 | 78 | myled4=1; |
Peeraya | 0:09e78c46c376 | 79 | wait(1); |
Peeraya | 0:09e78c46c376 | 80 | myled4=0; |
Peeraya | 0:09e78c46c376 | 81 | |
Peeraya | 0:09e78c46c376 | 82 | myled5=1; |
Peeraya | 0:09e78c46c376 | 83 | wait(1); |
Peeraya | 0:09e78c46c376 | 84 | myled5=0; |
Peeraya | 0:09e78c46c376 | 85 | |
Peeraya | 0:09e78c46c376 | 86 | myled6=1; |
Peeraya | 0:09e78c46c376 | 87 | wait(1); |
Peeraya | 0:09e78c46c376 | 88 | myled6=0; |
Peeraya | 0:09e78c46c376 | 89 | |
Peeraya | 0:09e78c46c376 | 90 | myled7=1; |
Peeraya | 0:09e78c46c376 | 91 | wait(1); |
Peeraya | 1:a3a6e8f878da | 92 | myled7=0; |
Peeraya | 1:a3a6e8f878da | 93 | } |
Peeraya | 2:e06d96952cef | 94 | if(data=='d'||data=='D') |
Peeraya | 1:a3a6e8f878da | 95 | { |
Peeraya | 0:09e78c46c376 | 96 | myled0 =1; |
Peeraya | 0:09e78c46c376 | 97 | myled1 =1; |
Peeraya | 0:09e78c46c376 | 98 | myled4 =1; |
Peeraya | 0:09e78c46c376 | 99 | myled5 =1; |
Peeraya | 0:09e78c46c376 | 100 | wait(1); |
Peeraya | 0:09e78c46c376 | 101 | myled0 =0; |
Peeraya | 0:09e78c46c376 | 102 | myled1 =0; |
Peeraya | 0:09e78c46c376 | 103 | myled4 =0; |
Peeraya | 0:09e78c46c376 | 104 | myled5 =0; |
Peeraya | 0:09e78c46c376 | 105 | |
Peeraya | 0:09e78c46c376 | 106 | myled2 =1; |
Peeraya | 0:09e78c46c376 | 107 | myled3 =1; |
Peeraya | 0:09e78c46c376 | 108 | myled6 =1; |
Peeraya | 0:09e78c46c376 | 109 | myled7 =1; |
Peeraya | 0:09e78c46c376 | 110 | wait(1); |
Peeraya | 0:09e78c46c376 | 111 | myled2 =0; |
Peeraya | 0:09e78c46c376 | 112 | myled3 =0; |
Peeraya | 0:09e78c46c376 | 113 | myled6 =0; |
Peeraya | 0:09e78c46c376 | 114 | myled7 =0; |
Peeraya | 1:a3a6e8f878da | 115 | } |
Peeraya | 0:09e78c46c376 | 116 | |
Peeraya | 0:09e78c46c376 | 117 | } |
Peeraya | 1:a3a6e8f878da | 118 | |
Peeraya | 0:09e78c46c376 | 119 | |
Peeraya | 0:09e78c46c376 | 120 | } while(state_exit ==0); |
Peeraya | 0:09e78c46c376 | 121 | pc.printf("\n"); |
Peeraya | 0:09e78c46c376 | 122 | break; |
Peeraya | 0:09e78c46c376 | 123 | |
Peeraya | 0:09e78c46c376 | 124 | case '2': |
Peeraya | 0:09e78c46c376 | 125 | |
Peeraya | 0:09e78c46c376 | 126 | if(state_menu == 0) |
Peeraya | 0:09e78c46c376 | 127 | { |
Peeraya | 0:09e78c46c376 | 128 | pc.printf("LED status\n"); |
Peeraya | 0:09e78c46c376 | 129 | state_menu = 1; |
Peeraya | 0:09e78c46c376 | 130 | } |
Peeraya | 0:09e78c46c376 | 131 | if(inbutton == 0) |
Peeraya | 0:09e78c46c376 | 132 | { |
Peeraya | 0:09e78c46c376 | 133 | pc.printf("OFF\n"); |
Peeraya | 1:a3a6e8f878da | 134 | state_menu=1; |
Peeraya | 0:09e78c46c376 | 135 | } |
Peeraya | 0:09e78c46c376 | 136 | if(inbutton == 1) |
Peeraya | 0:09e78c46c376 | 137 | { |
Peeraya | 0:09e78c46c376 | 138 | pc.printf("ON\n"); |
Peeraya | 1:a3a6e8f878da | 139 | state_menu=1; |
Peeraya | 0:09e78c46c376 | 140 | } |
Peeraya | 0:09e78c46c376 | 141 | |
Peeraya | 0:09e78c46c376 | 142 | pc.printf("\n\n"); |
Peeraya | 0:09e78c46c376 | 143 | break; |
Peeraya | 0:09e78c46c376 | 144 | |
Peeraya | 0:09e78c46c376 | 145 | default: |
Peeraya | 0:09e78c46c376 | 146 | pc.printf("plz select 1 or 2 only\n"); |
Peeraya | 0:09e78c46c376 | 147 | pc.printf("\n\n"); |
Peeraya | 0:09e78c46c376 | 148 | break; |
Peeraya | 0:09e78c46c376 | 149 | } |
Peeraya | 0:09e78c46c376 | 150 | } |
Peeraya | 0:09e78c46c376 | 151 | |
Peeraya | 0:09e78c46c376 | 152 | } |
Peeraya | 0:09e78c46c376 | 153 | } |