config_pins__sampleboard.h 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. #ifndef CORE_CONFIG_PINS_H
  2. #define CORE_CONFIG_PINS_H
  3. #include "stm32l1xx_hal_gpio.h"
  4. #include "stm32l1xx_hal_pwr_ex.h"
  5. #include "stm32l1xx_hal_adc.h" // ADC_CHANNEL_X
  6. //============================================================================
  7. // External Memory (SPI):
  8. // NSS (nCS) = PB11 (software)
  9. #define CONFIG_PIN__EXTMEMSPI__CS GPIO_PIN_11
  10. #define CONFIG_PORT__EXTMEMSPI__CS GPIOB
  11. //============================================================================
  12. // External Memory (SPI):
  13. // SPI: SPI2 (AF5_SPI2)
  14. // SCK (CK) = PB13 (hardware)
  15. // MISO (SO) = PB14 (hardware)
  16. // MOSI (SI) = PB15 (hardware)
  17. #define CONFIG_PIN__EXTMEMSPI__CK GPIO_PIN_13
  18. #define CONFIG_PIN__EXTMEMSPI__SO GPIO_PIN_14
  19. #define CONFIG_PIN__EXTMEMSPI__SI GPIO_PIN_15
  20. #define CONFIG_PORT__EXTMEMSPI__SO_SI_CK GPIOB
  21. #define CONFIG_AF__EXTMEMSPI__SO_SI_CK GPIO_AF5_SPI2
  22. //============================================================================
  23. // External Memory Reset Pin
  24. // RST: PB10
  25. #define CONFIG_PIN__EXTMEM__RST GPIO_PIN_10
  26. #define CONFIG_PORT__EXTMEM__RST GPIOB
  27. //============================================================================
  28. // Thermo-sensor (I2C):
  29. // I2C: I2C1 (AF4_I2C1)
  30. // SDA (DA) = PB7 (hardware)
  31. // SCL (CL) = PB6 (hardware)
  32. #define CONFIG_PIN__TSENSI2C__DA GPIO_PIN_7
  33. #define CONFIG_PIN__TSENSI2C__CL GPIO_PIN_6
  34. #define CONFIG_PORT__TSENSI2C__DA_CL GPIOB
  35. #define CONFIG_AF__TSENSI2C__SO_SI_CK GPIO_AF4_I2C1
  36. //============================================================================
  37. // Thermo-sensor Power Pin
  38. // TSENS-PWR: PB5
  39. #define CONFIG_PIN__TSENS_PWR GPIO_PIN_5
  40. #define CONFIG_PORT__TSENS_PWR GPIOB
  41. //============================================================================
  42. // Battery-Voltage Monitor
  43. // VBAT_ADC: PA4 (Channel 4 = ADC_CHANNEL_4)
  44. // VBAT_EN: PB5
  45. #define CONFIG_PIN__VBAT_ADC GPIO_PIN_4
  46. #define CONFIG_PIN__VBAT_EN GPIO_PIN_5
  47. #define CONFIG_PORT__VBAT_ADC GPIOA
  48. #define CONFIG_PORT__VBAT_EN GPIOB
  49. #define CONFIG_ADC__VBAT_ADC ADC_CHANNEL_4
  50. //============================================================================
  51. // LEDs (Red-led && Green-led)
  52. // REDLED:
  53. // GREENLED:
  54. #define CONFIG_PIN__LED_RED GPIO_PIN_15
  55. #define CONFIG_PIN__LED_GREEN GPIO_PIN_3
  56. #define CONFIG_PORT__LED_RED GPIOA
  57. #define CONFIG_PORT__LED_GREEN GPIOB
  58. //============================================================================
  59. // SwitchKeys Pins (parallel port)
  60. // Port#1 = PA0
  61. // Port#2 = PA1
  62. // Port#3 = PA2
  63. // Port#4 = PA3
  64. #define CONFIG_PIN__SWKEYPP_L1 GPIO_PIN_0
  65. #define CONFIG_PIN__SWKEYPP_L2 GPIO_PIN_1
  66. #define CONFIG_PIN__SWKEYPP_L3 GPIO_PIN_2
  67. #define CONFIG_PIN__SWKEYPP_L4 GPIO_PIN_3
  68. #define CONFIG_PORT__SWKEYPP_L1 GPIOA
  69. #define CONFIG_PORT__SWKEYPP_L2 GPIOA
  70. #define CONFIG_PORT__SWKEYPP_L3 GPIOA
  71. #define CONFIG_PORT__SWKEYPP_L4 GPIOA
  72. #define CONFIG_PORT__SINGLEPORTINIT 1 // only if CONFIG_PORT__SWKEYPP_Lx are the same!
  73. //============================================================================
  74. // USB VBUS Line Detection
  75. // Be careful: wakeup pins must be choosed respectively to the VBUS pin
  76. // VBUS: PC13=WKUP2
  77. #define CONFIG_PIN__USB__VBUSDETECT GPIO_PIN_13
  78. #define CONFIG_PORT__USB__VBUSDETECT GPIOC
  79. // USB VBUS Line Detection - wakeup function
  80. // VBUS: WKUP2=PC13
  81. #define CONFIG_PIN__USB__VBUSWKUP PWR_WAKEUP_PIN2
  82. //============================================================================
  83. // Core Clock Output Pin
  84. // MCO: PA8
  85. #define CONFIG_PIN__MCO GPIO_PIN_8
  86. #define CONFIG_PORT__MCO GPIOA
  87. #define CONFIG_AF__MCO GPIO_AF0_MCO
  88. //============================================================================
  89. // Debug pins (can overlapp with already used if the corresponding perifieral is disabled)
  90. // DBGPIN1: PA4
  91. // DBGPIN2: PB6
  92. // DBGPIN3: PB7
  93. #define CONFIG_PIN__DBGPIN1 GPIO_PIN_4 ??
  94. #define CONFIG_PORT__DBGPIN1 GPIOA ??
  95. #define CONFIG_PIN__DBGPIN2 GPIO_PIN_6
  96. #define CONFIG_PORT__DBGPIN2 GPIOB
  97. #define CONFIG_PIN__DBGPIN3 GPIO_PIN_7
  98. #define CONFIG_PORT__DBGPIN3 GPIOB
  99. #endif