Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
main.cpp
00001 #include "mbed.h" 00002 00003 Serial duino(PA_11, PA_12); 00004 Serial pc(USBTX, USBRX); 00005 DigitalIn btn(USER_BUTTON); 00006 DigitalIn btn1(); 00007 Timer timer; 00008 uint8_t state_new=0; 00009 uint8_t state_menu=0; 00010 uint8_t state_show=0; 00011 uint8_t state_exit =0; 00012 uint8_t data; 00013 int last[3] = {0,0,0}; 00014 00015 int lis[30] = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30}; 00016 00017 void Win(){ //ชนะ 00018 if (timer.read() > 1) { 00019 pc.printf("Writing!\n\r"); 00020 duino.putc(lis[0]); 00021 duino.putc(lis[1]); 00022 duino.putc(lis[2]); 00023 timer.reset(); 00024 } 00025 if (duino.readable()) 00026 { 00027 pc.printf("recieving %c",duino.getc()); 00028 } 00029 } 00030 00031 void Lose(){ //แพ้ 00032 00033 if (timer.read() > 1) { 00034 pc.printf("Writing!\n\r"); 00035 duino.putc(lis[3]); 00036 duino.putc(lis[4]); 00037 duino.putc(lis[5]); 00038 duino.putc(lis[6]); 00039 timer.reset(); 00040 } 00041 if (duino.readable()) 00042 { 00043 pc.printf("recieving %c",duino.getc()); 00044 } 00045 00046 } 00047 00048 00049 void number(){ //นับเวลา 00050 if (timer.read() > 1) { 00051 pc.printf("Writing!\n\r"); 00052 duino.putc(lis[7]); //9 00053 duino.putc(lis[8]); //8 00054 duino.putc(lis[9]); //7 00055 duino.putc(lis[10]);//6 00056 duino.putc(lis[11]);//5 00057 duino.putc(lis[12]);//4 00058 duino.putc(lis[13]);//3 00059 duino.putc(lis[14]);//2 00060 duino.putc(lis[15]);//1 00061 duino.putc(lis[16]);//0 00062 00063 timer.reset(); 00064 } 00065 if (duino.readable()){ 00066 pc.printf("recieving %c",duino.getc()); 00067 } 00068 00069 } 00070 00071 00072 void correct(){ //เช็คถูก 00073 if (timer.read() > 1) { 00074 pc.printf("Writing!\n\r"); 00075 duino.putc(lis[18]); 00076 timer.reset(); 00077 } 00078 if (duino.readable()){ 00079 pc.printf("recieving %c",duino.getc()); 00080 } 00081 00082 } 00083 00084 void error(){ // 00085 if (timer.read() > 1) { 00086 pc.printf("Writing!\n\r"); 00087 duino.putc(lis[19]); 00088 timer.reset(); 00089 } 00090 if (duino.readable()){ 00091 pc.printf("recieving %c",duino.getc()); 00092 } 00093 00094 } 00095 void heart(){ //ลงค่าเสร็จ 00096 if (timer.read() > 1) { 00097 pc.printf("Writing!\n\r"); 00098 00099 00100 duino.putc(lis[20]); 00101 00102 00103 timer.reset(); 00104 } 00105 if (duino.readable()){ 00106 pc.printf("recieving %c",duino.getc()); 00107 } 00108 00109 } 00110 void woman(){ //ตัวหลัก 00111 if (timer.read() > 1) { 00112 pc.printf("Writing!\n\r"); 00113 00114 00115 duino.putc(lis[21]); 00116 00117 00118 timer.reset(); 00119 } 00120 if (duino.readable()){ 00121 pc.printf("recieving %c",duino.getc()); 00122 } 00123 00124 } 00125 void von(){ //หมุน 00126 if (timer.read() > 1) { 00127 pc.printf("Writing!\n\r"); 00128 00129 00130 duino.putc(lis[22]); 00131 00132 00133 timer.reset(); 00134 } 00135 if (duino.readable()){ 00136 pc.printf("recieving %c",duino.getc()); 00137 } 00138 00139 } 00140 00141 00142 int main() { 00143 00144 00145 00146 pc.baud(9600); 00147 duino.baud(9600); 00148 pc.printf("Starting...\n\r"); 00149 00150 timer.start(); 00151 while (1) { 00152 if (btn == 9) 00153 { 00154 Win(); 00155 00156 } 00157 00158 if (btn == 9) 00159 { 00160 Lose(); 00161 00162 } 00163 if (btn == 0) 00164 { 00165 number(); 00166 00167 } 00168 00169 if (btn == 9) //True 00170 { 00171 correct(); 00172 } 00173 00174 if (btn == 9) //error 00175 { 00176 error(); 00177 00178 } 00179 if (btn == 9) 00180 { 00181 heart(); 00182 } 00183 00184 if (btn == 9) 00185 { 00186 woman(); 00187 } 00188 if (btn == 9) 00189 { 00190 von(); 00191 } 00192 00193 wait(0.4); 00194 00195 if(state_show == 0) { 00196 pc.printf("************\n"); 00197 pc.printf(" Menu \n"); 00198 pc.printf("1.Menu1\n"); 00199 00200 state_show =1; 00201 } 00202 if(pc.readable()) { 00203 data = pc.getc(); 00204 pc.printf("\n"); 00205 state_show =0; 00206 state_exit =0; 00207 switch(data) { 00208 case '1': 00209 do { 00210 if(state_menu == 0) { 00211 pc.printf("number 1-9\n"); 00212 00213 state_menu = 1; 00214 } 00215 if(pc.readable()) 00216 { 00217 data = pc.getc(); 00218 pc.printf("\n"); 00219 state_menu=0; 00220 switch(data) { 00221 wait(0.5); 00222 case '1': 00223 duino.putc(lis[15]);//1 00224 break; 00225 00226 case '2': 00227 duino.putc(lis[14]);//2 00228 break; 00229 case '3': 00230 duino.putc(lis[13]);//3 00231 break; 00232 case '4': 00233 duino.putc(lis[12]);//4 00234 break; 00235 case '5': 00236 duino.putc(lis[11]);//5 00237 break; 00238 case '6': 00239 duino.putc(lis[10]);//6 00240 break; 00241 case '7': 00242 duino.putc(lis[9]);//7 00243 break; 00244 case '8': 00245 duino.putc(lis[8]);//8 00246 break; 00247 case '9': 00248 duino.putc(lis[7]);//9 00249 00250 break; 00251 case 'H': 00252 duino.putc(lis[17]);//happy 00253 00254 break; 00255 00256 00257 default: 00258 pc.printf("plz select a or s\n"); 00259 pc.printf("\n\n"); 00260 break; 00261 } 00262 } 00263 } while(state_exit ==0); 00264 pc.printf("\n"); 00265 break; 00266 00267 00268 00269 } 00270 } 00271 } 00272 }
Generated on Wed Jul 20 2022 01:27:21 by
1.7.2