按键 com接vcc
    up,dwn,LFT,RHT,MID,SET,RST接数字引脚 1,2,3

    1. /*
    2. * 五轴按键 Arduino
    3. * COM GND
    4. * UP 4
    5. * DWN 5
    6. * LFT 6
    7. * RHT 7
    8. * MID 8
    9. * SET 9
    10. * RST 10
    11. * RGB灯 Arduino
    12. * R 11
    13. * G 12
    14. * B 13
    15. * - GND
    16. *
    17. */
    18. #define UP 4
    19. #define DWN 5
    20. #define LFT 6
    21. #define RHT 7
    22. #define MID 8
    23. #define SET 9
    24. #define RST 10
    25. #define LED_R 11
    26. #define LED_G 12
    27. #define LED_B 13
    28. void setup()
    29. {
    30. //上键初始化
    31. pinMode(UP,INPUT_PULLUP);
    32. //中间键初始化
    33. pinMode(MID,INPUT_PULLUP);
    34. //下键初始化
    35. pinMode(DWN,INPUT_PULLUP);
    36. //LED引脚初始化
    37. pinMode(LED_R,OUTPUT);
    38. pinMode(LED_B,OUTPUT);
    39. pinMode(LED_G,OUTPUT);
    40. //串口初始化
    41. Serial.begin(9600);
    42. }
    43. void loop()
    44. {
    45. int data_UP = digitalRead(UP);
    46. int data_MID = digitalRead(MID);
    47. int data_DWN = digitalRead(DWN);
    48. if(data_UP == 0)
    49. {
    50. digitalWrite(LED_R,HIGH);
    51. Serial.println("UP键被按下");
    52. delay(200);
    53. }
    54. if(data_MID == 0)
    55. {
    56. Serial.println("中间键被按下");
    57. digitalWrite(LED_G,!digitalRead(LED_G));
    58. while(!data_MID)data_MID = digitalRead(MID);
    59. }
    60. if(data_DWN == 0)
    61. {
    62. Serial.println("下键被按下");
    63. digitalWrite(LED_B,HIGH);
    64. delay(2000);
    65. digitalWrite(LED_B,LOW);
    66. }
    67. }