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.

287 lines
7.2 KiB

2 years ago
  1. /* USER CODE BEGIN Header */
  2. /**
  3. ******************************************************************************
  4. * @file tim.c
  5. * @brief This file provides code for the configuration
  6. * of the TIM instances.
  7. ******************************************************************************
  8. * @attention
  9. *
  10. * Copyright (c) 2023 STMicroelectronics.
  11. * All rights reserved.
  12. *
  13. * This software is licensed under terms that can be found in the LICENSE file
  14. * in the root directory of this software component.
  15. * If no LICENSE file comes with this software, it is provided AS-IS.
  16. *
  17. ******************************************************************************
  18. */
  19. /* USER CODE END Header */
  20. /* Includes ------------------------------------------------------------------*/
  21. #include "tim.h"
  22. /* USER CODE BEGIN 0 */
  23. /* USER CODE END 0 */
  24. TIM_HandleTypeDef htim1;
  25. TIM_HandleTypeDef htim3;
  26. TIM_HandleTypeDef htim6;
  27. TIM_HandleTypeDef htim7;
  28. /* TIM1 init function */
  29. void MX_TIM1_Init(void)
  30. {
  31. /* USER CODE BEGIN TIM1_Init 0 */
  32. /* USER CODE END TIM1_Init 0 */
  33. TIM_ClockConfigTypeDef sClockSourceConfig = {0};
  34. TIM_MasterConfigTypeDef sMasterConfig = {0};
  35. /* USER CODE BEGIN TIM1_Init 1 */
  36. /* USER CODE END TIM1_Init 1 */
  37. htim1.Instance = TIM1;
  38. htim1.Init.Prescaler = 143;
  39. htim1.Init.CounterMode = TIM_COUNTERMODE_UP;
  40. htim1.Init.Period = 9999;
  41. htim1.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
  42. htim1.Init.RepetitionCounter = 0;
  43. htim1.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
  44. if (HAL_TIM_Base_Init(&htim1) != HAL_OK)
  45. {
  46. Error_Handler();
  47. }
  48. sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL;
  49. if (HAL_TIM_ConfigClockSource(&htim1, &sClockSourceConfig) != HAL_OK)
  50. {
  51. Error_Handler();
  52. }
  53. sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET;
  54. sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
  55. if (HAL_TIMEx_MasterConfigSynchronization(&htim1, &sMasterConfig) != HAL_OK)
  56. {
  57. Error_Handler();
  58. }
  59. /* USER CODE BEGIN TIM1_Init 2 */
  60. /* USER CODE END TIM1_Init 2 */
  61. }
  62. /* TIM3 init function */
  63. void MX_TIM3_Init(void)
  64. {
  65. /* USER CODE BEGIN TIM3_Init 0 */
  66. /* USER CODE END TIM3_Init 0 */
  67. TIM_ClockConfigTypeDef sClockSourceConfig = {0};
  68. TIM_MasterConfigTypeDef sMasterConfig = {0};
  69. /* USER CODE BEGIN TIM3_Init 1 */
  70. /* USER CODE END TIM3_Init 1 */
  71. htim3.Instance = TIM3;
  72. htim3.Init.Prescaler = 71;
  73. htim3.Init.CounterMode = TIM_COUNTERMODE_UP;
  74. htim3.Init.Period = 9999;
  75. htim3.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
  76. htim3.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
  77. if (HAL_TIM_Base_Init(&htim3) != HAL_OK)
  78. {
  79. Error_Handler();
  80. }
  81. sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL;
  82. if (HAL_TIM_ConfigClockSource(&htim3, &sClockSourceConfig) != HAL_OK)
  83. {
  84. Error_Handler();
  85. }
  86. sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET;
  87. sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
  88. if (HAL_TIMEx_MasterConfigSynchronization(&htim3, &sMasterConfig) != HAL_OK)
  89. {
  90. Error_Handler();
  91. }
  92. /* USER CODE BEGIN TIM3_Init 2 */
  93. /* USER CODE END TIM3_Init 2 */
  94. }
  95. /* TIM6 init function */
  96. void MX_TIM6_Init(void)
  97. {
  98. /* USER CODE BEGIN TIM6_Init 0 */
  99. /* USER CODE END TIM6_Init 0 */
  100. TIM_MasterConfigTypeDef sMasterConfig = {0};
  101. /* USER CODE BEGIN TIM6_Init 1 */
  102. /* USER CODE END TIM6_Init 1 */
  103. htim6.Instance = TIM6;
  104. htim6.Init.Prescaler = 71;
  105. htim6.Init.CounterMode = TIM_COUNTERMODE_UP;
  106. htim6.Init.Period = 65535;
  107. htim6.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
  108. if (HAL_TIM_Base_Init(&htim6) != HAL_OK)
  109. {
  110. Error_Handler();
  111. }
  112. sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET;
  113. sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
  114. if (HAL_TIMEx_MasterConfigSynchronization(&htim6, &sMasterConfig) != HAL_OK)
  115. {
  116. Error_Handler();
  117. }
  118. /* USER CODE BEGIN TIM6_Init 2 */
  119. /* USER CODE END TIM6_Init 2 */
  120. }
  121. /* TIM7 init function */
  122. void MX_TIM7_Init(void)
  123. {
  124. /* USER CODE BEGIN TIM7_Init 0 */
  125. /* USER CODE END TIM7_Init 0 */
  126. TIM_MasterConfigTypeDef sMasterConfig = {0};
  127. /* USER CODE BEGIN TIM7_Init 1 */
  128. /* USER CODE END TIM7_Init 1 */
  129. htim7.Instance = TIM7;
  130. htim7.Init.Prescaler = 81;
  131. htim7.Init.CounterMode = TIM_COUNTERMODE_UP;
  132. htim7.Init.Period = 65535;
  133. htim7.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
  134. if (HAL_TIM_Base_Init(&htim7) != HAL_OK)
  135. {
  136. Error_Handler();
  137. }
  138. sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET;
  139. sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
  140. if (HAL_TIMEx_MasterConfigSynchronization(&htim7, &sMasterConfig) != HAL_OK)
  141. {
  142. Error_Handler();
  143. }
  144. /* USER CODE BEGIN TIM7_Init 2 */
  145. /* USER CODE END TIM7_Init 2 */
  146. }
  147. void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* tim_baseHandle)
  148. {
  149. if(tim_baseHandle->Instance==TIM1)
  150. {
  151. /* USER CODE BEGIN TIM1_MspInit 0 */
  152. /* USER CODE END TIM1_MspInit 0 */
  153. /* TIM1 clock enable */
  154. __HAL_RCC_TIM1_CLK_ENABLE();
  155. /* TIM1 interrupt Init */
  156. HAL_NVIC_SetPriority(TIM1_TRG_COM_TIM11_IRQn, 15, 0);
  157. HAL_NVIC_EnableIRQ(TIM1_TRG_COM_TIM11_IRQn);
  158. /* USER CODE BEGIN TIM1_MspInit 1 */
  159. /* USER CODE END TIM1_MspInit 1 */
  160. }
  161. else if(tim_baseHandle->Instance==TIM3)
  162. {
  163. /* USER CODE BEGIN TIM3_MspInit 0 */
  164. /* USER CODE END TIM3_MspInit 0 */
  165. /* TIM3 clock enable */
  166. __HAL_RCC_TIM3_CLK_ENABLE();
  167. /* USER CODE BEGIN TIM3_MspInit 1 */
  168. /* USER CODE END TIM3_MspInit 1 */
  169. }
  170. else if(tim_baseHandle->Instance==TIM6)
  171. {
  172. /* USER CODE BEGIN TIM6_MspInit 0 */
  173. /* USER CODE END TIM6_MspInit 0 */
  174. /* TIM6 clock enable */
  175. __HAL_RCC_TIM6_CLK_ENABLE();
  176. /* USER CODE BEGIN TIM6_MspInit 1 */
  177. /* USER CODE END TIM6_MspInit 1 */
  178. }
  179. else if(tim_baseHandle->Instance==TIM7)
  180. {
  181. /* USER CODE BEGIN TIM7_MspInit 0 */
  182. /* USER CODE END TIM7_MspInit 0 */
  183. /* TIM7 clock enable */
  184. __HAL_RCC_TIM7_CLK_ENABLE();
  185. /* USER CODE BEGIN TIM7_MspInit 1 */
  186. /* USER CODE END TIM7_MspInit 1 */
  187. }
  188. }
  189. void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef* tim_baseHandle)
  190. {
  191. if(tim_baseHandle->Instance==TIM1)
  192. {
  193. /* USER CODE BEGIN TIM1_MspDeInit 0 */
  194. /* USER CODE END TIM1_MspDeInit 0 */
  195. /* Peripheral clock disable */
  196. __HAL_RCC_TIM1_CLK_DISABLE();
  197. /* TIM1 interrupt Deinit */
  198. HAL_NVIC_DisableIRQ(TIM1_TRG_COM_TIM11_IRQn);
  199. /* USER CODE BEGIN TIM1_MspDeInit 1 */
  200. /* USER CODE END TIM1_MspDeInit 1 */
  201. }
  202. else if(tim_baseHandle->Instance==TIM3)
  203. {
  204. /* USER CODE BEGIN TIM3_MspDeInit 0 */
  205. /* USER CODE END TIM3_MspDeInit 0 */
  206. /* Peripheral clock disable */
  207. __HAL_RCC_TIM3_CLK_DISABLE();
  208. /* USER CODE BEGIN TIM3_MspDeInit 1 */
  209. /* USER CODE END TIM3_MspDeInit 1 */
  210. }
  211. else if(tim_baseHandle->Instance==TIM6)
  212. {
  213. /* USER CODE BEGIN TIM6_MspDeInit 0 */
  214. /* USER CODE END TIM6_MspDeInit 0 */
  215. /* Peripheral clock disable */
  216. __HAL_RCC_TIM6_CLK_DISABLE();
  217. /* USER CODE BEGIN TIM6_MspDeInit 1 */
  218. /* USER CODE END TIM6_MspDeInit 1 */
  219. }
  220. else if(tim_baseHandle->Instance==TIM7)
  221. {
  222. /* USER CODE BEGIN TIM7_MspDeInit 0 */
  223. /* USER CODE END TIM7_MspDeInit 0 */
  224. /* Peripheral clock disable */
  225. __HAL_RCC_TIM7_CLK_DISABLE();
  226. /* USER CODE BEGIN TIM7_MspDeInit 1 */
  227. /* USER CODE END TIM7_MspDeInit 1 */
  228. }
  229. }
  230. /* USER CODE BEGIN 1 */
  231. /* USER CODE END 1 */