main.h 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309
  1. #ifndef __MAIN_H
  2. #define __MAIN_H
  3. #ifdef __cplusplus
  4. extern "C" {
  5. #endif
  6. #include "stm32f4xx_hal.h"
  7. #include "stm324xg_eval.h"
  8. #include "stm324xg_eval_lcd.h"
  9. #include "stm324xg_eval_ts.h"
  10. #include "stm324xg_eval_sram.h"
  11. #include <stdlib.h>
  12. #include <stdio.h>
  13. #define USARTx USART3
  14. #define USARTx_CLK_ENABLE() __HAL_RCC_USART3_CLK_ENABLE();
  15. #define USARTx_RX_GPIO_CLK_ENABLE() __HAL_RCC_GPIOC_CLK_ENABLE()
  16. #define USARTx_TX_GPIO_CLK_ENABLE() __HAL_RCC_GPIOC_CLK_ENABLE()
  17. #define USARTx_FORCE_RESET() __HAL_RCC_USART3_FORCE_RESET()
  18. #define USARTx_RELEASE_RESET() __HAL_RCC_USART3_RELEASE_RESET()
  19. /* Definition for USARTx Pins */
  20. #define USARTx_TX_PIN GPIO_PIN_10
  21. #define USARTx_TX_GPIO_PORT GPIOC
  22. #define USARTx_TX_AF GPIO_AF7_USART3
  23. #define USARTx_RX_PIN GPIO_PIN_11
  24. #define USARTx_RX_GPIO_PORT GPIOC
  25. #define USARTx_RX_AF GPIO_AF7_USART3
  26. void Error_Handler(void);
  27. void Touchscreen_Calibration(void);
  28. uint16_t Calibration_GetX(uint16_t x);
  29. uint16_t Calibration_GetY(uint16_t y);
  30. uint8_t IsCalibrationDone(void);
  31. #define A19_Pin GPIO_PIN_3
  32. #define A19_GPIO_Port GPIOE
  33. #define TRACE_CLK_Pin GPIO_PIN_2
  34. #define TRACE_CLK_GPIO_Port GPIOE
  35. #define FSMC_NBL1_Pin GPIO_PIN_1
  36. #define FSMC_NBL1_GPIO_Port GPIOE
  37. #define FSMC_NBL0_Pin GPIO_PIN_0
  38. #define FSMC_NBL0_GPIO_Port GPIOE
  39. #define MII_TXD3_Pin GPIO_PIN_8
  40. #define MII_TXD3_GPIO_Port GPIOB
  41. #define ULPI_D7_Pin GPIO_PIN_5
  42. #define ULPI_D7_GPIO_Port GPIOB
  43. #define MII_TXD1_Pin GPIO_PIN_14
  44. #define MII_TXD1_GPIO_Port GPIOG
  45. #define MII_TXD0_Pin GPIO_PIN_13
  46. #define MII_TXD0_GPIO_Port GPIOG
  47. #define TRST_Pin GPIO_PIN_4
  48. #define TRST_GPIO_Port GPIOB
  49. #define TDO_SWO_Pin GPIO_PIN_3
  50. #define TDO_SWO_GPIO_Port GPIOB
  51. #define FSMC_NE1_Pin GPIO_PIN_7
  52. #define FSMC_NE1_GPIO_Port GPIOD
  53. #define MicroSDCard_CLK_Pin GPIO_PIN_12
  54. #define MicroSDCard_CLK_GPIO_Port GPIOC
  55. #define TDI_Pin GPIO_PIN_15
  56. #define TDI_GPIO_Port GPIOA
  57. #define TCK_SWCLK_Pin GPIO_PIN_14
  58. #define TCK_SWCLK_GPIO_Port GPIOA
  59. #define TMS_SWDIO_Pin GPIO_PIN_13
  60. #define TMS_SWDIO_GPIO_Port GPIOA
  61. #define A20_Pin GPIO_PIN_4
  62. #define A20_GPIO_Port GPIOE
  63. #define TRACE_D2_Pin GPIO_PIN_5
  64. #define TRACE_D2_GPIO_Port GPIOE
  65. #define TRACE_D3_Pin GPIO_PIN_6
  66. #define TRACE_D3_GPIO_Port GPIOE
  67. #define I2C1_SDA_Pin GPIO_PIN_9
  68. #define I2C1_SDA_GPIO_Port GPIOB
  69. #define FSMC_NL_Pin GPIO_PIN_7
  70. #define FSMC_NL_GPIO_Port GPIOB
  71. #define I2C1_SCL_Pin GPIO_PIN_6
  72. #define I2C1_SCL_GPIO_Port GPIOB
  73. #define User_Button_Pin GPIO_PIN_15
  74. #define User_Button_GPIO_Port GPIOG
  75. #define SmartCard_CMDVCC_Pin GPIO_PIN_12
  76. #define SmartCard_CMDVCC_GPIO_Port GPIOG
  77. #define MII_TX_EN_Pin GPIO_PIN_11
  78. #define MII_TX_EN_GPIO_Port GPIOG
  79. #define FSMC_NE3_Pin GPIO_PIN_10
  80. #define FSMC_NE3_GPIO_Port GPIOG
  81. #define FSMC_NWAIT_Pin GPIO_PIN_6
  82. #define FSMC_NWAIT_GPIO_Port GPIOD
  83. #define D2_Pin GPIO_PIN_0
  84. #define D2_GPIO_Port GPIOD
  85. #define DCMI_D7_Pin GPIO_PIN_7
  86. #define DCMI_D7_GPIO_Port GPIOI
  87. #define DCMI_D6_Pin GPIO_PIN_6
  88. #define DCMI_D6_GPIO_Port GPIOI
  89. #define DCMI_VSYNC_Pin GPIO_PIN_5
  90. #define DCMI_VSYNC_GPIO_Port GPIOI
  91. #define FSMC_NE2_Pin GPIO_PIN_9
  92. #define FSMC_NE2_GPIO_Port GPIOG
  93. #define FSMC_NWE_Pin GPIO_PIN_5
  94. #define FSMC_NWE_GPIO_Port GPIOD
  95. #define D3_Pin GPIO_PIN_1
  96. #define D3_GPIO_Port GPIOD
  97. #define I2S_SD_Pin GPIO_PIN_3
  98. #define I2S_SD_GPIO_Port GPIOI
  99. #define IO_Expander_INT_Pin GPIO_PIN_2
  100. #define IO_Expander_INT_GPIO_Port GPIOI
  101. #define USB_FS_DM_Pin GPIO_PIN_11
  102. #define USB_FS_DM_GPIO_Port GPIOA
  103. #define Anti_Tamper_Pin GPIO_PIN_13
  104. #define Anti_Tamper_GPIO_Port GPIOC
  105. #define LED3_Pin GPIO_PIN_9
  106. #define LED3_GPIO_Port GPIOI
  107. #define DCMI_D5_Pin GPIO_PIN_4
  108. #define DCMI_D5_GPIO_Port GPIOI
  109. #define FSMC_NOE_Pin GPIO_PIN_4
  110. #define FSMC_NOE_GPIO_Port GPIOD
  111. #define FSMC_CLK_Pin GPIO_PIN_3
  112. #define FSMC_CLK_GPIO_Port GPIOD
  113. #define MicroSDCard_CMD_Pin GPIO_PIN_2
  114. #define MicroSDCard_CMD_GPIO_Port GPIOD
  115. #define SmartCard_3_5V_Pin GPIO_PIN_15
  116. #define SmartCard_3_5V_GPIO_Port GPIOH
  117. #define USB_FS_ID_Pin GPIO_PIN_10
  118. #define USB_FS_ID_GPIO_Port GPIOA
  119. #define PC14_OSC32_IN_Pin GPIO_PIN_14
  120. #define PC14_OSC32_IN_GPIO_Port GPIOC
  121. #define A0_Pin GPIO_PIN_0
  122. #define A0_GPIO_Port GPIOF
  123. #define MII_RX_ER_Pin GPIO_PIN_10
  124. #define MII_RX_ER_GPIO_Port GPIOI
  125. #define ULPI_DIR_Pin GPIO_PIN_11
  126. #define ULPI_DIR_GPIO_Port GPIOI
  127. #define MicroSDCard_Detect_Pin GPIO_PIN_13
  128. #define MicroSDCard_Detect_GPIO_Port GPIOH
  129. #define DCMI_D4_Pin GPIO_PIN_14
  130. #define DCMI_D4_GPIO_Port GPIOH
  131. #define I2S_WS_Pin GPIO_PIN_0
  132. #define I2S_WS_GPIO_Port GPIOI
  133. #define VBUS_FS_Pin GPIO_PIN_9
  134. #define VBUS_FS_GPIO_Port GPIOA
  135. #define PC15_OSC32_OUT_Pin GPIO_PIN_15
  136. #define PC15_OSC32_OUT_GPIO_Port GPIOC
  137. #define MII_CRS_Pin GPIO_PIN_2
  138. #define MII_CRS_GPIO_Port GPIOH
  139. #define MicroSDCard_D1_Pin GPIO_PIN_9
  140. #define MicroSDCard_D1_GPIO_Port GPIOC
  141. #define MCO_Pin GPIO_PIN_8
  142. #define MCO_GPIO_Port GPIOA
  143. #define PH0_OSC_IN_Pin GPIO_PIN_0
  144. #define PH0_OSC_IN_GPIO_Port GPIOH
  145. #define MII_COL_Pin GPIO_PIN_3
  146. #define MII_COL_GPIO_Port GPIOH
  147. #define MicroSDCard_D0_Pin GPIO_PIN_8
  148. #define MicroSDCard_D0_GPIO_Port GPIOC
  149. #define LED4_Pin GPIO_PIN_7
  150. #define LED4_GPIO_Port GPIOC
  151. #define PH1_OSC_OUT_Pin GPIO_PIN_1
  152. #define PH1_OSC_OUT_GPIO_Port GPIOH
  153. #define A2_Pin GPIO_PIN_2
  154. #define A2_GPIO_Port GPIOF
  155. #define A1_Pin GPIO_PIN_1
  156. #define A1_GPIO_Port GPIOF
  157. #define ULPI_NXT_Pin GPIO_PIN_4
  158. #define ULPI_NXT_GPIO_Port GPIOH
  159. #define LED2_Pin GPIO_PIN_8
  160. #define LED2_GPIO_Port GPIOG
  161. #define A3_Pin GPIO_PIN_3
  162. #define A3_GPIO_Port GPIOF
  163. #define A4_Pin GPIO_PIN_4
  164. #define A4_GPIO_Port GPIOF
  165. #define OTG_FS_PowerSwitchOn_Pin GPIO_PIN_5
  166. #define OTG_FS_PowerSwitchOn_GPIO_Port GPIOH
  167. #define SmartCard_CLK_Pin GPIO_PIN_7
  168. #define SmartCard_CLK_GPIO_Port GPIOG
  169. #define LED1_Pin GPIO_PIN_6
  170. #define LED1_GPIO_Port GPIOG
  171. #define SmartCard_RST_Pin GPIO_PIN_7
  172. #define SmartCard_RST_GPIO_Port GPIOF
  173. #define SmartCard_OFF_Pin GPIO_PIN_6
  174. #define SmartCard_OFF_GPIO_Port GPIOF
  175. #define A5_Pin GPIO_PIN_5
  176. #define A5_GPIO_Port GPIOF
  177. #define DCMI_D3_Pin GPIO_PIN_12
  178. #define DCMI_D3_GPIO_Port GPIOH
  179. #define A15_Pin GPIO_PIN_5
  180. #define A15_GPIO_Port GPIOG
  181. #define A14_Pin GPIO_PIN_4
  182. #define A14_GPIO_Port GPIOG
  183. #define A13_Pin GPIO_PIN_3
  184. #define A13_GPIO_Port GPIOG
  185. #define Audio_IN_Pin GPIO_PIN_10
  186. #define Audio_IN_GPIO_Port GPIOF
  187. #define Potentiometer_Pin GPIO_PIN_9
  188. #define Potentiometer_GPIO_Port GPIOF
  189. #define DCMI_D2_Pin GPIO_PIN_11
  190. #define DCMI_D2_GPIO_Port GPIOH
  191. #define DCMI_D1_Pin GPIO_PIN_10
  192. #define DCMI_D1_GPIO_Port GPIOH
  193. #define D1_Pin GPIO_PIN_15
  194. #define D1_GPIO_Port GPIOD
  195. #define A12_Pin GPIO_PIN_2
  196. #define A12_GPIO_Port GPIOG
  197. #define ULPI_STP_Pin GPIO_PIN_0
  198. #define ULPI_STP_GPIO_Port GPIOC
  199. #define MII_MDC_Pin GPIO_PIN_1
  200. #define MII_MDC_GPIO_Port GPIOC
  201. #define MII_TXD2_Pin GPIO_PIN_2
  202. #define MII_TXD2_GPIO_Port GPIOC
  203. #define MII_TX_CLK_Pin GPIO_PIN_3
  204. #define MII_TX_CLK_GPIO_Port GPIOC
  205. #define SW1_Pin GPIO_PIN_2
  206. #define SW1_GPIO_Port GPIOB
  207. #define A11_Pin GPIO_PIN_1
  208. #define A11_GPIO_Port GPIOG
  209. #define MII_RXD2_Pin GPIO_PIN_6
  210. #define MII_RXD2_GPIO_Port GPIOH
  211. #define DCMI_HSYNC_Pin GPIO_PIN_8
  212. #define DCMI_HSYNC_GPIO_Port GPIOH
  213. #define DCMI_D0_Pin GPIO_PIN_9
  214. #define DCMI_D0_GPIO_Port GPIOH
  215. #define D0_Pin GPIO_PIN_14
  216. #define D0_GPIO_Port GPIOD
  217. #define A18_Pin GPIO_PIN_13
  218. #define A18_GPIO_Port GPIOD
  219. #define MII_RX_CLK_RMII_REF_CLK_Pin GPIO_PIN_1
  220. #define MII_RX_CLK_RMII_REF_CLK_GPIO_Port GPIOA
  221. #define WAKEUP_Pin GPIO_PIN_0
  222. #define WAKEUP_GPIO_Port GPIOA
  223. #define Audio_DAC_OUT_Pin GPIO_PIN_4
  224. #define Audio_DAC_OUT_GPIO_Port GPIOA
  225. #define MII_RXD0_Pin GPIO_PIN_4
  226. #define MII_RXD0_GPIO_Port GPIOC
  227. #define A7_Pin GPIO_PIN_13
  228. #define A7_GPIO_Port GPIOF
  229. #define A10_Pin GPIO_PIN_0
  230. #define A10_GPIO_Port GPIOG
  231. #define D10_Pin GPIO_PIN_13
  232. #define D10_GPIO_Port GPIOE
  233. #define MII_RXD3_Pin GPIO_PIN_7
  234. #define MII_RXD3_GPIO_Port GPIOH
  235. #define A17_Pin GPIO_PIN_12
  236. #define A17_GPIO_Port GPIOD
  237. #define A16_Pin GPIO_PIN_11
  238. #define A16_GPIO_Port GPIOD
  239. #define D15_Pin GPIO_PIN_10
  240. #define D15_GPIO_Port GPIOD
  241. #define MII_MDIO_Pin GPIO_PIN_2
  242. #define MII_MDIO_GPIO_Port GPIOA
  243. #define DCMI_PIXCK_Pin GPIO_PIN_6
  244. #define DCMI_PIXCK_GPIO_Port GPIOA
  245. #define ULPI_CLK_Pin GPIO_PIN_5
  246. #define ULPI_CLK_GPIO_Port GPIOA
  247. #define MII_RXD1_Pin GPIO_PIN_5
  248. #define MII_RXD1_GPIO_Port GPIOC
  249. #define A6_Pin GPIO_PIN_12
  250. #define A6_GPIO_Port GPIOF
  251. #define A9_Pin GPIO_PIN_15
  252. #define A9_GPIO_Port GPIOF
  253. #define D5_Pin GPIO_PIN_8
  254. #define D5_GPIO_Port GPIOE
  255. #define D6_Pin GPIO_PIN_9
  256. #define D6_GPIO_Port GPIOE
  257. #define D8_Pin GPIO_PIN_11
  258. #define D8_GPIO_Port GPIOE
  259. #define D11_Pin GPIO_PIN_14
  260. #define D11_GPIO_Port GPIOE
  261. #define ULPI_D5_Pin GPIO_PIN_12
  262. #define ULPI_D5_GPIO_Port GPIOB
  263. #define ULPI_D6_Pin GPIO_PIN_13
  264. #define ULPI_D6_GPIO_Port GPIOB
  265. #define D14_Pin GPIO_PIN_9
  266. #define D14_GPIO_Port GPIOD
  267. #define D13_Pin GPIO_PIN_8
  268. #define D13_GPIO_Port GPIOD
  269. #define ULPI_D0_Pin GPIO_PIN_3
  270. #define ULPI_D0_GPIO_Port GPIOA
  271. #define MII_RX_DV_RMII_CRSDV_Pin GPIO_PIN_7
  272. #define MII_RX_DV_RMII_CRSDV_GPIO_Port GPIOA
  273. #define ULPI_D2_Pin GPIO_PIN_1
  274. #define ULPI_D2_GPIO_Port GPIOB
  275. #define ULPI_D1_Pin GPIO_PIN_0
  276. #define ULPI_D1_GPIO_Port GPIOB
  277. #define OTG_FS_OverCurrent_Pin GPIO_PIN_11
  278. #define OTG_FS_OverCurrent_GPIO_Port GPIOF
  279. #define A8_Pin GPIO_PIN_14
  280. #define A8_GPIO_Port GPIOF
  281. #define D4_Pin GPIO_PIN_7
  282. #define D4_GPIO_Port GPIOE
  283. #define D7_Pin GPIO_PIN_10
  284. #define D7_GPIO_Port GPIOE
  285. #define D9_Pin GPIO_PIN_12
  286. #define D9_GPIO_Port GPIOE
  287. #define D12_Pin GPIO_PIN_15
  288. #define D12_GPIO_Port GPIOE
  289. #define ULPI_D3_Pin GPIO_PIN_10
  290. #define ULPI_D3_GPIO_Port GPIOB
  291. #define ULPI_D4_Pin GPIO_PIN_11
  292. #define ULPI_D4_GPIO_Port GPIOB
  293. #define MII_INT_Pin GPIO_PIN_14
  294. #define MII_INT_GPIO_Port GPIOB
  295. #ifdef __cplusplus
  296. }
  297. #endif
  298. #endif /* __MAIN_H */