code for typinglove
Dependencies: PinDetect_KL25Z mbed
main.cpp
00001 #include "mbed.h" 00002 #include "PinDetect.h" 00003 00004 // D9 is dead lol 00005 PinDetect L_p_pin( D8 ); 00006 PinDetect L_r_pin( D10 ); 00007 PinDetect L_m_pin( D11 ); 00008 PinDetect L_i_pin( D12 ); 00009 PinDetect L_t_pin( D13 ); 00010 PinDetect R_p_pin( D3 ); 00011 PinDetect R_r_pin( D4 ); 00012 PinDetect R_m_pin( D5 ); 00013 PinDetect R_i_pin( D6 ); 00014 PinDetect R_t_pin( D7 ); 00015 DigitalOut led1( LED1 ); 00016 Serial mac( USBTX, USBRX ); 00017 00018 void L_p_Pressed( void ) { mac.printf("5\r\n"); } 00019 void L_r_Pressed( void ) { mac.printf("4\r\n"); } 00020 void L_m_Pressed( void ) { mac.printf("3\r\n"); } 00021 void L_i_Pressed( void ) { mac.printf("2\r\n"); } 00022 void L_t_Pressed( void ) { mac.printf("1\r\n"); } 00023 00024 void L_p_Released( void ) { mac.printf("5u\r\n"); } 00025 void L_r_Released( void ) { mac.printf("4u\r\n"); } 00026 void L_m_Released( void ) { mac.printf("3u\r\n"); } 00027 void L_i_Released( void ) { mac.printf("2u\r\n"); } 00028 void L_t_Released( void ) { mac.printf("1u\r\n"); } 00029 00030 void R_p_Pressed( void ) { mac.printf("10\r\n"); } 00031 void R_r_Pressed( void ) { mac.printf("9\r\n"); } 00032 void R_m_Pressed( void ) { mac.printf("8\r\n"); } 00033 void R_i_Pressed( void ) { mac.printf("7\r\n"); } 00034 void R_t_Pressed( void ) { mac.printf("6\r\n"); } 00035 00036 void R_p_Released( void ) { mac.printf("10u\r\n"); } 00037 void R_r_Released( void ) { mac.printf("9u\r\n"); } 00038 void R_m_Released( void ) { mac.printf("8u\r\n"); } 00039 void R_i_Released( void ) { mac.printf("7u\r\n"); } 00040 void R_t_Released( void ) { mac.printf("6u\r\n"); } 00041 00042 void keyReleased( void ) 00043 { 00044 led1 = 0; 00045 } 00046 00047 void keyPressedHeld( void ) 00048 { 00049 00050 } 00051 00052 void keyReleasedHeld( void ) 00053 { 00054 00055 } 00056 00057 int main() 00058 { 00059 L_p_pin.mode( PullUp ); 00060 L_r_pin.mode( PullUp ); 00061 L_m_pin.mode( PullUp ); 00062 L_i_pin.mode( PullUp ); 00063 L_t_pin.mode( PullUp ); 00064 L_p_pin.attach_asserted( &L_p_Pressed ); 00065 L_r_pin.attach_asserted( &L_r_Pressed ); 00066 L_m_pin.attach_asserted( &L_m_Pressed ); 00067 L_i_pin.attach_asserted( &L_i_Pressed ); 00068 L_t_pin.attach_asserted( &L_t_Pressed ); 00069 L_p_pin.attach_deasserted( &L_p_Released ); 00070 L_r_pin.attach_deasserted( &L_r_Released ); 00071 L_m_pin.attach_deasserted( &L_m_Released ); 00072 L_i_pin.attach_deasserted( &L_i_Released ); 00073 L_t_pin.attach_deasserted( &L_t_Released ); 00074 R_p_pin.mode( PullUp ); 00075 R_r_pin.mode( PullUp ); 00076 R_m_pin.mode( PullUp ); 00077 R_i_pin.mode( PullUp ); 00078 R_t_pin.mode( PullUp ); 00079 R_p_pin.attach_asserted( &R_p_Pressed ); 00080 R_r_pin.attach_asserted( &R_r_Pressed ); 00081 R_m_pin.attach_asserted( &R_m_Pressed ); 00082 R_i_pin.attach_asserted( &R_i_Pressed ); 00083 R_t_pin.attach_asserted( &R_t_Pressed ); 00084 R_p_pin.attach_deasserted( &R_p_Released ); 00085 R_r_pin.attach_deasserted( &R_r_Released ); 00086 R_m_pin.attach_deasserted( &R_m_Released ); 00087 R_i_pin.attach_deasserted( &R_i_Released ); 00088 R_t_pin.attach_deasserted( &R_t_Released ); 00089 00090 //pin.attach_asserted_held( &keyPressedHeld ); 00091 //pin.attach_deasserted_held( &keyReleasedHeld ); 00092 00093 L_p_pin.setSampleFrequency(); // Defaults to 20ms. 00094 L_r_pin.setSampleFrequency(); 00095 L_m_pin.setSampleFrequency(); 00096 L_i_pin.setSampleFrequency(); 00097 L_t_pin.setSampleFrequency(); 00098 R_p_pin.setSampleFrequency(); 00099 R_r_pin.setSampleFrequency(); 00100 R_m_pin.setSampleFrequency(); 00101 R_i_pin.setSampleFrequency(); 00102 R_t_pin.setSampleFrequency(); 00103 00104 while( 1 ) { 00105 led1 = !led1; 00106 wait( 0.2 ); 00107 } 00108 }
Generated on Wed Jul 13 2022 21:31:10 by 1.7.2