Chawisorn samrit
/
lab4fra221
lab4
main.cpp@0:bc396bb049ae, 2017-11-24 (annotated)
- Committer:
- csggreen
- Date:
- Fri Nov 24 04:10:00 2017 +0000
- Revision:
- 0:bc396bb049ae
lab3
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
csggreen | 0:bc396bb049ae | 1 | #include "mbed.h" |
csggreen | 0:bc396bb049ae | 2 | Serial pc(D8, D2); |
csggreen | 0:bc396bb049ae | 3 | |
csggreen | 0:bc396bb049ae | 4 | DigitalOut gsled1(D3); |
csggreen | 0:bc396bb049ae | 5 | DigitalOut gsled2(D4); |
csggreen | 0:bc396bb049ae | 6 | DigitalOut gsled3(D5); |
csggreen | 0:bc396bb049ae | 7 | DigitalOut gsled4(D6); |
csggreen | 0:bc396bb049ae | 8 | |
csggreen | 0:bc396bb049ae | 9 | AnalogIn analog_value(A1);//อานค่าAnalogจากขาA1 |
csggreen | 0:bc396bb049ae | 10 | uint8_t state_show=0; |
csggreen | 0:bc396bb049ae | 11 | uint8_t data; |
csggreen | 0:bc396bb049ae | 12 | uint8_t Bluet; |
csggreen | 0:bc396bb049ae | 13 | float formvolume;//รับค่าจากR |
csggreen | 0:bc396bb049ae | 14 | float mVolt;//รับค่าที่แปลงแล้วหน่วยmV |
csggreen | 0:bc396bb049ae | 15 | float Volt; |
csggreen | 0:bc396bb049ae | 16 | int x=0; |
csggreen | 0:bc396bb049ae | 17 | |
csggreen | 0:bc396bb049ae | 18 | void Number0(){//float Number |
csggreen | 0:bc396bb049ae | 19 | gsled1 = 0; |
csggreen | 0:bc396bb049ae | 20 | gsled2 = 0; |
csggreen | 0:bc396bb049ae | 21 | gsled3 = 0; |
csggreen | 0:bc396bb049ae | 22 | gsled4 = 0; |
csggreen | 0:bc396bb049ae | 23 | } |
csggreen | 0:bc396bb049ae | 24 | void Number1(){// Number |
csggreen | 0:bc396bb049ae | 25 | gsled1 = 0; |
csggreen | 0:bc396bb049ae | 26 | gsled2 = 0; |
csggreen | 0:bc396bb049ae | 27 | gsled3 = 0; |
csggreen | 0:bc396bb049ae | 28 | gsled4 = 1; |
csggreen | 0:bc396bb049ae | 29 | } |
csggreen | 0:bc396bb049ae | 30 | void Number2(){ |
csggreen | 0:bc396bb049ae | 31 | gsled1 = 0; |
csggreen | 0:bc396bb049ae | 32 | gsled2 = 0; |
csggreen | 0:bc396bb049ae | 33 | gsled3 = 1; |
csggreen | 0:bc396bb049ae | 34 | gsled4 = 0; |
csggreen | 0:bc396bb049ae | 35 | } |
csggreen | 0:bc396bb049ae | 36 | void Number3(){ |
csggreen | 0:bc396bb049ae | 37 | gsled1 = 0; |
csggreen | 0:bc396bb049ae | 38 | gsled2 = 0; |
csggreen | 0:bc396bb049ae | 39 | gsled3 = 1; |
csggreen | 0:bc396bb049ae | 40 | gsled4 = 1; |
csggreen | 0:bc396bb049ae | 41 | } |
csggreen | 0:bc396bb049ae | 42 | void Number4(){ |
csggreen | 0:bc396bb049ae | 43 | gsled1 = 0; |
csggreen | 0:bc396bb049ae | 44 | gsled2 = 1; |
csggreen | 0:bc396bb049ae | 45 | gsled3 = 0; |
csggreen | 0:bc396bb049ae | 46 | gsled4 = 0; |
csggreen | 0:bc396bb049ae | 47 | } |
csggreen | 0:bc396bb049ae | 48 | void Number5(){ |
csggreen | 0:bc396bb049ae | 49 | gsled1 = 0; |
csggreen | 0:bc396bb049ae | 50 | gsled2 = 1; |
csggreen | 0:bc396bb049ae | 51 | gsled3 = 0; |
csggreen | 0:bc396bb049ae | 52 | gsled4 = 1; |
csggreen | 0:bc396bb049ae | 53 | } |
csggreen | 0:bc396bb049ae | 54 | void Number6(){ |
csggreen | 0:bc396bb049ae | 55 | gsled1 = 0; |
csggreen | 0:bc396bb049ae | 56 | gsled2 = 1; |
csggreen | 0:bc396bb049ae | 57 | gsled3 = 1; |
csggreen | 0:bc396bb049ae | 58 | gsled4 = 0; |
csggreen | 0:bc396bb049ae | 59 | } |
csggreen | 0:bc396bb049ae | 60 | void Number7(){ |
csggreen | 0:bc396bb049ae | 61 | gsled1 = 0; |
csggreen | 0:bc396bb049ae | 62 | gsled2 = 1; |
csggreen | 0:bc396bb049ae | 63 | gsled3 = 1; |
csggreen | 0:bc396bb049ae | 64 | gsled4 = 1; |
csggreen | 0:bc396bb049ae | 65 | } |
csggreen | 0:bc396bb049ae | 66 | void Number8(){ |
csggreen | 0:bc396bb049ae | 67 | gsled1 = 1; |
csggreen | 0:bc396bb049ae | 68 | gsled2 = 0; |
csggreen | 0:bc396bb049ae | 69 | gsled3 = 0; |
csggreen | 0:bc396bb049ae | 70 | gsled4 = 0; |
csggreen | 0:bc396bb049ae | 71 | } |
csggreen | 0:bc396bb049ae | 72 | void Number9(){ |
csggreen | 0:bc396bb049ae | 73 | gsled1 = 1; |
csggreen | 0:bc396bb049ae | 74 | gsled2 = 0; |
csggreen | 0:bc396bb049ae | 75 | gsled3 = 0; |
csggreen | 0:bc396bb049ae | 76 | gsled4 = 1; |
csggreen | 0:bc396bb049ae | 77 | } |
csggreen | 0:bc396bb049ae | 78 | void segmentfunction(){ |
csggreen | 0:bc396bb049ae | 79 | if (Bluet==0){ |
csggreen | 0:bc396bb049ae | 80 | Number0(); |
csggreen | 0:bc396bb049ae | 81 | } |
csggreen | 0:bc396bb049ae | 82 | else if (Bluet==1){ |
csggreen | 0:bc396bb049ae | 83 | Number1(); |
csggreen | 0:bc396bb049ae | 84 | } |
csggreen | 0:bc396bb049ae | 85 | else if (Bluet==2){ |
csggreen | 0:bc396bb049ae | 86 | Number2(); |
csggreen | 0:bc396bb049ae | 87 | } |
csggreen | 0:bc396bb049ae | 88 | else if (Bluet==3){ |
csggreen | 0:bc396bb049ae | 89 | Number3(); |
csggreen | 0:bc396bb049ae | 90 | } |
csggreen | 0:bc396bb049ae | 91 | else if (Bluet==4){ |
csggreen | 0:bc396bb049ae | 92 | Number4(); |
csggreen | 0:bc396bb049ae | 93 | } |
csggreen | 0:bc396bb049ae | 94 | else if (Bluet==5){ |
csggreen | 0:bc396bb049ae | 95 | Number5(); |
csggreen | 0:bc396bb049ae | 96 | } |
csggreen | 0:bc396bb049ae | 97 | else if (Bluet==6){ |
csggreen | 0:bc396bb049ae | 98 | Number6(); |
csggreen | 0:bc396bb049ae | 99 | } |
csggreen | 0:bc396bb049ae | 100 | else if (Bluet==7){ |
csggreen | 0:bc396bb049ae | 101 | Number7(); |
csggreen | 0:bc396bb049ae | 102 | } |
csggreen | 0:bc396bb049ae | 103 | else if (Bluet==8){ |
csggreen | 0:bc396bb049ae | 104 | Number8(); |
csggreen | 0:bc396bb049ae | 105 | } |
csggreen | 0:bc396bb049ae | 106 | else if (Bluet==9){ |
csggreen | 0:bc396bb049ae | 107 | Number9(); |
csggreen | 0:bc396bb049ae | 108 | } |
csggreen | 0:bc396bb049ae | 109 | } |
csggreen | 0:bc396bb049ae | 110 | void showmenu(){ |
csggreen | 0:bc396bb049ae | 111 | pc.printf("************\n"); |
csggreen | 0:bc396bb049ae | 112 | pc.printf(" MENU \n"); |
csggreen | 0:bc396bb049ae | 113 | pc.printf("************\n"); |
csggreen | 0:bc396bb049ae | 114 | pc.printf("1.PLAY SEGMENT \n"); |
csggreen | 0:bc396bb049ae | 115 | pc.printf("2.READ VR\n"); |
csggreen | 0:bc396bb049ae | 116 | state_show =1; |
csggreen | 0:bc396bb049ae | 117 | } |
csggreen | 0:bc396bb049ae | 118 | int main() |
csggreen | 0:bc396bb049ae | 119 | { |
csggreen | 0:bc396bb049ae | 120 | |
csggreen | 0:bc396bb049ae | 121 | while(1) { |
csggreen | 0:bc396bb049ae | 122 | |
csggreen | 0:bc396bb049ae | 123 | if (state_show == 0){ |
csggreen | 0:bc396bb049ae | 124 | showmenu(); |
csggreen | 0:bc396bb049ae | 125 | pc.readable(); |
csggreen | 0:bc396bb049ae | 126 | data = pc.getc(); |
csggreen | 0:bc396bb049ae | 127 | x=0; |
csggreen | 0:bc396bb049ae | 128 | if (data=='1'){ |
csggreen | 0:bc396bb049ae | 129 | pc.printf("PLAY SEGMENT \n"); |
csggreen | 0:bc396bb049ae | 130 | pc.readable(); |
csggreen | 0:bc396bb049ae | 131 | data = pc.getc(); |
csggreen | 0:bc396bb049ae | 132 | while(x==0){ |
csggreen | 0:bc396bb049ae | 133 | while (data=='0'){ |
csggreen | 0:bc396bb049ae | 134 | pc.printf("-->0<-- \n\n"); |
csggreen | 0:bc396bb049ae | 135 | Bluet=0; |
csggreen | 0:bc396bb049ae | 136 | segmentfunction(); |
csggreen | 0:bc396bb049ae | 137 | data = pc.getc(); |
csggreen | 0:bc396bb049ae | 138 | } |
csggreen | 0:bc396bb049ae | 139 | while (data=='1'){ |
csggreen | 0:bc396bb049ae | 140 | pc.printf("-->1<-- \n\n"); |
csggreen | 0:bc396bb049ae | 141 | Bluet=1; |
csggreen | 0:bc396bb049ae | 142 | segmentfunction(); |
csggreen | 0:bc396bb049ae | 143 | data = pc.getc(); |
csggreen | 0:bc396bb049ae | 144 | } |
csggreen | 0:bc396bb049ae | 145 | while (data=='2'){ |
csggreen | 0:bc396bb049ae | 146 | pc.printf("-->2<-- \n\n"); |
csggreen | 0:bc396bb049ae | 147 | Bluet=2; |
csggreen | 0:bc396bb049ae | 148 | segmentfunction(); |
csggreen | 0:bc396bb049ae | 149 | data = pc.getc(); |
csggreen | 0:bc396bb049ae | 150 | } |
csggreen | 0:bc396bb049ae | 151 | while (data=='3'){ |
csggreen | 0:bc396bb049ae | 152 | pc.printf("-->3<-- \n\n"); |
csggreen | 0:bc396bb049ae | 153 | Bluet=3; |
csggreen | 0:bc396bb049ae | 154 | segmentfunction(); |
csggreen | 0:bc396bb049ae | 155 | data = pc.getc(); |
csggreen | 0:bc396bb049ae | 156 | } |
csggreen | 0:bc396bb049ae | 157 | while (data=='4'){ |
csggreen | 0:bc396bb049ae | 158 | pc.printf("-->4<-- \n\n"); |
csggreen | 0:bc396bb049ae | 159 | Bluet=4; |
csggreen | 0:bc396bb049ae | 160 | segmentfunction(); |
csggreen | 0:bc396bb049ae | 161 | data = pc.getc(); |
csggreen | 0:bc396bb049ae | 162 | } |
csggreen | 0:bc396bb049ae | 163 | while (data=='5'){ |
csggreen | 0:bc396bb049ae | 164 | pc.printf("-->5<-- \n\n"); |
csggreen | 0:bc396bb049ae | 165 | Bluet=5; |
csggreen | 0:bc396bb049ae | 166 | segmentfunction(); |
csggreen | 0:bc396bb049ae | 167 | data = pc.getc(); |
csggreen | 0:bc396bb049ae | 168 | } |
csggreen | 0:bc396bb049ae | 169 | while (data=='6'){ |
csggreen | 0:bc396bb049ae | 170 | pc.printf("-->6<-- \n\n"); |
csggreen | 0:bc396bb049ae | 171 | Bluet=6; |
csggreen | 0:bc396bb049ae | 172 | segmentfunction(); |
csggreen | 0:bc396bb049ae | 173 | data = pc.getc(); |
csggreen | 0:bc396bb049ae | 174 | } |
csggreen | 0:bc396bb049ae | 175 | while (data=='7'){ |
csggreen | 0:bc396bb049ae | 176 | pc.printf("-->7<-- \n\n"); |
csggreen | 0:bc396bb049ae | 177 | Bluet=7; |
csggreen | 0:bc396bb049ae | 178 | segmentfunction(); |
csggreen | 0:bc396bb049ae | 179 | data = pc.getc(); |
csggreen | 0:bc396bb049ae | 180 | } |
csggreen | 0:bc396bb049ae | 181 | while (data=='8'){ |
csggreen | 0:bc396bb049ae | 182 | pc.printf("-->8<-- \n\n"); |
csggreen | 0:bc396bb049ae | 183 | Bluet=8; |
csggreen | 0:bc396bb049ae | 184 | segmentfunction(); |
csggreen | 0:bc396bb049ae | 185 | data = pc.getc(); |
csggreen | 0:bc396bb049ae | 186 | } |
csggreen | 0:bc396bb049ae | 187 | while (data=='9'){ |
csggreen | 0:bc396bb049ae | 188 | pc.printf("-->9<-- \n\n"); |
csggreen | 0:bc396bb049ae | 189 | Bluet=9; |
csggreen | 0:bc396bb049ae | 190 | segmentfunction(); |
csggreen | 0:bc396bb049ae | 191 | data = pc.getc(); |
csggreen | 0:bc396bb049ae | 192 | } |
csggreen | 0:bc396bb049ae | 193 | while (data=='x'){ |
csggreen | 0:bc396bb049ae | 194 | x=1; |
csggreen | 0:bc396bb049ae | 195 | state_show = 0; |
csggreen | 0:bc396bb049ae | 196 | break; |
csggreen | 0:bc396bb049ae | 197 | } |
csggreen | 0:bc396bb049ae | 198 | |
csggreen | 0:bc396bb049ae | 199 | } |
csggreen | 0:bc396bb049ae | 200 | } |
csggreen | 0:bc396bb049ae | 201 | |
csggreen | 0:bc396bb049ae | 202 | if (data=='2'){ |
csggreen | 0:bc396bb049ae | 203 | while(x==0){ |
csggreen | 0:bc396bb049ae | 204 | while(data=='2'){ |
csggreen | 0:bc396bb049ae | 205 | formvolume = analog_value.read(); |
csggreen | 0:bc396bb049ae | 206 | mVolt = formvolume * 5000; |
csggreen | 0:bc396bb049ae | 207 | Volt = mVolt/1000; |
csggreen | 0:bc396bb049ae | 208 | pc.printf("VRvalue %0.2f V\n",Volt); |
csggreen | 0:bc396bb049ae | 209 | wait(0.2); |
csggreen | 0:bc396bb049ae | 210 | if(pc.readable()){ |
csggreen | 0:bc396bb049ae | 211 | data = pc.getc(); |
csggreen | 0:bc396bb049ae | 212 | if(data == 'x'){ |
csggreen | 0:bc396bb049ae | 213 | x=1; |
csggreen | 0:bc396bb049ae | 214 | state_show = 0; |
csggreen | 0:bc396bb049ae | 215 | break; |
csggreen | 0:bc396bb049ae | 216 | } |
csggreen | 0:bc396bb049ae | 217 | } |
csggreen | 0:bc396bb049ae | 218 | } |
csggreen | 0:bc396bb049ae | 219 | |
csggreen | 0:bc396bb049ae | 220 | } |
csggreen | 0:bc396bb049ae | 221 | |
csggreen | 0:bc396bb049ae | 222 | |
csggreen | 0:bc396bb049ae | 223 | } |
csggreen | 0:bc396bb049ae | 224 | } |
csggreen | 0:bc396bb049ae | 225 | } |
csggreen | 0:bc396bb049ae | 226 | |
csggreen | 0:bc396bb049ae | 227 | |
csggreen | 0:bc396bb049ae | 228 | |
csggreen | 0:bc396bb049ae | 229 | } |