Chawisorn samrit
/
lab4fra221
lab4
Embed:
(wiki syntax)
Show/hide line numbers
main.cpp
00001 #include "mbed.h" 00002 Serial pc(D8, D2); 00003 00004 DigitalOut gsled1(D3); 00005 DigitalOut gsled2(D4); 00006 DigitalOut gsled3(D5); 00007 DigitalOut gsled4(D6); 00008 00009 AnalogIn analog_value(A1);//อานค่าAnalogจากขาA1 00010 uint8_t state_show=0; 00011 uint8_t data; 00012 uint8_t Bluet; 00013 float formvolume;//รับค่าจากR 00014 float mVolt;//รับค่าที่แปลงแล้วหน่วยmV 00015 float Volt; 00016 int x=0; 00017 00018 void Number0(){//float Number 00019 gsled1 = 0; 00020 gsled2 = 0; 00021 gsled3 = 0; 00022 gsled4 = 0; 00023 } 00024 void Number1(){// Number 00025 gsled1 = 0; 00026 gsled2 = 0; 00027 gsled3 = 0; 00028 gsled4 = 1; 00029 } 00030 void Number2(){ 00031 gsled1 = 0; 00032 gsled2 = 0; 00033 gsled3 = 1; 00034 gsled4 = 0; 00035 } 00036 void Number3(){ 00037 gsled1 = 0; 00038 gsled2 = 0; 00039 gsled3 = 1; 00040 gsled4 = 1; 00041 } 00042 void Number4(){ 00043 gsled1 = 0; 00044 gsled2 = 1; 00045 gsled3 = 0; 00046 gsled4 = 0; 00047 } 00048 void Number5(){ 00049 gsled1 = 0; 00050 gsled2 = 1; 00051 gsled3 = 0; 00052 gsled4 = 1; 00053 } 00054 void Number6(){ 00055 gsled1 = 0; 00056 gsled2 = 1; 00057 gsled3 = 1; 00058 gsled4 = 0; 00059 } 00060 void Number7(){ 00061 gsled1 = 0; 00062 gsled2 = 1; 00063 gsled3 = 1; 00064 gsled4 = 1; 00065 } 00066 void Number8(){ 00067 gsled1 = 1; 00068 gsled2 = 0; 00069 gsled3 = 0; 00070 gsled4 = 0; 00071 } 00072 void Number9(){ 00073 gsled1 = 1; 00074 gsled2 = 0; 00075 gsled3 = 0; 00076 gsled4 = 1; 00077 } 00078 void segmentfunction(){ 00079 if (Bluet==0){ 00080 Number0(); 00081 } 00082 else if (Bluet==1){ 00083 Number1(); 00084 } 00085 else if (Bluet==2){ 00086 Number2(); 00087 } 00088 else if (Bluet==3){ 00089 Number3(); 00090 } 00091 else if (Bluet==4){ 00092 Number4(); 00093 } 00094 else if (Bluet==5){ 00095 Number5(); 00096 } 00097 else if (Bluet==6){ 00098 Number6(); 00099 } 00100 else if (Bluet==7){ 00101 Number7(); 00102 } 00103 else if (Bluet==8){ 00104 Number8(); 00105 } 00106 else if (Bluet==9){ 00107 Number9(); 00108 } 00109 } 00110 void showmenu(){ 00111 pc.printf("************\n"); 00112 pc.printf(" MENU \n"); 00113 pc.printf("************\n"); 00114 pc.printf("1.PLAY SEGMENT \n"); 00115 pc.printf("2.READ VR\n"); 00116 state_show =1; 00117 } 00118 int main() 00119 { 00120 00121 while(1) { 00122 00123 if (state_show == 0){ 00124 showmenu(); 00125 pc.readable(); 00126 data = pc.getc(); 00127 x=0; 00128 if (data=='1'){ 00129 pc.printf("PLAY SEGMENT \n"); 00130 pc.readable(); 00131 data = pc.getc(); 00132 while(x==0){ 00133 while (data=='0'){ 00134 pc.printf("-->0<-- \n\n"); 00135 Bluet=0; 00136 segmentfunction(); 00137 data = pc.getc(); 00138 } 00139 while (data=='1'){ 00140 pc.printf("-->1<-- \n\n"); 00141 Bluet=1; 00142 segmentfunction(); 00143 data = pc.getc(); 00144 } 00145 while (data=='2'){ 00146 pc.printf("-->2<-- \n\n"); 00147 Bluet=2; 00148 segmentfunction(); 00149 data = pc.getc(); 00150 } 00151 while (data=='3'){ 00152 pc.printf("-->3<-- \n\n"); 00153 Bluet=3; 00154 segmentfunction(); 00155 data = pc.getc(); 00156 } 00157 while (data=='4'){ 00158 pc.printf("-->4<-- \n\n"); 00159 Bluet=4; 00160 segmentfunction(); 00161 data = pc.getc(); 00162 } 00163 while (data=='5'){ 00164 pc.printf("-->5<-- \n\n"); 00165 Bluet=5; 00166 segmentfunction(); 00167 data = pc.getc(); 00168 } 00169 while (data=='6'){ 00170 pc.printf("-->6<-- \n\n"); 00171 Bluet=6; 00172 segmentfunction(); 00173 data = pc.getc(); 00174 } 00175 while (data=='7'){ 00176 pc.printf("-->7<-- \n\n"); 00177 Bluet=7; 00178 segmentfunction(); 00179 data = pc.getc(); 00180 } 00181 while (data=='8'){ 00182 pc.printf("-->8<-- \n\n"); 00183 Bluet=8; 00184 segmentfunction(); 00185 data = pc.getc(); 00186 } 00187 while (data=='9'){ 00188 pc.printf("-->9<-- \n\n"); 00189 Bluet=9; 00190 segmentfunction(); 00191 data = pc.getc(); 00192 } 00193 while (data=='x'){ 00194 x=1; 00195 state_show = 0; 00196 break; 00197 } 00198 00199 } 00200 } 00201 00202 if (data=='2'){ 00203 while(x==0){ 00204 while(data=='2'){ 00205 formvolume = analog_value.read(); 00206 mVolt = formvolume * 5000; 00207 Volt = mVolt/1000; 00208 pc.printf("VRvalue %0.2f V\n",Volt); 00209 wait(0.2); 00210 if(pc.readable()){ 00211 data = pc.getc(); 00212 if(data == 'x'){ 00213 x=1; 00214 state_show = 0; 00215 break; 00216 } 00217 } 00218 } 00219 00220 } 00221 00222 00223 } 00224 } 00225 } 00226 00227 00228 00229 }
Generated on Thu Jul 14 2022 10:56:30 by 1.7.2