Advertisement
carver_ua

ShaytanBox v0.5.ino

Oct 24th, 2014
247
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.14 KB | None | 0 0
  1. /*
  2. ShaytanBox.ino v0.5 Nano DCCDurino with CH340G
  3. */
  4.  
  5. // Define pins for the keys.
  6. #define KeyPrint 7
  7. #define KeyRight 5
  8. #define KeyDown 6
  9. #define KeyLeft 4
  10. #define KeyUp 3
  11. #define LedGreen 9
  12. #define LedRed 10
  13.  
  14. void setup() {
  15. Serial.begin(9600);
  16. init(KeyPrint);
  17. init(KeyRight);
  18. init(KeyDown);
  19. init(KeyLeft);
  20. init(KeyUp);
  21. pinMode(LedGreen, OUTPUT);
  22. pinMode(LedRed, OUTPUT);
  23. digitalWrite(LedRed, HIGH);
  24. }
  25.  
  26. void loop()
  27. {
  28. test(KeyPrint, "\x01");
  29. test(KeyRight, "\x02");
  30. test(KeyDown, "\x04");
  31. test(KeyLeft, "\x08");
  32. test(KeyUp, "\x10");
  33. }
  34.  
  35. void init(int x){
  36. pinMode(x, INPUT);
  37. digitalWrite(x, HIGH);
  38. }
  39.  
  40. void test(int y, char* z){
  41. if (digitalRead(y) == LOW) {
  42. delay(100);
  43. if (digitalRead(y) == LOW) {
  44. unsigned long t = millis() + 500;
  45. digitalWrite(LedGreen, HIGH);
  46. Serial.print("KEY");
  47. Serial.print(z);
  48. Serial.write((byte)0x00);
  49. Serial.write((byte)0x00);
  50. Serial.println();
  51. while((millis() < t ) && (digitalRead(y) == LOW)){}
  52. digitalWrite(LedGreen, LOW);
  53. }
  54. }
  55. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement