board.h 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. #ifndef __BOARD_H_
  2. #define __BOARD_H_
  3. #include "stdbool.h"
  4. extern bool usb_log_status;
  5. void msgAtSend(char *at);
  6. void msgAtSends(char *at ,int len);
  7. void boardInit(void);
  8. bool logPortInit(void);
  9. typedef enum{
  10. G_KEY_MIC_PTT=10, //PIN_79 GPIO_10
  11. G_KEY_IN1=15, //PIN_81 GPIO_15
  12. G_KEY_IN2=2, //PIN_80 GPIO_2
  13. G_KEY_IN3=3, //PIN_78 GPIO_3
  14. G_KEY_OUT1=22, //PIN_71 GPIO_22
  15. G_KEY_OUT2=23, //PIN_72 GPIO_23
  16. G_KEY_OUT3=14, //PIN_82 GPIO_14
  17. G_LED1=19, //PIN_51 GPIO_18
  18. G_LED2=18, //PIN_52 GPIO_19
  19. G_HP_DET=9, //PIN_2 GPIO_9
  20. G_POWER_HOLD=17, //PIN_58 GPIO_17
  21. G_LCD_BL=20, //PIN_61 GPIO_20
  22. G_SPK_EN=0, //PIN_50 GPIO_0
  23. G_LAN_EN=1, //PIN_90 GPIO_1
  24. G_SD_PWR=5, //PIN_39 GPIO_5
  25. }GGPIO_ENUM;
  26. typedef enum{
  27. KS_KEY_MIC_PTT,
  28. KS_KEY_MAX
  29. }KS_KEY_ENUM;
  30. #define KS_ALL_IDLE 0
  31. //�键�
  32. #define KV_KEY_MIC_PTT (KS_ALL_IDLE | (1<<KS_KEY_MIC_PTT))
  33. //组�键值,用于底层处�使用
  34. typedef enum{
  35. MKEY_VALUE_1,
  36. MKEY_VALUE_2,
  37. MKEY_VALUE_3,
  38. MKEY_VALUE_4,
  39. MKEY_VALUE_5,
  40. MKEY_VALUE_6,
  41. MKEY_VALUE_7,
  42. MKEY_VALUE_8,
  43. MKEY_VALUE_9
  44. }MKEY_VALUEENUM;
  45. //键值,用于应用层使�
  46. #define MKEY_VALUE_F2 (1<<MKEY_VALUE_3)
  47. #define MKEY_VALUE_F1 (1<<MKEY_VALUE_2)
  48. #define MKEY_VALUE_PTT (1<<MKEY_VALUE_1)
  49. #define MKEY_VALUE_MENU (1<<MKEY_VALUE_4)
  50. #define MKEY_VALUE_UP (1<<MKEY_VALUE_5)
  51. #define MKEY_VALUE_DOWN (1<<MKEY_VALUE_8)
  52. #define MKEY_VALUE_ESC (1<<MKEY_VALUE_6)
  53. #define MKEY_VALUE_P1 (1<<MKEY_VALUE_7)
  54. #define MKEY_VALUE_P2 (1<<MKEY_VALUE_9)
  55. #define MKEY_VALUE_CB_GT (MKEY_VALUE_P1 | MKEY_VALUE_ESC)
  56. #define MKEY_VALUE_CB_IP (MKEY_VALUE_ESC | MKEY_VALUE_DOWN)
  57. #define MKEY_VALUE_IDLE 0
  58. //定义�方便IO输出控制
  59. #define CTL_KEY_OUT1(bit) nwy_gpio_set_value(G_KEY_OUT1,bit)
  60. #define CTL_KEY_OUT2(bit) nwy_gpio_set_value(G_KEY_OUT2,bit)
  61. #define CTL_KEY_OUT3(bit) nwy_gpio_set_value(G_KEY_OUT3,bit)
  62. #define CTL_LED1_RED(bit) nwy_gpio_set_value(G_LED1,bit)
  63. #define CTL_LED2_GREEN(bit) nwy_gpio_set_value(G_LED2,bit)
  64. #define CTL_LIGHT(bit) nwy_gpio_set_value(G_LIGHT,bit)
  65. #define CTL_POWER_HOLD(bit) nwy_gpio_set_value(G_POWER_HOLD,bit)
  66. #define CTL_LCD_BL(bit) nwy_gpio_set_value(G_LCD_BL,bit)
  67. #define CTL_SPK_EN(bit) nwy_gpio_set_value(G_SPK_EN,bit)
  68. #define CTL_LAN_EN(bit) nwy_gpio_set_value(G_LAN_EN,bit)
  69. //定义�方便按键INS输入读�
  70. #define INT_KEY_IN1() nwy_gpio_get_value(G_KEY_IN1)
  71. #define INT_KEY_IN2() nwy_gpio_get_value(G_KEY_IN2)
  72. #define INT_KEY_IN3() nwy_gpio_get_value(G_KEY_IN3)
  73. //#define GET_PWR_DET() nwy_gpio_get_value(G_PWR_DET)
  74. //3x3矩阵
  75. #define MKS_KEY_INS 3
  76. #define MKS_KEY_OUS 3
  77. #define KEY_TIMER_TICK 30
  78. #define TONE_NORMAL 880
  79. #define TONE_SPECIAL 880
  80. void stopKeyTimer(void);
  81. void startBackLightTimer(int time);
  82. void paControl(bool status);
  83. void beepStart(int freq);
  84. void pttBeepStart(bool isMicReq);
  85. void pwrDetReInit(void);
  86. void testfile();
  87. void modifyEqData(void);
  88. void modifyMic(void);
  89. void modifyAudioOutGainConfig(void);
  90. void pwmDeInitToSleep(void);
  91. void pwrDetRead(void);
  92. #endif