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.
Fork of FYDP_Final2 by
remotecontrol_fnt.h
00001 void remotecontrol_fnt(int argc, char **argv) 00002 { 00003 int speed = 40; 00004 00005 bt.lock(); 00006 bt.printf("Remote Control Mode\r\n"); 00007 bt.printf("Controls:\r\n"); 00008 bt.printf(" wasd & qezc to move\r\n"); 00009 bt.printf(" r/f for speed +/-\r\n"); 00010 bt.printf(" enter key to exit\r\n"); 00011 bt.unlock(); 00012 00013 if(argc == 2) { 00014 speed = tinysh_atoxi(argv[1]); 00015 if( speed <= 0 || speed > 100) 00016 speed = 100; 00017 } 00018 00019 int Lspeed = 0; 00020 int Rspeed = 0; 00021 00022 char c = 0; 00023 00024 while(c != '\r' && c != '\n') { 00025 bt.lock(); 00026 00027 if(bt.readable()) { 00028 c = bt.getc(); 00029 bt.unlock(); 00030 00031 switch ( c ) { 00032 case 'w': 00033 Lspeed = speed; 00034 Rspeed = speed; 00035 break; 00036 case 'a': 00037 Lspeed = -speed; 00038 Rspeed = speed; 00039 break; 00040 case 's': 00041 Lspeed = -speed; 00042 Rspeed = -speed; 00043 break; 00044 case 'x': 00045 Lspeed = -speed; 00046 Rspeed = -speed; 00047 break; 00048 case 'd': 00049 Lspeed = speed; 00050 Rspeed = -speed; 00051 break; 00052 case 'q': 00053 Lspeed = 0; 00054 Rspeed = speed; 00055 break; 00056 case 'e': 00057 Lspeed = speed; 00058 Rspeed = 0; 00059 break; 00060 case 'c': 00061 Lspeed = -speed; 00062 Rspeed = 0; 00063 break; 00064 case 'z': 00065 Lspeed = 0; 00066 Rspeed = -speed; 00067 break; 00068 case 'r': 00069 speed += 10; 00070 if(speed > 100) 00071 speed = 100; 00072 bt.lock(); 00073 bt.printf("speed = %d\r\n", speed); 00074 bt.unlock(); 00075 Lspeed = 0; 00076 Rspeed = 0; 00077 break; 00078 case 'f': 00079 speed -= 10; 00080 if(speed < 0) 00081 speed = 0; 00082 bt.lock(); 00083 bt.printf("speed = %d\r\n", speed); 00084 bt.unlock(); 00085 Lspeed = 0; 00086 Rspeed = 0; 00087 break; 00088 default: 00089 Lspeed = 0; 00090 Rspeed = 0; 00091 break; 00092 } 00093 } else 00094 bt.unlock(); 00095 00096 Thread::wait(25); 00097 } 00098 }
Generated on Tue Jul 12 2022 16:56:36 by
