You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

76 lines
2.8 KiB

1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
  1. #pragma once
  2. #include <stdbool.h>
  3. #include "main.h"
  4. #ifdef __cplusplus
  5. extern "C" {
  6. #endif
  7. #define EXTERN_GLOBAL(type, name) \
  8. extern type name; \
  9. extern bool name##_enable;
  10. #define EXTERN_GLOBAL_PTR(type, name) extern type* name;
  11. #define DEFINE_GLOBAL(type, name) \
  12. type name; \
  13. bool name##_enable;
  14. #define DEFINE_GLOBAL_PTR(type, name) type* name;
  15. /***********************************************************************************************************************
  16. * GLOBAL *
  17. ***********************************************************************************************************************/
  18. EXTERN_GLOBAL(CAN_HandleTypeDef, hcan1);
  19. EXTERN_GLOBAL(TIM_HandleTypeDef, htim1);
  20. EXTERN_GLOBAL(TIM_HandleTypeDef, htim2);
  21. EXTERN_GLOBAL(TIM_HandleTypeDef, htim6);
  22. EXTERN_GLOBAL(TIM_HandleTypeDef, htim7);
  23. EXTERN_GLOBAL(I2C_HandleTypeDef, hi2c1);
  24. EXTERN_GLOBAL(UART_HandleTypeDef, huart1);
  25. EXTERN_GLOBAL(UART_HandleTypeDef, huart2);
  26. EXTERN_GLOBAL(UART_HandleTypeDef, huart3);
  27. EXTERN_GLOBAL(UART_HandleTypeDef, huart4);
  28. EXTERN_GLOBAL(DMA_HandleTypeDef, hdma1_stream1);
  29. EXTERN_GLOBAL(DMA_HandleTypeDef, hdma1_stream2);
  30. EXTERN_GLOBAL(DMA_HandleTypeDef, hdma1_stream3);
  31. EXTERN_GLOBAL(DMA_HandleTypeDef, hdma1_stream5);
  32. EXTERN_GLOBAL(DMA_HandleTypeDef, hdma1_stream6);
  33. EXTERN_GLOBAL(DMA_HandleTypeDef, hdma2_stream1);
  34. EXTERN_GLOBAL(DMA_HandleTypeDef, hdma2_stream2); // used by common board
  35. EXTERN_GLOBAL(DMA_HandleTypeDef, hdma2_stream3);
  36. EXTERN_GLOBAL(DMA_HandleTypeDef, hdma2_stream7);
  37. EXTERN_GLOBAL(DMA_HandleTypeDef, hdma3_stream1);
  38. EXTERN_GLOBAL(DMA_HandleTypeDef, hdma3_stream2);
  39. EXTERN_GLOBAL(DMA_HandleTypeDef, hdma3_stream3);
  40. EXTERN_GLOBAL(DMA_HandleTypeDef, hdma4_stream1);
  41. EXTERN_GLOBAL(DMA_HandleTypeDef, hdma4_stream2);
  42. EXTERN_GLOBAL(DMA_HandleTypeDef, hdma4_stream3);
  43. EXTERN_GLOBAL(SPI_HandleTypeDef, hspi1);
  44. EXTERN_GLOBAL(SPI_HandleTypeDef, hspi2);
  45. EXTERN_GLOBAL(SPI_HandleTypeDef, hspi3);
  46. /***********************************************************************************************************************
  47. * PTR *
  48. ***********************************************************************************************************************/
  49. EXTERN_GLOBAL_PTR(DMA_HandleTypeDef, hdma_usart1_rx);
  50. EXTERN_GLOBAL_PTR(DMA_HandleTypeDef, hdma_usart1_tx);
  51. EXTERN_GLOBAL_PTR(DMA_HandleTypeDef, hdma_usart2_rx);
  52. EXTERN_GLOBAL_PTR(DMA_HandleTypeDef, hdma_usart2_tx);
  53. EXTERN_GLOBAL_PTR(DMA_HandleTypeDef, hdma_usart3_rx);
  54. EXTERN_GLOBAL_PTR(DMA_HandleTypeDef, hdma_usart3_tx);
  55. EXTERN_GLOBAL_PTR(DMA_HandleTypeDef, hdma_usart4_rx);
  56. EXTERN_GLOBAL_PTR(DMA_HandleTypeDef, hdma_usart4_tx);
  57. #ifdef __cplusplus
  58. }
  59. #endif