main.h 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. #pragma once
  2. #ifdef __cplusplus
  3. extern "C" {
  4. #endif
  5. #include "stm32wbxx_hal.h"
  6. void Error_Handler(void);
  7. #define BUTTON_BACK_EXTI_IRQn EXTI15_10_IRQn
  8. #define BUTTON_BACK_GPIO_Port GPIOC
  9. #define BUTTON_BACK_Pin GPIO_PIN_13
  10. #define BUTTON_DOWN_EXTI_IRQn EXTI1_IRQn
  11. #define BUTTON_DOWN_GPIO_Port GPIOB
  12. #define BUTTON_DOWN_Pin GPIO_PIN_1
  13. #define BUTTON_LEFT_EXTI_IRQn EXTI15_10_IRQn
  14. #define BUTTON_LEFT_GPIO_Port GPIOB
  15. #define BUTTON_LEFT_Pin GPIO_PIN_11
  16. #define BUTTON_OK_EXTI_IRQn EXTI3_IRQn
  17. #define BUTTON_OK_GPIO_Port GPIOH
  18. #define BUTTON_OK_Pin GPIO_PIN_3
  19. #define BUTTON_RIGHT_EXTI_IRQn EXTI15_10_IRQn
  20. #define BUTTON_RIGHT_GPIO_Port GPIOB
  21. #define BUTTON_RIGHT_Pin GPIO_PIN_12
  22. #define BUTTON_UP_EXTI_IRQn EXTI15_10_IRQn
  23. #define BUTTON_UP_GPIO_Port GPIOB
  24. #define BUTTON_UP_Pin GPIO_PIN_10
  25. #define CC1101_CS_GPIO_Port GPIOD
  26. #define CC1101_CS_Pin GPIO_PIN_0
  27. #define CC1101_G0_GPIO_Port GPIOC
  28. #define CC1101_G0_Pin GPIO_PIN_4
  29. #define DISPLAY_CS_GPIO_Port GPIOC
  30. #define DISPLAY_CS_Pin GPIO_PIN_11
  31. #define DISPLAY_DI_GPIO_Port GPIOC
  32. #define DISPLAY_DI_Pin GPIO_PIN_6
  33. #define DISPLAY_RST_GPIO_Port GPIOB
  34. #define DISPLAY_RST_Pin GPIO_PIN_0
  35. #define IR_RX_GPIO_Port GPIOA
  36. #define IR_RX_Pin GPIO_PIN_0
  37. #define IR_TX_GPIO_Port GPIOB
  38. #define IR_TX_Pin GPIO_PIN_9
  39. #define NFC_CS_GPIO_Port GPIOE
  40. #define NFC_CS_Pin GPIO_PIN_4
  41. #define PA4_GPIO_Port GPIOA
  42. #define PA4_Pin GPIO_PIN_4
  43. #define PA6_GPIO_Port GPIOA
  44. #define PA6_Pin GPIO_PIN_6
  45. #define PA7_GPIO_Port GPIOA
  46. #define PA7_Pin GPIO_PIN_7
  47. #define PB2_GPIO_Port GPIOB
  48. #define PB2_Pin GPIO_PIN_2
  49. #define PB3_GPIO_Port GPIOB
  50. #define PB3_Pin GPIO_PIN_3
  51. #define PC0_GPIO_Port GPIOC
  52. #define PC0_Pin GPIO_PIN_0
  53. #define PC1_GPIO_Port GPIOC
  54. #define PC1_Pin GPIO_PIN_1
  55. #define PC3_GPIO_Port GPIOC
  56. #define PC3_Pin GPIO_PIN_3
  57. #define PERIPH_POWER_GPIO_Port GPIOA
  58. #define PERIPH_POWER_Pin GPIO_PIN_3
  59. #define QUARTZ_32MHZ_IN_GPIO_Port GPIOC
  60. #define QUARTZ_32MHZ_IN_Pin GPIO_PIN_14
  61. #define QUARTZ_32MHZ_OUT_GPIO_Port GPIOC
  62. #define QUARTZ_32MHZ_OUT_Pin GPIO_PIN_15
  63. #define RFID_OUT_GPIO_Port GPIOB
  64. #define RFID_OUT_Pin GPIO_PIN_13
  65. #define RFID_PULL_EXTI_IRQn EXTI9_5_IRQn
  66. #define RFID_PULL_GPIO_Port GPIOA
  67. #define RFID_PULL_Pin GPIO_PIN_8
  68. #define RFID_RF_IN_GPIO_Port GPIOC
  69. #define RFID_RF_IN_Pin GPIO_PIN_5
  70. #define RF_SW_0_GPIO_Port GPIOA
  71. #define RF_SW_0_Pin GPIO_PIN_1
  72. #define RF_SW_1_GPIO_Port GPIOA
  73. #define RF_SW_1_Pin GPIO_PIN_2
  74. #define SD_CD_GPIO_Port GPIOA
  75. #define SD_CD_Pin GPIO_PIN_15
  76. #define SD_CS_GPIO_Port GPIOC
  77. #define SD_CS_Pin GPIO_PIN_12
  78. #define SPEAKER_GPIO_Port GPIOB
  79. #define SPEAKER_Pin GPIO_PIN_8
  80. #define VIBRO_GPIO_Port GPIOC
  81. #define VIBRO_Pin GPIO_PIN_10
  82. #define iBTN_GPIO_Port GPIOB
  83. #define iBTN_Pin GPIO_PIN_14
  84. #define USART1_TX_Pin GPIO_PIN_6
  85. #define USART1_TX_Port GPIOB
  86. #define USART1_RX_Pin GPIO_PIN_7
  87. #define USART1_RX_Port GPIOB
  88. #define SPI_D_MISO_GPIO_Port GPIOC
  89. #define SPI_D_MISO_Pin GPIO_PIN_2
  90. #define SPI_D_MOSI_GPIO_Port GPIOB
  91. #define SPI_D_MOSI_Pin GPIO_PIN_15
  92. #define SPI_D_SCK_GPIO_Port GPIOD
  93. #define SPI_D_SCK_Pin GPIO_PIN_1
  94. #define SPI_R_MISO_GPIO_Port GPIOB
  95. #define SPI_R_MISO_Pin GPIO_PIN_4
  96. #define SPI_R_MOSI_GPIO_Port GPIOB
  97. #define SPI_R_MOSI_Pin GPIO_PIN_5
  98. #define SPI_R_SCK_GPIO_Port GPIOA
  99. #define SPI_R_SCK_Pin GPIO_PIN_5
  100. #define SPI_R hspi1
  101. #define SPI_D hspi2
  102. #define SPI_SD_HANDLE SPI_D
  103. extern TIM_HandleTypeDef htim1;
  104. extern TIM_HandleTypeDef htim2;
  105. extern TIM_HandleTypeDef htim16;
  106. #define TIM_A htim1
  107. #define TIM_B htim2
  108. #define TIM_C htim16
  109. #define SPEAKER_TIM htim16
  110. #define SPEAKER_CH TIM_CHANNEL_1
  111. #define LFRFID_TIM htim1
  112. #define LFRFID_CH TIM_CHANNEL_1
  113. #define IRDA_TX_TIM htim1
  114. #define IRDA_TX_CH TIM_CHANNEL_3
  115. // only for reference
  116. // IRDA RX timer dont exist in F2
  117. // and timer need more data to init (NVIC IRQn to set priority)
  118. #define IRDA_RX_TIM htim2
  119. #define IRDA_RX_FALLING_CH TIM_CHANNEL_1
  120. #define IRDA_RX_RISING_CH TIM_CHANNEL_2
  121. #define NFC_IRQ_Pin RFID_PULL_Pin
  122. #define NFC_IRQ_GPIO_Port RFID_PULL_GPIO_Port
  123. #ifdef __cplusplus
  124. }
  125. #endif