ti_msp_dl_config.h 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476
  1. /*
  2. * Copyright (c) 2023, Texas Instruments Incorporated - http://www.ti.com
  3. * All rights reserved.
  4. *
  5. * Redistribution and use in source and binary forms, with or without
  6. * modification, are permitted provided that the following conditions
  7. * are met:
  8. *
  9. * * Redistributions of source code must retain the above copyright
  10. * notice, this list of conditions and the following disclaimer.
  11. *
  12. * * Redistributions in binary form must reproduce the above copyright
  13. * notice, this list of conditions and the following disclaimer in the
  14. * documentation and/or other materials provided with the distribution.
  15. *
  16. * * Neither the name of Texas Instruments Incorporated nor the names of
  17. * its contributors may be used to endorse or promote products derived
  18. * from this software without specific prior written permission.
  19. *
  20. * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
  21. * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
  22. * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  23. * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
  24. * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
  25. * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
  26. * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
  27. * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
  28. * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
  29. * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
  30. * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  31. */
  32. /*
  33. * ============ ti_msp_dl_config.h =============
  34. * Configured MSPM0 DriverLib module declarations
  35. *
  36. * DO NOT EDIT - This file is generated for the MSPM0G350X
  37. * by the SysConfig tool.
  38. */
  39. #ifndef ti_msp_dl_config_h
  40. #define ti_msp_dl_config_h
  41. #define CONFIG_MSPM0G350X
  42. #if defined(__ti_version__) || defined(__TI_COMPILER_VERSION__)
  43. #define SYSCONFIG_WEAK __attribute__((weak))
  44. #elif defined(__IAR_SYSTEMS_ICC__)
  45. #define SYSCONFIG_WEAK __weak
  46. #elif defined(__GNUC__)
  47. #define SYSCONFIG_WEAK __attribute__((weak))
  48. #endif
  49. #include <ti/devices/msp/msp.h>
  50. #include <ti/driverlib/driverlib.h>
  51. #include <ti/driverlib/m0p/dl_core.h>
  52. #ifdef __cplusplus
  53. extern "C" {
  54. #endif
  55. /*
  56. * ======== SYSCFG_DL_init ========
  57. * Perform all required MSP DL initialization
  58. *
  59. * This function should be called once at a point before any use of
  60. * MSP DL.
  61. */
  62. /* clang-format off */
  63. #define POWER_STARTUP_DELAY (16)
  64. #define CPUCLK_FREQ 72000000
  65. /* Defines for MOTOR_PWM */
  66. #define MOTOR_PWM_INST TIMA0
  67. #define MOTOR_PWM_INST_IRQHandler TIMA0_IRQHandler
  68. #define MOTOR_PWM_INST_INT_IRQN (TIMA0_INT_IRQn)
  69. #define MOTOR_PWM_INST_CLK_FREQ 72000000
  70. /* GPIO defines for channel 0 */
  71. #define GPIO_MOTOR_PWM_C0_PORT GPIOB
  72. #define GPIO_MOTOR_PWM_C0_PIN DL_GPIO_PIN_14
  73. #define GPIO_MOTOR_PWM_C0_IOMUX (IOMUX_PINCM31)
  74. #define GPIO_MOTOR_PWM_C0_IOMUX_FUNC IOMUX_PINCM31_PF_TIMA0_CCP0
  75. #define GPIO_MOTOR_PWM_C0_IDX DL_TIMER_CC_0_INDEX
  76. /* GPIO defines for channel 0 */
  77. #define GPIO_MOTOR_PWM_C0_CMPL_PORT GPIOB
  78. #define GPIO_MOTOR_PWM_C0_CMPL_PIN DL_GPIO_PIN_9
  79. #define GPIO_MOTOR_PWM_C0_CMPL_IOMUX (IOMUX_PINCM26)
  80. #define GPIO_MOTOR_PWM_C0_CMPL_IOMUX_FUNC IOMUX_PINCM26_PF_TIMA0_CCP0_CMPL
  81. /* GPIO defines for channel 1 */
  82. #define GPIO_MOTOR_PWM_C1_PORT GPIOA
  83. #define GPIO_MOTOR_PWM_C1_PIN DL_GPIO_PIN_7
  84. #define GPIO_MOTOR_PWM_C1_IOMUX (IOMUX_PINCM14)
  85. #define GPIO_MOTOR_PWM_C1_IOMUX_FUNC IOMUX_PINCM14_PF_TIMA0_CCP1
  86. #define GPIO_MOTOR_PWM_C1_IDX DL_TIMER_CC_1_INDEX
  87. /* GPIO defines for channel 1 */
  88. #define GPIO_MOTOR_PWM_C1_CMPL_PORT GPIOA
  89. #define GPIO_MOTOR_PWM_C1_CMPL_PIN DL_GPIO_PIN_4
  90. #define GPIO_MOTOR_PWM_C1_CMPL_IOMUX (IOMUX_PINCM9)
  91. #define GPIO_MOTOR_PWM_C1_CMPL_IOMUX_FUNC IOMUX_PINCM9_PF_TIMA0_CCP1_CMPL
  92. /* GPIO defines for channel 2 */
  93. #define GPIO_MOTOR_PWM_C2_PORT GPIOA
  94. #define GPIO_MOTOR_PWM_C2_PIN DL_GPIO_PIN_10
  95. #define GPIO_MOTOR_PWM_C2_IOMUX (IOMUX_PINCM21)
  96. #define GPIO_MOTOR_PWM_C2_IOMUX_FUNC IOMUX_PINCM21_PF_TIMA0_CCP2
  97. #define GPIO_MOTOR_PWM_C2_IDX DL_TIMER_CC_2_INDEX
  98. /* GPIO defines for channel 2 */
  99. #define GPIO_MOTOR_PWM_C2_CMPL_PORT GPIOA
  100. #define GPIO_MOTOR_PWM_C2_CMPL_PIN DL_GPIO_PIN_11
  101. #define GPIO_MOTOR_PWM_C2_CMPL_IOMUX (IOMUX_PINCM22)
  102. #define GPIO_MOTOR_PWM_C2_CMPL_IOMUX_FUNC IOMUX_PINCM22_PF_TIMA0_CCP2_CMPL
  103. /* Publisher defines */
  104. #define MOTOR_PWM_INST_PUB_0_CH (12)
  105. #define MOTOR_PWM_REPEAT_COUNT_2 (1)
  106. /* Defines for PWM_F */
  107. #define PWM_F_INST TIMG7
  108. #define PWM_F_INST_IRQHandler TIMG7_IRQHandler
  109. #define PWM_F_INST_INT_IRQN (TIMG7_INT_IRQn)
  110. #define PWM_F_INST_CLK_FREQ 36000000
  111. /* GPIO defines for channel 1 */
  112. #define GPIO_PWM_F_C1_PORT GPIOA
  113. #define GPIO_PWM_F_C1_PIN DL_GPIO_PIN_2
  114. #define GPIO_PWM_F_C1_IOMUX (IOMUX_PINCM7)
  115. #define GPIO_PWM_F_C1_IOMUX_FUNC IOMUX_PINCM7_PF_TIMG7_CCP1
  116. #define GPIO_PWM_F_C1_IDX DL_TIMER_CC_1_INDEX
  117. /* Defines for PWM_B_L */
  118. #define PWM_B_L_INST TIMG8
  119. #define PWM_B_L_INST_IRQHandler TIMG8_IRQHandler
  120. #define PWM_B_L_INST_INT_IRQN (TIMG8_INT_IRQn)
  121. #define PWM_B_L_INST_CLK_FREQ 36000000
  122. /* GPIO defines for channel 0 */
  123. #define GPIO_PWM_B_L_C0_PORT GPIOB
  124. #define GPIO_PWM_B_L_C0_PIN DL_GPIO_PIN_6
  125. #define GPIO_PWM_B_L_C0_IOMUX (IOMUX_PINCM23)
  126. #define GPIO_PWM_B_L_C0_IOMUX_FUNC IOMUX_PINCM23_PF_TIMG8_CCP0
  127. #define GPIO_PWM_B_L_C0_IDX DL_TIMER_CC_0_INDEX
  128. /* GPIO defines for channel 1 */
  129. #define GPIO_PWM_B_L_C1_PORT GPIOB
  130. #define GPIO_PWM_B_L_C1_PIN DL_GPIO_PIN_16
  131. #define GPIO_PWM_B_L_C1_IOMUX (IOMUX_PINCM33)
  132. #define GPIO_PWM_B_L_C1_IOMUX_FUNC IOMUX_PINCM33_PF_TIMG8_CCP1
  133. #define GPIO_PWM_B_L_C1_IDX DL_TIMER_CC_1_INDEX
  134. /* Defines for PWM_R */
  135. #define PWM_R_INST TIMG12
  136. #define PWM_R_INST_IRQHandler TIMG12_IRQHandler
  137. #define PWM_R_INST_INT_IRQN (TIMG12_INT_IRQn)
  138. #define PWM_R_INST_CLK_FREQ 36000000
  139. /* GPIO defines for channel 1 */
  140. #define GPIO_PWM_R_C1_PORT GPIOA
  141. #define GPIO_PWM_R_C1_PIN DL_GPIO_PIN_31
  142. #define GPIO_PWM_R_C1_IOMUX (IOMUX_PINCM6)
  143. #define GPIO_PWM_R_C1_IOMUX_FUNC IOMUX_PINCM6_PF_TIMG12_CCP1
  144. #define GPIO_PWM_R_C1_IDX DL_TIMER_CC_1_INDEX
  145. /* Defines for HALLTIMER */
  146. #define HALLTIMER_INST (TIMG6)
  147. #define HALLTIMER_INST_IRQHandler TIMG6_IRQHandler
  148. #define HALLTIMER_INST_INT_IRQN (TIMG6_INT_IRQn)
  149. #define HALLTIMER_INST_LOAD_VALUE (60011U)
  150. /* Defines for HALL_CNT */
  151. #define HALL_CNT_INST (TIMG0)
  152. #define HALL_CNT_INST_IRQHandler TIMG0_IRQHandler
  153. #define HALL_CNT_INST_INT_IRQN (TIMG0_INT_IRQn)
  154. #define HALL_CNT_INST_LOAD_VALUE (1079U)
  155. /* Defines for UART_HMI */
  156. #define UART_HMI_INST UART0
  157. #define UART_HMI_INST_IRQHandler UART0_IRQHandler
  158. #define UART_HMI_INST_INT_IRQN UART0_INT_IRQn
  159. #define GPIO_UART_HMI_RX_PORT GPIOA
  160. #define GPIO_UART_HMI_TX_PORT GPIOA
  161. #define GPIO_UART_HMI_RX_PIN DL_GPIO_PIN_1
  162. #define GPIO_UART_HMI_TX_PIN DL_GPIO_PIN_0
  163. #define GPIO_UART_HMI_IOMUX_RX (IOMUX_PINCM2)
  164. #define GPIO_UART_HMI_IOMUX_TX (IOMUX_PINCM1)
  165. #define GPIO_UART_HMI_IOMUX_RX_FUNC IOMUX_PINCM2_PF_UART0_RX
  166. #define GPIO_UART_HMI_IOMUX_TX_FUNC IOMUX_PINCM1_PF_UART0_TX
  167. #define UART_HMI_BAUD_RATE (9600)
  168. #define UART_HMI_IBRD_36_MHZ_9600_BAUD (234)
  169. #define UART_HMI_FBRD_36_MHZ_9600_BAUD (24)
  170. /* Defines for ADC12_0 */
  171. #define ADC12_0_INST ADC0
  172. #define ADC12_0_INST_IRQHandler ADC0_IRQHandler
  173. #define ADC12_0_INST_INT_IRQN (ADC0_INT_IRQn)
  174. #define ADC12_0_ADCMEM_0 DL_ADC12_MEM_IDX_0
  175. #define ADC12_0_ADCMEM_0_REF DL_ADC12_REFERENCE_VOLTAGE_VDDA
  176. #define ADC12_0_ADCMEM_0_REF_VOLTAGE_V 3.3
  177. #define ADC12_0_ADCMEM_1 DL_ADC12_MEM_IDX_1
  178. #define ADC12_0_ADCMEM_1_REF DL_ADC12_REFERENCE_VOLTAGE_VDDA
  179. #define ADC12_0_ADCMEM_1_REF_VOLTAGE_V 3.3
  180. #define ADC12_0_ADCMEM_2 DL_ADC12_MEM_IDX_2
  181. #define ADC12_0_ADCMEM_2_REF DL_ADC12_REFERENCE_VOLTAGE_VDDA
  182. #define ADC12_0_ADCMEM_2_REF_VOLTAGE_V 3.3
  183. #define ADC12_0_ADCMEM_3 DL_ADC12_MEM_IDX_3
  184. #define ADC12_0_ADCMEM_3_REF DL_ADC12_REFERENCE_VOLTAGE_VDDA
  185. #define ADC12_0_ADCMEM_3_REF_VOLTAGE_V 3.3
  186. #define ADC12_0_ADCMEM_4 DL_ADC12_MEM_IDX_4
  187. #define ADC12_0_ADCMEM_4_REF DL_ADC12_REFERENCE_VOLTAGE_VDDA
  188. #define ADC12_0_ADCMEM_4_REF_VOLTAGE_V 3.3
  189. #define ADC12_0_INST_SUB_CH (12)
  190. #define GPIO_ADC12_0_C6_PORT GPIOB
  191. #define GPIO_ADC12_0_C6_PIN DL_GPIO_PIN_20
  192. #define GPIO_ADC12_0_C0_PORT GPIOA
  193. #define GPIO_ADC12_0_C0_PIN DL_GPIO_PIN_27
  194. /* Defines for ADC12_1 */
  195. #define ADC12_1_INST ADC1
  196. #define ADC12_1_INST_IRQHandler ADC1_IRQHandler
  197. #define ADC12_1_INST_INT_IRQN (ADC1_INT_IRQn)
  198. #define ADC12_1_ADCMEM_0 DL_ADC12_MEM_IDX_0
  199. #define ADC12_1_ADCMEM_0_REF DL_ADC12_REFERENCE_VOLTAGE_VDDA
  200. #define ADC12_1_ADCMEM_0_REF_VOLTAGE_V 3.3
  201. #define ADC12_1_ADCMEM_1 DL_ADC12_MEM_IDX_1
  202. #define ADC12_1_ADCMEM_1_REF DL_ADC12_REFERENCE_VOLTAGE_VDDA
  203. #define ADC12_1_ADCMEM_1_REF_VOLTAGE_V 3.3
  204. #define ADC12_1_ADCMEM_2 DL_ADC12_MEM_IDX_2
  205. #define ADC12_1_ADCMEM_2_REF DL_ADC12_REFERENCE_VOLTAGE_VDDA
  206. #define ADC12_1_ADCMEM_2_REF_VOLTAGE_V 3.3
  207. #define ADC12_1_ADCMEM_3 DL_ADC12_MEM_IDX_3
  208. #define ADC12_1_ADCMEM_3_REF DL_ADC12_REFERENCE_VOLTAGE_VDDA
  209. #define ADC12_1_ADCMEM_3_REF_VOLTAGE_V 3.3
  210. #define ADC12_1_ADCMEM_4 DL_ADC12_MEM_IDX_4
  211. #define ADC12_1_ADCMEM_4_REF DL_ADC12_REFERENCE_VOLTAGE_VDDA
  212. #define ADC12_1_ADCMEM_4_REF_VOLTAGE_V 3.3
  213. #define ADC12_1_INST_SUB_CH (12)
  214. #define GPIO_ADC12_1_C6_PORT GPIOB
  215. #define GPIO_ADC12_1_C6_PIN DL_GPIO_PIN_19
  216. #define GPIO_ADC12_1_C5_PORT GPIOB
  217. #define GPIO_ADC12_1_C5_PIN DL_GPIO_PIN_18
  218. #define GPIO_ADC12_1_C4_PORT GPIOB
  219. #define GPIO_ADC12_1_C4_PIN DL_GPIO_PIN_17
  220. #define GPIO_ADC12_1_C7_PORT GPIOA
  221. #define GPIO_ADC12_1_C7_PIN DL_GPIO_PIN_21
  222. /* Defines for COMP_0 */
  223. #define COMP_0_INST COMP1
  224. #define COMP_0_INST_INT_IRQN COMP1_INT_IRQn
  225. /* Defines for COMP_0 DACCODE0 */
  226. #define COMP_0_DACCODE0 (153)
  227. /* Defines for COMP_FLEDCHECK */
  228. #define COMP_FLEDCHECK_INST COMP0
  229. #define COMP_FLEDCHECK_INST_INT_IRQN COMP0_INT_IRQn
  230. /* Defines for COMP_FLEDCHECK DACCODE0 */
  231. #define COMP_FLEDCHECK_DACCODE0 (15)
  232. /* GPIO configuration for COMP_0 */
  233. #define GPIO_COMP_0_IN1P_PORT (GPIOB)
  234. #define GPIO_COMP_0_IN1P_PIN (DL_GPIO_PIN_24)
  235. #define GPIO_COMP_0_IOMUX_IN1P (IOMUX_PINCM52)
  236. #define GPIO_COMP_0_IOMUX_IN1P_FUNC (IOMUX_PINCM52_PF_UNCONNECTED)
  237. /* GPIO configuration for COMP_FLEDCHECK */
  238. #define GPIO_COMP_FLEDCHECK_IN0P_PORT (GPIOA)
  239. #define GPIO_COMP_FLEDCHECK_IN0P_PIN (DL_GPIO_PIN_26)
  240. #define GPIO_COMP_FLEDCHECK_IOMUX_IN0P (IOMUX_PINCM59)
  241. #define GPIO_COMP_FLEDCHECK_IOMUX_IN0P_FUNC (IOMUX_PINCM59_PF_UNCONNECTED)
  242. /* Defines for OPA_BPHASE */
  243. #define OPA_BPHASE_INST OPA1
  244. #define GPIO_OPA_BPHASE_IN1POS_PORT GPIOA
  245. #define GPIO_OPA_BPHASE_IN1POS_PIN DL_GPIO_PIN_18
  246. #define GPIO_OPA_BPHASE_IOMUX_IN1POS (IOMUX_PINCM40)
  247. #define GPIO_OPA_BPHASE_IOMUX_IN1POS_FUNC IOMUX_PINCM40_PF_UNCONNECTED
  248. #define GPIO_OPA_BPHASE_IN1NEG_PORT GPIOA
  249. #define GPIO_OPA_BPHASE_IN1NEG_PIN DL_GPIO_PIN_17
  250. #define GPIO_OPA_BPHASE_IOMUX_IN1NEG (IOMUX_PINCM39)
  251. #define GPIO_OPA_BPHASE_IOMUX_IN1NEG_FUNC IOMUX_PINCM39_PF_UNCONNECTED
  252. #define GPIO_OPA_BPHASE_OUT_PORT GPIOA
  253. #define GPIO_OPA_BPHASE_OUT_PIN DL_GPIO_PIN_16
  254. #define GPIO_OPA_BPHASE_IOMUX_OUT (IOMUX_PINCM38)
  255. #define GPIO_OPA_BPHASE_IOMUX_OUT_FUNC IOMUX_PINCM38_PF_UNCONNECTED
  256. /* Defines for OPA_CPHASE */
  257. #define OPA_CPHASE_INST OPA0
  258. #define GPIO_OPA_CPHASE_IN1POS_PORT GPIOA
  259. #define GPIO_OPA_CPHASE_IN1POS_PIN DL_GPIO_PIN_25
  260. #define GPIO_OPA_CPHASE_IOMUX_IN1POS (IOMUX_PINCM55)
  261. #define GPIO_OPA_CPHASE_IOMUX_IN1POS_FUNC IOMUX_PINCM55_PF_UNCONNECTED
  262. #define GPIO_OPA_CPHASE_IN1NEG_PORT GPIOA
  263. #define GPIO_OPA_CPHASE_IN1NEG_PIN DL_GPIO_PIN_24
  264. #define GPIO_OPA_CPHASE_IOMUX_IN1NEG (IOMUX_PINCM54)
  265. #define GPIO_OPA_CPHASE_IOMUX_IN1NEG_FUNC IOMUX_PINCM54_PF_UNCONNECTED
  266. #define GPIO_OPA_CPHASE_OUT_PORT GPIOA
  267. #define GPIO_OPA_CPHASE_OUT_PIN DL_GPIO_PIN_22
  268. #define GPIO_OPA_CPHASE_IOMUX_OUT (IOMUX_PINCM47)
  269. #define GPIO_OPA_CPHASE_IOMUX_OUT_FUNC IOMUX_PINCM47_PF_UNCONNECTED
  270. /* Port definition for Pin Group OUTPUT */
  271. #define OUTPUT_PORT (GPIOA)
  272. /* Defines for POWER_EN: GPIOA.23 with pinCMx 53 on package pin 43 */
  273. #define OUTPUT_POWER_EN_PIN (DL_GPIO_PIN_23)
  274. #define OUTPUT_POWER_EN_IOMUX (IOMUX_PINCM53)
  275. /* Port definition for Pin Group INPUT */
  276. #define INPUT_PORT (GPIOA)
  277. /* Defines for BREAK: GPIOA.28 with pinCMx 3 on package pin 3 */
  278. #define INPUT_BREAK_PIN (DL_GPIO_PIN_28)
  279. #define INPUT_BREAK_IOMUX (IOMUX_PINCM3)
  280. /* Defines for Cadence_in: GPIOA.9 with pinCMx 20 on package pin 17 */
  281. #define INPUT_Cadence_in_PIN (DL_GPIO_PIN_9)
  282. #define INPUT_Cadence_in_IOMUX (IOMUX_PINCM20)
  283. /* Defines for HALLA: GPIOA.8 with pinCMx 19 on package pin 16 */
  284. #define HALL_HALLA_PORT (GPIOA)
  285. // groups represented: ["LIGHT_DETECT","HALL"]
  286. // pins affected: ["LEFT","HALLA"]
  287. #define GPIO_MULTIPLE_GPIOA_INT_IRQN (GPIOA_INT_IRQn)
  288. #define GPIO_MULTIPLE_GPIOA_INT_IIDX (DL_INTERRUPT_GROUP1_IIDX_GPIOA)
  289. #define HALL_HALLA_IIDX (DL_GPIO_IIDX_DIO8)
  290. #define HALL_HALLA_PIN (DL_GPIO_PIN_8)
  291. #define HALL_HALLA_IOMUX (IOMUX_PINCM19)
  292. /* Defines for HALLB: GPIOB.3 with pinCMx 16 on package pin 15 */
  293. #define HALL_HALLB_PORT (GPIOB)
  294. // groups represented: ["LIGHT_DETECT","HALL"]
  295. // pins affected: ["BACK","RIGHT","HALLB","HALLC"]
  296. #define GPIO_MULTIPLE_GPIOB_INT_IRQN (GPIOB_INT_IRQn)
  297. #define GPIO_MULTIPLE_GPIOB_INT_IIDX (DL_INTERRUPT_GROUP1_IIDX_GPIOB)
  298. #define HALL_HALLB_IIDX (DL_GPIO_IIDX_DIO3)
  299. #define HALL_HALLB_PIN (DL_GPIO_PIN_3)
  300. #define HALL_HALLB_IOMUX (IOMUX_PINCM16)
  301. /* Defines for HALLC: GPIOB.2 with pinCMx 15 on package pin 14 */
  302. #define HALL_HALLC_PORT (GPIOB)
  303. #define HALL_HALLC_IIDX (DL_GPIO_IIDX_DIO2)
  304. #define HALL_HALLC_PIN (DL_GPIO_PIN_2)
  305. #define HALL_HALLC_IOMUX (IOMUX_PINCM15)
  306. /* Defines for BACK: GPIOB.15 with pinCMx 32 on package pin 25 */
  307. #define LIGHT_DETECT_BACK_PORT (GPIOB)
  308. #define LIGHT_DETECT_BACK_IIDX (DL_GPIO_IIDX_DIO15)
  309. #define LIGHT_DETECT_BACK_PIN (DL_GPIO_PIN_15)
  310. #define LIGHT_DETECT_BACK_IOMUX (IOMUX_PINCM32)
  311. /* Defines for RIGHT: GPIOB.8 with pinCMx 25 on package pin 22 */
  312. #define LIGHT_DETECT_RIGHT_PORT (GPIOB)
  313. #define LIGHT_DETECT_RIGHT_IIDX (DL_GPIO_IIDX_DIO8)
  314. #define LIGHT_DETECT_RIGHT_PIN (DL_GPIO_PIN_8)
  315. #define LIGHT_DETECT_RIGHT_IOMUX (IOMUX_PINCM25)
  316. /* Defines for LEFT: GPIOA.3 with pinCMx 8 on package pin 9 */
  317. #define LIGHT_DETECT_LEFT_PORT (GPIOA)
  318. #define LIGHT_DETECT_LEFT_IIDX (DL_GPIO_IIDX_DIO3)
  319. #define LIGHT_DETECT_LEFT_PIN (DL_GPIO_PIN_3)
  320. #define LIGHT_DETECT_LEFT_IOMUX (IOMUX_PINCM8)
  321. /* Port definition for Pin Group GPIO_12V6 */
  322. #define GPIO_12V6_PORT (GPIOA)
  323. /* Defines for PIN_EN: GPIOA.20 with pinCMx 42 on package pin 35 */
  324. #define GPIO_12V6_PIN_EN_PIN (DL_GPIO_PIN_20)
  325. #define GPIO_12V6_PIN_EN_IOMUX (IOMUX_PINCM42)
  326. /* Defines for PIN_SEL: GPIOA.19 with pinCMx 41 on package pin 34 */
  327. #define GPIO_12V6_PIN_SEL_PIN (DL_GPIO_PIN_19)
  328. #define GPIO_12V6_PIN_SEL_IOMUX (IOMUX_PINCM41)
  329. /* Defines for DAC12 */
  330. #define DAC12_IRQHandler DAC0_IRQHandler
  331. #define DAC12_INT_IRQN (DAC0_INT_IRQn)
  332. #define GPIO_DAC12_OUT_PORT GPIOA
  333. #define GPIO_DAC12_OUT_PIN DL_GPIO_PIN_15
  334. #define GPIO_DAC12_IOMUX_OUT (IOMUX_PINCM37)
  335. #define GPIO_DAC12_IOMUX_OUT_FUNC IOMUX_PINCM37_PF_UNCONNECTED
  336. /* Defines for WWDT */
  337. #define WWDT0_INST (WWDT0)
  338. #define WWDT0_INT_IRQN (WWDT0_INT_IRQn)
  339. /* Defines for MCAN0 */
  340. #define MCAN0_INST CANFD0
  341. #define GPIO_MCAN0_CAN_TX_PORT GPIOA
  342. #define GPIO_MCAN0_CAN_TX_PIN DL_GPIO_PIN_12
  343. #define GPIO_MCAN0_IOMUX_CAN_TX (IOMUX_PINCM34)
  344. #define GPIO_MCAN0_IOMUX_CAN_TX_FUNC IOMUX_PINCM34_PF_CANFD0_CANTX
  345. #define GPIO_MCAN0_CAN_RX_PORT GPIOA
  346. #define GPIO_MCAN0_CAN_RX_PIN DL_GPIO_PIN_13
  347. #define GPIO_MCAN0_IOMUX_CAN_RX (IOMUX_PINCM35)
  348. #define GPIO_MCAN0_IOMUX_CAN_RX_FUNC IOMUX_PINCM35_PF_CANFD0_CANRX
  349. #define MCAN0_INST_IRQHandler CANFD0_IRQHandler
  350. #define MCAN0_INST_INT_IRQN CANFD0_INT_IRQn
  351. /* Defines for MCAN0 MCAN RAM configuration */
  352. #define MCAN0_INST_MCAN_STD_ID_FILT_START_ADDR (0)
  353. #define MCAN0_INST_MCAN_STD_ID_FILTER_NUM (0)
  354. #define MCAN0_INST_MCAN_EXT_ID_FILT_START_ADDR (0)
  355. #define MCAN0_INST_MCAN_EXT_ID_FILTER_NUM (0)
  356. #define MCAN0_INST_MCAN_TX_BUFF_START_ADDR (0)
  357. #define MCAN0_INST_MCAN_TX_BUFF_SIZE (0)
  358. #define MCAN0_INST_MCAN_FIFO_1_START_ADDR (0)
  359. #define MCAN0_INST_MCAN_FIFO_1_NUM (32)
  360. #define MCAN0_INST_MCAN_TX_EVENT_START_ADDR (0)
  361. #define MCAN0_INST_MCAN_TX_EVENT_SIZE (32)
  362. #define MCAN0_INST_MCAN_EXT_ID_AND_MASK (0x1FFFFFFFU)
  363. #define MCAN0_INST_MCAN_RX_BUFF_START_ADDR (0)
  364. #define MCAN0_INST_MCAN_FIFO_0_START_ADDR (0)
  365. #define MCAN0_INST_MCAN_FIFO_0_NUM (32)
  366. #define MCAN0_INST_MCAN_INTERRUPTS (DL_MCAN_INTERRUPT_RF0N | \
  367. DL_MCAN_INTERRUPT_TC | \
  368. DL_MCAN_INTERRUPT_TEFN)
  369. /* clang-format on */
  370. void SYSCFG_DL_init(void);
  371. void SYSCFG_DL_initPower(void);
  372. void SYSCFG_DL_GPIO_init(void);
  373. void SYSCFG_DL_DEBUG_init(void);
  374. void SYSCFG_DL_SYSCTL_init(void);
  375. void SYSCFG_DL_MOTOR_PWM_init(void);
  376. void SYSCFG_DL_PWM_F_init(void);
  377. void SYSCFG_DL_PWM_B_L_init(void);
  378. void SYSCFG_DL_PWM_R_init(void);
  379. void SYSCFG_DL_HALLTIMER_init(void);
  380. void SYSCFG_DL_HALL_CNT_init(void);
  381. void SYSCFG_DL_UART_HMI_init(void);
  382. void SYSCFG_DL_ADC12_0_init(void);
  383. void SYSCFG_DL_ADC12_1_init(void);
  384. void SYSCFG_DL_COMP_0_init(void);
  385. void SYSCFG_DL_COMP_FLEDCHECK_init(void);
  386. void SYSCFG_DL_OPA_BPHASE_init(void);
  387. void SYSCFG_DL_OPA_CPHASE_init(void);
  388. void SYSCFG_DL_SYSTICK_init(void);
  389. void SYSCFG_DL_DAC12_init(void);
  390. void SYSCFG_DL_WWDT0_init(void);
  391. void SYSCFG_DL_MCAN0_init(void);
  392. bool SYSCFG_DL_saveConfiguration(void);
  393. bool SYSCFG_DL_restoreConfiguration(void);
  394. #ifdef __cplusplus
  395. }
  396. #endif
  397. #endif /* ti_msp_dl_config_h */