Push Button text entry
Dependencies: DebounceIn USBDevice mbed
Fork of idd_fall15_hw2_psddtgb_PushButtonTextEntry by
main.cpp
00001 #include "mbed.h" 00002 #include "DebounceIn.h" 00003 #include "USBKeyboard.h" 00004 00005 USBKeyboard keyboard; 00006 00007 DigitalOut ledr(LED_RED); 00008 DigitalOut ledg(LED_GREEN); 00009 DigitalOut ledb(LED_BLUE); 00010 00011 DebounceIn pb1(D2); 00012 DebounceIn pb2(D3); 00013 DebounceIn pb3(D4); 00014 DebounceIn pb4(D5); 00015 DebounceIn pb5(D6); 00016 DebounceIn pb6(D7); 00017 DebounceIn pb7(D8); 00018 DebounceIn pbs(D9); 00019 DebounceIn pbm(D10); 00020 00021 int main() 00022 { 00023 int m = 1; 00024 ledr = 1; 00025 ledg = 1; 00026 ledb = 1; 00027 // Use internal pullup for pushbutton 00028 pb1.mode(PullUp); 00029 pb2.mode(PullUp); 00030 pb3.mode(PullUp); 00031 pb4.mode(PullUp); 00032 pb5.mode(PullUp); 00033 pb6.mode(PullUp); 00034 pb7.mode(PullUp); 00035 pbs.mode(PullUp); 00036 pbm.mode(PullUp); 00037 00038 // Delay for initial pullup to take effect 00039 wait(.001); 00040 while(1) { 00041 if (m==1 && pbm==0) { 00042 m=2; 00043 ledr=0; 00044 ledg = 1; 00045 ledb = 1; 00046 wait(.2); 00047 } 00048 if (m==2 && pbm==0) { 00049 m=3; 00050 ledr=1; 00051 ledg = 0; 00052 ledb = 1; 00053 wait(.2); 00054 } 00055 if (m==3 && pbm==0) { 00056 m=4; 00057 ledr=1; 00058 ledg = 1; 00059 ledb = 0; 00060 wait(.2); 00061 } 00062 if (m==4 && pbm==0) { 00063 m=1; 00064 ledr=1; 00065 ledg = 1; 00066 ledb = 1; 00067 wait(.2); 00068 } 00069 if (pbs==0) { 00070 keyboard.printf(" "); 00071 wait(.2); 00072 } 00073 if (m==1 && pb1==0) { 00074 keyboard.printf("a"); 00075 wait(.2); 00076 } 00077 if (m==1 && pb2==0) { 00078 keyboard.printf("b"); 00079 wait(.2); 00080 } 00081 if (m==1 && pb3==0) { 00082 keyboard.printf("c"); 00083 wait(.2); 00084 } 00085 if (m==1 && pb4==0) { 00086 keyboard.printf("d"); 00087 wait(.2); 00088 } 00089 if (m==1 && pb5==0) { 00090 keyboard.printf("e"); 00091 wait(.2); 00092 } 00093 if (m==1 && pb6==0) { 00094 keyboard.printf("f"); 00095 wait(.2); 00096 } 00097 if (m==1 && pb7==0) { 00098 keyboard.printf("g"); 00099 wait(.2); 00100 } 00101 if (m==2 && pb1==0) { 00102 keyboard.printf("h"); 00103 wait(.2); 00104 } 00105 if (m==2 && pb2==0) { 00106 keyboard.printf("i"); 00107 wait(.2); 00108 } 00109 if (m==2 && pb3==0) { 00110 keyboard.printf("j"); 00111 wait(.2); 00112 } 00113 if (m==2 && pb4==0) { 00114 keyboard.printf("k"); 00115 wait(.2); 00116 } 00117 if (m==2 && pb5==0) { 00118 keyboard.printf("l"); 00119 wait(.2); 00120 } 00121 if (m==2 && pb6==0) { 00122 keyboard.printf("m"); 00123 wait(.2); 00124 } 00125 if (m==2 && pb7==0) { 00126 keyboard.printf("n"); 00127 wait(.2); 00128 } 00129 if (m==3 && pb1==0) { 00130 keyboard.printf("o"); 00131 wait(.2); 00132 } 00133 if (m==3 && pb2==0) { 00134 keyboard.printf("p"); 00135 wait(.2); 00136 } 00137 if (m==3 && pb3==0) { 00138 keyboard.printf("q"); 00139 wait(.2); 00140 } 00141 if (m==3 && pb4==0) { 00142 keyboard.printf("r"); 00143 wait(.2); 00144 } 00145 if (m==3 && pb5==0) { 00146 keyboard.printf("s"); 00147 wait(.2); 00148 } 00149 if (m==3 && pb6==0) { 00150 keyboard.printf("t"); 00151 wait(.2); 00152 } 00153 if (m==3 && pb7==0) { 00154 keyboard.printf("u"); 00155 wait(.2); 00156 } 00157 if (m==4 && pb1==0) { 00158 keyboard.printf("v"); 00159 wait(.2); 00160 } 00161 if (m==4 && pb2==0) { 00162 keyboard.printf("w"); 00163 wait(.2); 00164 } 00165 if (m==4 && pb3==0) { 00166 keyboard.printf("x"); 00167 wait(.2); 00168 } 00169 if (m==4 && pb4==0) { 00170 keyboard.printf("y"); 00171 wait(.2); 00172 } 00173 if (m==4 && pb5==0) { 00174 keyboard.printf("z"); 00175 wait(.2); 00176 } 00177 if (m==4 && pb6==0) { 00178 keyboard.keyCode(KEY_CAPS_LOCK); 00179 wait(.2); 00180 } 00181 if (m==4 && pb7==0) { 00182 keyboard.printf("\b"); 00183 wait(.2); 00184 } 00185 00186 } 00187 00188 }
Generated on Wed Jul 13 2022 12:54:46 by
1.7.2
