Components and supplies
AD-032 IR Obstacle Avoidance Sensor for Arduino
Arduino Leonardo
UTSOURCE Electronic Parts
Project description
Code
gesture_control.ino
c_cpp
1//gesture control 2#include <Keyboard.h> 3int up_right = 9; 4int up_left = 11; 5int down_right = 10; 6int down_left = 12; 7 8bool up_right_state; 9bool down_right_state; 10bool down_left_state; 11bool up_left_state; 12void setup() 13{ 14 Keyboard.begin(); 15 Serial.begin(9600); 16 pinMode(up_right, INPUT); 17 pinMode(up_left, INPUT); 18 pinMode(down_right, INPUT); 19 pinMode(down_left, INPUT); 20 21 22} 23 24void loop() 25{ 26 up_right_state = digitalRead(up_right); 27 up_left_state = digitalRead(up_left); 28 down_right_state = digitalRead(down_right); 29 down_left_state = digitalRead(down_left); 30 Serial.print(up_right_state); 31 Serial.print(up_left_state); 32 Serial.print(down_right_state); 33 Serial.println(down_left_state); 34 35 36 if (digitalRead(up_left) == 0 && digitalRead(up_right) == 0) 37 while ((digitalRead(up_left) == 0 && digitalRead(up_right) == 0)) 38 { 39 Serial.println("move up"); 40 Keyboard.press(KEY_UP_ARROW); 41 delay(100); 42 Keyboard.releaseAll(); 43 Keyboard.end(); 44 } 45 46 if (digitalRead(down_left) == 0 && digitalRead(down_right) == 0 ) 47 while ((digitalRead(down_left) == 0 && digitalRead(down_right) == 0 ) ) 48 49 { 50 Serial.println("move down"); 51 Keyboard.press(KEY_DOWN_ARROW); 52 delay(100); 53 Keyboard.releaseAll(); 54 Keyboard.end(); 55 } 56 57 if (digitalRead(down_left) == 0 && digitalRead(up_left) == 0 ) 58 while (digitalRead(down_left) == 0 && digitalRead(up_left) == 0 ) 59 60 { 61 Serial.println("move left"); 62 Keyboard.press(KEY_LEFT_ARROW); 63 delay(100); 64 Keyboard.releaseAll(); 65 Keyboard.end(); 66 } 67 68 if (digitalRead(up_right) == 0 && digitalRead(down_right) == 0) 69 while (digitalRead(up_right) == 0 && digitalRead(down_right) == 0) 70 71 { 72 Serial.println("move right"); 73 Keyboard.press(KEY_RIGHT_ARROW); 74 delay(100); 75 Keyboard.releaseAll(); 76 Keyboard.end(); 77 } 78 79 80 if (digitalRead(up_right) == 0 && digitalRead(down_right) == 1 && digitalRead(down_left) == 1 && digitalRead(up_left) == 1) 81 while (digitalRead(up_right) == 0 && digitalRead(down_right) == 1 && digitalRead(down_left) == 1 && digitalRead(up_left) == 1) 82 83 { 84 Serial.println("move right up corner"); 85 Keyboard.press(KEY_RIGHT_ARROW); 86 Keyboard.press(KEY_UP_ARROW); 87 delay(100); 88 Keyboard.releaseAll(); 89 Keyboard.end(); 90 } 91 92 if (digitalRead(up_left) == 0 && digitalRead(down_right) == 1 && digitalRead(up_right) == 1 && digitalRead(down_left) == 1) 93 while (digitalRead(up_left) == 0 && digitalRead(down_right) == 1 && digitalRead(up_right) == 1 && digitalRead(down_left) == 1) 94 95 { 96 Serial.println("move left up corner"); 97 Keyboard.press(KEY_LEFT_ARROW); 98 Keyboard.press(KEY_UP_ARROW); 99 delay(100); 100 Keyboard.releaseAll(); 101 Keyboard.end(); 102 } 103 104 if (digitalRead(down_left) == 0 && digitalRead(up_right) == 1 && digitalRead(up_left) == 1 && digitalRead(down_right) == 1 ) 105 while (digitalRead(down_left) == 0 && digitalRead(up_right) == 1 && digitalRead(up_left) == 1 && digitalRead(down_right) == 1 ) 106 107 { 108 Serial.println("move left down corner"); 109 Keyboard.press(KEY_LEFT_ARROW); 110 Keyboard.press(KEY_DOWN_ARROW); 111 delay(100); 112 Keyboard.releaseAll(); 113 Keyboard.end(); 114 } 115 116 if (digitalRead(down_right) == 0 && digitalRead(up_right) == 1 && digitalRead(up_left) == 1 && digitalRead(down_left) == 1) 117 while (digitalRead(down_right) == 0 && digitalRead(up_right) == 1 && digitalRead(up_left) == 1 && digitalRead(down_left) == 1) 118 119 { 120 Serial.println("move right down corner"); 121 Keyboard.press(KEY_RIGHT_ARROW); 122 Keyboard.press(KEY_DOWN_ARROW); 123 delay(100); 124 Keyboard.releaseAll(); 125 Keyboard.end(); 126 } 127 128 129 130}
Downloadable files
gesture_control_schem_YfmDSB3pZl.jpg
gesture_control_schem_YfmDSB3pZl.jpg
gesture_control_schem_YfmDSB3pZl.jpg
gesture_control_schem_YfmDSB3pZl.jpg
Comments
Only logged in users can leave comments
najad
0 Followers
•0 Projects
0