1 /* USER CODE BEGIN Header */
2 /**
3 ******************************************************************************
4 * File Name : stm32l4xx_hal_msp.c
5 * Description : This file provides code for the MSP Initialization
6 * and de-Initialization codes.
7 ******************************************************************************
8 * @attention
9 *
10 * <h2><center>© Copyright (c) 2020 STMicroelectronics.
11 * All rights reserved.</center></h2>
12 *
13 * This software component is licensed by ST under BSD 3-Clause license,
14 * the "License"; You may not use this file except in compliance with the
15 * License. You may obtain a copy of the License at:
16 * opensource.org/licenses/BSD-3-Clause
17 *
18 ******************************************************************************
19 */
20 /* USER CODE END Header */
21
22 /* Includes ------------------------------------------------------------------*/
23 #include "main.h"
24 /* USER CODE BEGIN Includes */
25 #include <drv_common.h>
26 /* USER CODE END Includes */
27
28 /* Private typedef -----------------------------------------------------------*/
29 /* USER CODE BEGIN TD */
30
31 /* USER CODE END TD */
32
33 /* Private define ------------------------------------------------------------*/
34 /* USER CODE BEGIN Define */
35
36 /* USER CODE END Define */
37
38 /* Private macro -------------------------------------------------------------*/
39 /* USER CODE BEGIN Macro */
40
41 /* USER CODE END Macro */
42
43 /* Private variables ---------------------------------------------------------*/
44 /* USER CODE BEGIN PV */
45
46 /* USER CODE END PV */
47
48 /* Private function prototypes -----------------------------------------------*/
49 /* USER CODE BEGIN PFP */
50
51 /* USER CODE END PFP */
52
53 /* External functions --------------------------------------------------------*/
54 /* USER CODE BEGIN ExternalFunctions */
55
56 /* USER CODE END ExternalFunctions */
57
58 /* USER CODE BEGIN 0 */
59
60 /* USER CODE END 0 */
61
62 void HAL_TIM_MspPostInit(TIM_HandleTypeDef *htim);
63 /**
64 * Initializes the Global MSP.
65 */
HAL_MspInit(void)66 void HAL_MspInit(void)
67 {
68 /* USER CODE BEGIN MspInit 0 */
69
70 /* USER CODE END MspInit 0 */
71
72 __HAL_RCC_SYSCFG_CLK_ENABLE();
73 __HAL_RCC_PWR_CLK_ENABLE();
74
75 /* System interrupt init*/
76
77 /* USER CODE BEGIN MspInit 1 */
78
79 /* USER CODE END MspInit 1 */
80 }
81
82 /**
83 * @brief ADC MSP Initialization
84 * This function configures the hardware resources used in this example
85 * @param hadc: ADC handle pointer
86 * @retval None
87 */
HAL_ADC_MspInit(ADC_HandleTypeDef * hadc)88 void HAL_ADC_MspInit(ADC_HandleTypeDef* hadc)
89 {
90 GPIO_InitTypeDef GPIO_InitStruct = {0};
91 RCC_PeriphCLKInitTypeDef PeriphClkInit = {0};
92 if(hadc->Instance==ADC1)
93 {
94 /* USER CODE BEGIN ADC1_MspInit 0 */
95
96 /* USER CODE END ADC1_MspInit 0 */
97
98 /** Initializes the peripherals clock
99 */
100 PeriphClkInit.PeriphClockSelection = RCC_PERIPHCLK_ADC;
101 PeriphClkInit.AdcClockSelection = RCC_ADCCLKSOURCE_PLLSAI1;
102 PeriphClkInit.PLLSAI1.PLLSAI1Source = RCC_PLLSOURCE_MSI;
103 PeriphClkInit.PLLSAI1.PLLSAI1M = 1;
104 PeriphClkInit.PLLSAI1.PLLSAI1N = 16;
105 PeriphClkInit.PLLSAI1.PLLSAI1P = RCC_PLLP_DIV7;
106 PeriphClkInit.PLLSAI1.PLLSAI1Q = RCC_PLLQ_DIV2;
107 PeriphClkInit.PLLSAI1.PLLSAI1R = RCC_PLLR_DIV2;
108 PeriphClkInit.PLLSAI1.PLLSAI1ClockOut = RCC_PLLSAI1_ADC1CLK;
109 if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInit) != HAL_OK)
110 {
111 Error_Handler();
112 }
113
114 /* Peripheral clock enable */
115 __HAL_RCC_ADC_CLK_ENABLE();
116
117 __HAL_RCC_GPIOC_CLK_ENABLE();
118 /**ADC1 GPIO Configuration
119 PC2 ------> ADC1_IN3
120 */
121 GPIO_InitStruct.Pin = GPIO_PIN_2;
122 GPIO_InitStruct.Mode = GPIO_MODE_ANALOG_ADC_CONTROL;
123 GPIO_InitStruct.Pull = GPIO_NOPULL;
124 HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
125
126 /* USER CODE BEGIN ADC1_MspInit 1 */
127
128 /* USER CODE END ADC1_MspInit 1 */
129 }
130
131 }
132
133 /**
134 * @brief ADC MSP De-Initialization
135 * This function freeze the hardware resources used in this example
136 * @param hadc: ADC handle pointer
137 * @retval None
138 */
HAL_ADC_MspDeInit(ADC_HandleTypeDef * hadc)139 void HAL_ADC_MspDeInit(ADC_HandleTypeDef* hadc)
140 {
141 if(hadc->Instance==ADC1)
142 {
143 /* USER CODE BEGIN ADC1_MspDeInit 0 */
144
145 /* USER CODE END ADC1_MspDeInit 0 */
146 /* Peripheral clock disable */
147 __HAL_RCC_ADC_CLK_DISABLE();
148
149 /**ADC1 GPIO Configuration
150 PC2 ------> ADC1_IN3
151 */
152 HAL_GPIO_DeInit(GPIOC, GPIO_PIN_2);
153
154 /* USER CODE BEGIN ADC1_MspDeInit 1 */
155
156 /* USER CODE END ADC1_MspDeInit 1 */
157 }
158
159 }
160
161 /**
162 * @brief DAC MSP Initialization
163 * This function configures the hardware resources used in this example
164 * @param hdac: DAC handle pointer
165 * @retval None
166 */
HAL_DAC_MspInit(DAC_HandleTypeDef * hdac)167 void HAL_DAC_MspInit(DAC_HandleTypeDef* hdac)
168 {
169 GPIO_InitTypeDef GPIO_InitStruct = {0};
170 if(hdac->Instance==DAC1)
171 {
172 /* USER CODE BEGIN DAC1_MspInit 0 */
173
174 /* USER CODE END DAC1_MspInit 0 */
175 /* Peripheral clock enable */
176 __HAL_RCC_DAC1_CLK_ENABLE();
177
178 __HAL_RCC_GPIOA_CLK_ENABLE();
179 /**DAC1 GPIO Configuration
180 PA5 ------> DAC1_OUT2
181 */
182 GPIO_InitStruct.Pin = GPIO_PIN_5;
183 GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;
184 GPIO_InitStruct.Pull = GPIO_NOPULL;
185 HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
186
187 /* USER CODE BEGIN DAC1_MspInit 1 */
188
189 /* USER CODE END DAC1_MspInit 1 */
190 }
191
192 }
193
194 /**
195 * @brief DAC MSP De-Initialization
196 * This function freeze the hardware resources used in this example
197 * @param hdac: DAC handle pointer
198 * @retval None
199 */
HAL_DAC_MspDeInit(DAC_HandleTypeDef * hdac)200 void HAL_DAC_MspDeInit(DAC_HandleTypeDef* hdac)
201 {
202 if(hdac->Instance==DAC1)
203 {
204 /* USER CODE BEGIN DAC1_MspDeInit 0 */
205
206 /* USER CODE END DAC1_MspDeInit 0 */
207 /* Peripheral clock disable */
208 __HAL_RCC_DAC1_CLK_DISABLE();
209
210 /**DAC1 GPIO Configuration
211 PA5 ------> DAC1_OUT2
212 */
213 HAL_GPIO_DeInit(GPIOA, GPIO_PIN_5);
214
215 /* USER CODE BEGIN DAC1_MspDeInit 1 */
216
217 /* USER CODE END DAC1_MspDeInit 1 */
218 }
219
220 }
221
222 /**
223 * @brief UART MSP Initialization
224 * This function configures the hardware resources used in this example
225 * @param huart: UART handle pointer
226 * @retval None
227 */
HAL_UART_MspInit(UART_HandleTypeDef * huart)228 void HAL_UART_MspInit(UART_HandleTypeDef* huart)
229 {
230 GPIO_InitTypeDef GPIO_InitStruct = {0};
231 RCC_PeriphCLKInitTypeDef PeriphClkInit = {0};
232 if(huart->Instance==LPUART1)
233 {
234 /* USER CODE BEGIN LPUART1_MspInit 0 */
235
236 /* USER CODE END LPUART1_MspInit 0 */
237
238 /** Initializes the peripherals clock
239 */
240 PeriphClkInit.PeriphClockSelection = RCC_PERIPHCLK_LPUART1;
241 PeriphClkInit.Lpuart1ClockSelection = RCC_LPUART1CLKSOURCE_PCLK1;
242 if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInit) != HAL_OK)
243 {
244 Error_Handler();
245 }
246
247 /* Peripheral clock enable */
248 __HAL_RCC_LPUART1_CLK_ENABLE();
249
250 __HAL_RCC_GPIOC_CLK_ENABLE();
251 /**LPUART1 GPIO Configuration
252 PC0 ------> LPUART1_RX
253 PC1 ------> LPUART1_TX
254 */
255 GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_PIN_1;
256 GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
257 GPIO_InitStruct.Pull = GPIO_NOPULL;
258 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
259 GPIO_InitStruct.Alternate = GPIO_AF8_LPUART1;
260 HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
261
262 /* USER CODE BEGIN LPUART1_MspInit 1 */
263
264 /* USER CODE END LPUART1_MspInit 1 */
265 }
266 else if(huart->Instance==USART1)
267 {
268 /* USER CODE BEGIN USART1_MspInit 0 */
269
270 /* USER CODE END USART1_MspInit 0 */
271
272 /** Initializes the peripherals clock
273 */
274 PeriphClkInit.PeriphClockSelection = RCC_PERIPHCLK_USART1;
275 PeriphClkInit.Usart1ClockSelection = RCC_USART1CLKSOURCE_PCLK2;
276 if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInit) != HAL_OK)
277 {
278 Error_Handler();
279 }
280
281 /* Peripheral clock enable */
282 __HAL_RCC_USART1_CLK_ENABLE();
283
284 __HAL_RCC_GPIOA_CLK_ENABLE();
285 /**USART1 GPIO Configuration
286 PA9 ------> USART1_TX
287 PA10 ------> USART1_RX
288 */
289 GPIO_InitStruct.Pin = GPIO_PIN_9|GPIO_PIN_10;
290 GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
291 GPIO_InitStruct.Pull = GPIO_PULLUP;
292 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
293 GPIO_InitStruct.Alternate = GPIO_AF7_USART1;
294 HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
295
296 /* USER CODE BEGIN USART1_MspInit 1 */
297
298 /* USER CODE END USART1_MspInit 1 */
299 }
300 else if(huart->Instance==USART3)
301 {
302 /* USER CODE BEGIN USART3_MspInit 0 */
303
304 /* USER CODE END USART3_MspInit 0 */
305
306 /** Initializes the peripherals clock
307 */
308 PeriphClkInit.PeriphClockSelection = RCC_PERIPHCLK_USART3;
309 PeriphClkInit.Usart3ClockSelection = RCC_USART3CLKSOURCE_PCLK1;
310 if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInit) != HAL_OK)
311 {
312 Error_Handler();
313 }
314
315 /* Peripheral clock enable */
316 __HAL_RCC_USART3_CLK_ENABLE();
317
318 __HAL_RCC_GPIOC_CLK_ENABLE();
319 /**USART3 GPIO Configuration
320 PC4 ------> USART3_TX
321 PC5 ------> USART3_RX
322 */
323 GPIO_InitStruct.Pin = GPIO_PIN_4|GPIO_PIN_5;
324 GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
325 GPIO_InitStruct.Pull = GPIO_NOPULL;
326 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
327 GPIO_InitStruct.Alternate = GPIO_AF7_USART3;
328 HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
329
330 /* USER CODE BEGIN USART3_MspInit 1 */
331
332 /* USER CODE END USART3_MspInit 1 */
333 }
334
335 }
336
337 /**
338 * @brief UART MSP De-Initialization
339 * This function freeze the hardware resources used in this example
340 * @param huart: UART handle pointer
341 * @retval None
342 */
HAL_UART_MspDeInit(UART_HandleTypeDef * huart)343 void HAL_UART_MspDeInit(UART_HandleTypeDef* huart)
344 {
345 if(huart->Instance==LPUART1)
346 {
347 /* USER CODE BEGIN LPUART1_MspDeInit 0 */
348
349 /* USER CODE END LPUART1_MspDeInit 0 */
350 /* Peripheral clock disable */
351 __HAL_RCC_LPUART1_CLK_DISABLE();
352
353 /**LPUART1 GPIO Configuration
354 PC0 ------> LPUART1_RX
355 PC1 ------> LPUART1_TX
356 */
357 HAL_GPIO_DeInit(GPIOC, GPIO_PIN_0|GPIO_PIN_1);
358
359 /* USER CODE BEGIN LPUART1_MspDeInit 1 */
360
361 /* USER CODE END LPUART1_MspDeInit 1 */
362 }
363 else if(huart->Instance==USART1)
364 {
365 /* USER CODE BEGIN USART1_MspDeInit 0 */
366
367 /* USER CODE END USART1_MspDeInit 0 */
368 /* Peripheral clock disable */
369 __HAL_RCC_USART1_CLK_DISABLE();
370
371 /**USART1 GPIO Configuration
372 PA9 ------> USART1_TX
373 PA10 ------> USART1_RX
374 */
375 HAL_GPIO_DeInit(GPIOA, GPIO_PIN_9|GPIO_PIN_10);
376
377 /* USER CODE BEGIN USART1_MspDeInit 1 */
378
379 /* USER CODE END USART1_MspDeInit 1 */
380 }
381 else if(huart->Instance==USART3)
382 {
383 /* USER CODE BEGIN USART3_MspDeInit 0 */
384
385 /* USER CODE END USART3_MspDeInit 0 */
386 /* Peripheral clock disable */
387 __HAL_RCC_USART3_CLK_DISABLE();
388
389 /**USART3 GPIO Configuration
390 PC4 ------> USART3_TX
391 PC5 ------> USART3_RX
392 */
393 HAL_GPIO_DeInit(GPIOC, GPIO_PIN_4|GPIO_PIN_5);
394
395 /* USER CODE BEGIN USART3_MspDeInit 1 */
396
397 /* USER CODE END USART3_MspDeInit 1 */
398 }
399
400 }
401
402 /**
403 * @brief SPI MSP Initialization
404 * This function configures the hardware resources used in this example
405 * @param hspi: SPI handle pointer
406 * @retval None
407 */
HAL_SPI_MspInit(SPI_HandleTypeDef * hspi)408 void HAL_SPI_MspInit(SPI_HandleTypeDef* hspi)
409 {
410 GPIO_InitTypeDef GPIO_InitStruct = {0};
411 if(hspi->Instance==SPI1)
412 {
413 /* USER CODE BEGIN SPI1_MspInit 0 */
414
415 /* USER CODE END SPI1_MspInit 0 */
416 /* Peripheral clock enable */
417 __HAL_RCC_SPI1_CLK_ENABLE();
418
419 __HAL_RCC_GPIOA_CLK_ENABLE();
420 /**SPI1 GPIO Configuration
421 PA1 ------> SPI1_SCK
422 PA6 ------> SPI1_MISO
423 PA12 ------> SPI1_MOSI
424 */
425 GPIO_InitStruct.Pin = GPIO_PIN_1|GPIO_PIN_6|GPIO_PIN_12;
426 GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
427 GPIO_InitStruct.Pull = GPIO_NOPULL;
428 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
429 GPIO_InitStruct.Alternate = GPIO_AF5_SPI1;
430 HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
431
432 /* USER CODE BEGIN SPI1_MspInit 1 */
433
434 /* USER CODE END SPI1_MspInit 1 */
435 }
436 else if(hspi->Instance==SPI2)
437 {
438 /* USER CODE BEGIN SPI2_MspInit 0 */
439
440 /* USER CODE END SPI2_MspInit 0 */
441 /* Peripheral clock enable */
442 __HAL_RCC_SPI2_CLK_ENABLE();
443
444 __HAL_RCC_GPIOC_CLK_ENABLE();
445 __HAL_RCC_GPIOB_CLK_ENABLE();
446 /**SPI2 GPIO Configuration
447 PC3 ------> SPI2_MOSI
448 PB13 ------> SPI2_SCK
449 */
450 GPIO_InitStruct.Pin = GPIO_PIN_3;
451 GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
452 GPIO_InitStruct.Pull = GPIO_NOPULL;
453 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
454 GPIO_InitStruct.Alternate = GPIO_AF5_SPI2;
455 HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
456
457 GPIO_InitStruct.Pin = GPIO_PIN_13;
458 GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
459 GPIO_InitStruct.Pull = GPIO_NOPULL;
460 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
461 GPIO_InitStruct.Alternate = GPIO_AF5_SPI2;
462 HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
463
464 /* USER CODE BEGIN SPI2_MspInit 1 */
465
466 /* USER CODE END SPI2_MspInit 1 */
467 }
468
469 }
470
471 /**
472 * @brief SPI MSP De-Initialization
473 * This function freeze the hardware resources used in this example
474 * @param hspi: SPI handle pointer
475 * @retval None
476 */
HAL_SPI_MspDeInit(SPI_HandleTypeDef * hspi)477 void HAL_SPI_MspDeInit(SPI_HandleTypeDef* hspi)
478 {
479 if(hspi->Instance==SPI1)
480 {
481 /* USER CODE BEGIN SPI1_MspDeInit 0 */
482
483 /* USER CODE END SPI1_MspDeInit 0 */
484 /* Peripheral clock disable */
485 __HAL_RCC_SPI1_CLK_DISABLE();
486
487 /**SPI1 GPIO Configuration
488 PA1 ------> SPI1_SCK
489 PA6 ------> SPI1_MISO
490 PA12 ------> SPI1_MOSI
491 */
492 HAL_GPIO_DeInit(GPIOA, GPIO_PIN_1|GPIO_PIN_6|GPIO_PIN_12);
493
494 /* USER CODE BEGIN SPI1_MspDeInit 1 */
495
496 /* USER CODE END SPI1_MspDeInit 1 */
497 }
498 else if(hspi->Instance==SPI2)
499 {
500 /* USER CODE BEGIN SPI2_MspDeInit 0 */
501
502 /* USER CODE END SPI2_MspDeInit 0 */
503 /* Peripheral clock disable */
504 __HAL_RCC_SPI2_CLK_DISABLE();
505
506 /**SPI2 GPIO Configuration
507 PC3 ------> SPI2_MOSI
508 PB13 ------> SPI2_SCK
509 */
510 HAL_GPIO_DeInit(GPIOC, GPIO_PIN_3);
511
512 HAL_GPIO_DeInit(GPIOB, GPIO_PIN_13);
513
514 /* USER CODE BEGIN SPI2_MspDeInit 1 */
515
516 /* USER CODE END SPI2_MspDeInit 1 */
517 }
518
519 }
520
521 /**
522 * @brief TIM_Base MSP Initialization
523 * This function configures the hardware resources used in this example
524 * @param htim_base: TIM_Base handle pointer
525 * @retval None
526 */
HAL_TIM_Base_MspInit(TIM_HandleTypeDef * htim_base)527 void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* htim_base)
528 {
529 if(htim_base->Instance==TIM1)
530 {
531 /* USER CODE BEGIN TIM1_MspInit 0 */
532
533 /* USER CODE END TIM1_MspInit 0 */
534 /* Peripheral clock enable */
535 __HAL_RCC_TIM1_CLK_ENABLE();
536 /* USER CODE BEGIN TIM1_MspInit 1 */
537
538 /* USER CODE END TIM1_MspInit 1 */
539 }
540 else if(htim_base->Instance==TIM16)
541 {
542 /* USER CODE BEGIN TIM16_MspInit 0 */
543
544 /* USER CODE END TIM16_MspInit 0 */
545 /* Peripheral clock enable */
546 __HAL_RCC_TIM16_CLK_ENABLE();
547 /* USER CODE BEGIN TIM16_MspInit 1 */
548
549 /* USER CODE END TIM16_MspInit 1 */
550 }
551
552 }
553
HAL_TIM_MspPostInit(TIM_HandleTypeDef * htim)554 void HAL_TIM_MspPostInit(TIM_HandleTypeDef* htim)
555 {
556 GPIO_InitTypeDef GPIO_InitStruct = {0};
557 if(htim->Instance==TIM1)
558 {
559 /* USER CODE BEGIN TIM1_MspPostInit 0 */
560
561 /* USER CODE END TIM1_MspPostInit 0 */
562 __HAL_RCC_GPIOA_CLK_ENABLE();
563 /**TIM1 GPIO Configuration
564 PA8 ------> TIM1_CH1
565 */
566 GPIO_InitStruct.Pin = GPIO_PIN_8;
567 GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
568 GPIO_InitStruct.Pull = GPIO_NOPULL;
569 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
570 GPIO_InitStruct.Alternate = GPIO_AF1_TIM1;
571 HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
572
573 /* USER CODE BEGIN TIM1_MspPostInit 1 */
574
575 /* USER CODE END TIM1_MspPostInit 1 */
576 }
577 else if(htim->Instance==TIM16)
578 {
579 /* USER CODE BEGIN TIM16_MspPostInit 0 */
580
581 /* USER CODE END TIM16_MspPostInit 0 */
582
583 __HAL_RCC_GPIOB_CLK_ENABLE();
584 /**TIM16 GPIO Configuration
585 PB8 ------> TIM16_CH1
586 */
587 GPIO_InitStruct.Pin = GPIO_PIN_8;
588 GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
589 GPIO_InitStruct.Pull = GPIO_NOPULL;
590 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
591 GPIO_InitStruct.Alternate = GPIO_AF14_TIM16;
592 HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
593
594 /* USER CODE BEGIN TIM16_MspPostInit 1 */
595
596 /* USER CODE END TIM16_MspPostInit 1 */
597 }
598
599 }
600 /**
601 * @brief TIM_Base MSP De-Initialization
602 * This function freeze the hardware resources used in this example
603 * @param htim_base: TIM_Base handle pointer
604 * @retval None
605 */
HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef * htim_base)606 void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef* htim_base)
607 {
608 if(htim_base->Instance==TIM1)
609 {
610 /* USER CODE BEGIN TIM1_MspDeInit 0 */
611
612 /* USER CODE END TIM1_MspDeInit 0 */
613 /* Peripheral clock disable */
614 __HAL_RCC_TIM1_CLK_DISABLE();
615 /* USER CODE BEGIN TIM1_MspDeInit 1 */
616
617 /* USER CODE END TIM1_MspDeInit 1 */
618 }
619 else if(htim_base->Instance==TIM16)
620 {
621 /* USER CODE BEGIN TIM16_MspDeInit 0 */
622
623 /* USER CODE END TIM16_MspDeInit 0 */
624 /* Peripheral clock disable */
625 __HAL_RCC_TIM16_CLK_DISABLE();
626 /* USER CODE BEGIN TIM16_MspDeInit 1 */
627
628 /* USER CODE END TIM16_MspDeInit 1 */
629 }
630
631 }
632
633 /* USER CODE BEGIN 1 */
634
635 /* USER CODE END 1 */
636