Subversion Repositories EDIS_Ignition

Rev

Rev 5 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 mjames 1
/* USER CODE BEGIN Header */
2
/**
3
  ******************************************************************************
4
  * @file         stm32f1xx_hal_msp.c
5
  * @brief        This file provides code for the MSP Initialization
6
  *               and de-Initialization codes.
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
 
21
/* Includes ------------------------------------------------------------------*/
22
#include "main.h"
18 mjames 23
 
2 mjames 24
/* USER CODE BEGIN Includes */
25
 
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
  */
66
void HAL_MspInit(void)
67
{
68
  /* USER CODE BEGIN MspInit 0 */
69
 
70
  /* USER CODE END MspInit 0 */
71
 
72
  __HAL_RCC_AFIO_CLK_ENABLE();
73
  __HAL_RCC_PWR_CLK_ENABLE();
74
 
75
  /* System interrupt init*/
76
 
77
  /** NOJTAG: JTAG-DP Disabled and SW-DP Enabled
78
  */
79
  __HAL_AFIO_REMAP_SWJ_NOJTAG();
80
 
81
  /* USER CODE BEGIN MspInit 1 */
82
 
83
  /* USER CODE END MspInit 1 */
84
}
85
 
86
/**
87
* @brief CAN MSP Initialization
88
* This function configures the hardware resources used in this example
89
* @param hcan: CAN handle pointer
90
* @retval None
91
*/
92
void HAL_CAN_MspInit(CAN_HandleTypeDef* hcan)
93
{
94
  GPIO_InitTypeDef GPIO_InitStruct = {0};
95
  if(hcan->Instance==CAN1)
96
  {
97
  /* USER CODE BEGIN CAN1_MspInit 0 */
98
 
99
  /* USER CODE END CAN1_MspInit 0 */
100
    /* Peripheral clock enable */
101
    __HAL_RCC_CAN1_CLK_ENABLE();
102
 
103
    __HAL_RCC_GPIOA_CLK_ENABLE();
104
    /**CAN GPIO Configuration
105
    PA11     ------> CAN_RX
106
    PA12     ------> CAN_TX
107
    */
108
    GPIO_InitStruct.Pin = GPIO_PIN_11;
109
    GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
110
    GPIO_InitStruct.Pull = GPIO_NOPULL;
111
    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
112
 
113
    GPIO_InitStruct.Pin = GPIO_PIN_12;
114
    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
115
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
116
    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
117
 
118
  /* USER CODE BEGIN CAN1_MspInit 1 */
119
 
120
  /* USER CODE END CAN1_MspInit 1 */
121
  }
122
 
123
}
124
 
125
/**
126
* @brief CAN MSP De-Initialization
127
* This function freeze the hardware resources used in this example
128
* @param hcan: CAN handle pointer
129
* @retval None
130
*/
131
void HAL_CAN_MspDeInit(CAN_HandleTypeDef* hcan)
132
{
133
  if(hcan->Instance==CAN1)
134
  {
135
  /* USER CODE BEGIN CAN1_MspDeInit 0 */
136
 
137
  /* USER CODE END CAN1_MspDeInit 0 */
138
    /* Peripheral clock disable */
139
    __HAL_RCC_CAN1_CLK_DISABLE();
140
 
141
    /**CAN GPIO Configuration
142
    PA11     ------> CAN_RX
143
    PA12     ------> CAN_TX
144
    */
145
    HAL_GPIO_DeInit(GPIOA, GPIO_PIN_11|GPIO_PIN_12);
146
 
147
  /* USER CODE BEGIN CAN1_MspDeInit 1 */
148
 
149
  /* USER CODE END CAN1_MspDeInit 1 */
150
  }
151
 
152
}
153
 
154
/**
155
* @brief I2C MSP Initialization
156
* This function configures the hardware resources used in this example
157
* @param hi2c: I2C handle pointer
158
* @retval None
159
*/
160
void HAL_I2C_MspInit(I2C_HandleTypeDef* hi2c)
161
{
162
  GPIO_InitTypeDef GPIO_InitStruct = {0};
163
  if(hi2c->Instance==I2C1)
164
  {
165
  /* USER CODE BEGIN I2C1_MspInit 0 */
166
 
167
  /* USER CODE END I2C1_MspInit 0 */
168
 
169
    __HAL_RCC_GPIOB_CLK_ENABLE();
170
    /**I2C1 GPIO Configuration
171
    PB6     ------> I2C1_SCL
172
    PB7     ------> I2C1_SDA
173
    */
174
    GPIO_InitStruct.Pin = GPIO_PIN_6|GPIO_PIN_7;
175
    GPIO_InitStruct.Mode = GPIO_MODE_AF_OD;
3 mjames 176
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
2 mjames 177
    HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
178
 
179
    /* Peripheral clock enable */
180
    __HAL_RCC_I2C1_CLK_ENABLE();
181
  /* USER CODE BEGIN I2C1_MspInit 1 */
182
 
183
  /* USER CODE END I2C1_MspInit 1 */
184
  }
185
 
186
}
187
 
188
/**
189
* @brief I2C MSP De-Initialization
190
* This function freeze the hardware resources used in this example
191
* @param hi2c: I2C handle pointer
192
* @retval None
193
*/
194
void HAL_I2C_MspDeInit(I2C_HandleTypeDef* hi2c)
195
{
196
  if(hi2c->Instance==I2C1)
197
  {
198
  /* USER CODE BEGIN I2C1_MspDeInit 0 */
199
 
200
  /* USER CODE END I2C1_MspDeInit 0 */
201
    /* Peripheral clock disable */
202
    __HAL_RCC_I2C1_CLK_DISABLE();
203
 
204
    /**I2C1 GPIO Configuration
205
    PB6     ------> I2C1_SCL
206
    PB7     ------> I2C1_SDA
207
    */
208
    HAL_GPIO_DeInit(GPIOB, GPIO_PIN_6);
209
 
210
    HAL_GPIO_DeInit(GPIOB, GPIO_PIN_7);
211
 
212
  /* USER CODE BEGIN I2C1_MspDeInit 1 */
213
 
214
  /* USER CODE END I2C1_MspDeInit 1 */
215
  }
216
 
217
}
218
 
219
/**
220
* @brief SPI MSP Initialization
221
* This function configures the hardware resources used in this example
222
* @param hspi: SPI handle pointer
223
* @retval None
224
*/
225
void HAL_SPI_MspInit(SPI_HandleTypeDef* hspi)
226
{
227
  GPIO_InitTypeDef GPIO_InitStruct = {0};
228
  if(hspi->Instance==SPI1)
229
  {
230
  /* USER CODE BEGIN SPI1_MspInit 0 */
231
 
232
  /* USER CODE END SPI1_MspInit 0 */
233
    /* Peripheral clock enable */
234
    __HAL_RCC_SPI1_CLK_ENABLE();
235
 
236
    __HAL_RCC_GPIOA_CLK_ENABLE();
237
    /**SPI1 GPIO Configuration
238
    PA5     ------> SPI1_SCK
239
    PA7     ------> SPI1_MOSI
240
    */
241
    GPIO_InitStruct.Pin = GPIO_PIN_5|GPIO_PIN_7;
242
    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
243
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
244
    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
245
 
246
  /* USER CODE BEGIN SPI1_MspInit 1 */
247
 
248
  /* USER CODE END SPI1_MspInit 1 */
249
  }
250
 
251
}
252
 
253
/**
254
* @brief SPI MSP De-Initialization
255
* This function freeze the hardware resources used in this example
256
* @param hspi: SPI handle pointer
257
* @retval None
258
*/
259
void HAL_SPI_MspDeInit(SPI_HandleTypeDef* hspi)
260
{
261
  if(hspi->Instance==SPI1)
262
  {
263
  /* USER CODE BEGIN SPI1_MspDeInit 0 */
264
 
265
  /* USER CODE END SPI1_MspDeInit 0 */
266
    /* Peripheral clock disable */
267
    __HAL_RCC_SPI1_CLK_DISABLE();
268
 
269
    /**SPI1 GPIO Configuration
270
    PA5     ------> SPI1_SCK
271
    PA7     ------> SPI1_MOSI
272
    */
273
    HAL_GPIO_DeInit(GPIOA, GPIO_PIN_5|GPIO_PIN_7);
274
 
275
  /* USER CODE BEGIN SPI1_MspDeInit 1 */
276
 
277
  /* USER CODE END SPI1_MspDeInit 1 */
278
  }
279
 
280
}
281
 
282
/**
283
* @brief TIM_Base MSP Initialization
284
* This function configures the hardware resources used in this example
285
* @param htim_base: TIM_Base handle pointer
286
* @retval None
287
*/
288
void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* htim_base)
289
{
290
  GPIO_InitTypeDef GPIO_InitStruct = {0};
291
  if(htim_base->Instance==TIM1)
292
  {
293
  /* USER CODE BEGIN TIM1_MspInit 0 */
294
 
295
  /* USER CODE END TIM1_MspInit 0 */
296
    /* Peripheral clock enable */
297
    __HAL_RCC_TIM1_CLK_ENABLE();
298
  /* USER CODE BEGIN TIM1_MspInit 1 */
299
 
300
  /* USER CODE END TIM1_MspInit 1 */
301
  }
302
  else if(htim_base->Instance==TIM2)
303
  {
304
  /* USER CODE BEGIN TIM2_MspInit 0 */
305
 
306
  /* USER CODE END TIM2_MspInit 0 */
307
    /* Peripheral clock enable */
308
    __HAL_RCC_TIM2_CLK_ENABLE();
309
 
310
    __HAL_RCC_GPIOA_CLK_ENABLE();
311
    /**TIM2 GPIO Configuration
5 mjames 312
    PA0-WKUP     ------> TIM2_CH1
2 mjames 313
    */
4 mjames 314
    GPIO_InitStruct.Pin = PIP_Pin;
2 mjames 315
    GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
316
    GPIO_InitStruct.Pull = GPIO_NOPULL;
4 mjames 317
    HAL_GPIO_Init(PIP_GPIO_Port, &GPIO_InitStruct);
2 mjames 318
 
319
    /* TIM2 interrupt Init */
320
    HAL_NVIC_SetPriority(TIM2_IRQn, 0, 0);
321
    HAL_NVIC_EnableIRQ(TIM2_IRQn);
322
  /* USER CODE BEGIN TIM2_MspInit 1 */
323
 
324
  /* USER CODE END TIM2_MspInit 1 */
325
  }
326
  else if(htim_base->Instance==TIM3)
327
  {
328
  /* USER CODE BEGIN TIM3_MspInit 0 */
329
 
330
  /* USER CODE END TIM3_MspInit 0 */
331
    /* Peripheral clock enable */
332
    __HAL_RCC_TIM3_CLK_ENABLE();
333
    /* TIM3 interrupt Init */
334
    HAL_NVIC_SetPriority(TIM3_IRQn, 0, 0);
335
    HAL_NVIC_EnableIRQ(TIM3_IRQn);
336
  /* USER CODE BEGIN TIM3_MspInit 1 */
337
 
338
  /* USER CODE END TIM3_MspInit 1 */
339
  }
340
 
341
}
342
 
343
void HAL_TIM_MspPostInit(TIM_HandleTypeDef* htim)
344
{
345
  GPIO_InitTypeDef GPIO_InitStruct = {0};
346
  if(htim->Instance==TIM1)
347
  {
348
  /* USER CODE BEGIN TIM1_MspPostInit 0 */
349
 
350
  /* USER CODE END TIM1_MspPostInit 0 */
351
 
352
    __HAL_RCC_GPIOA_CLK_ENABLE();
353
    /**TIM1 GPIO Configuration
354
    PA8     ------> TIM1_CH1
355
    */
4 mjames 356
    GPIO_InitStruct.Pin = SAW_Pin;
2 mjames 357
    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
358
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
4 mjames 359
    HAL_GPIO_Init(SAW_GPIO_Port, &GPIO_InitStruct);
2 mjames 360
 
361
  /* USER CODE BEGIN TIM1_MspPostInit 1 */
362
 
363
  /* USER CODE END TIM1_MspPostInit 1 */
364
  }
365
 
366
}
367
/**
368
* @brief TIM_Base MSP De-Initialization
369
* This function freeze the hardware resources used in this example
370
* @param htim_base: TIM_Base handle pointer
371
* @retval None
372
*/
373
void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef* htim_base)
374
{
375
  if(htim_base->Instance==TIM1)
376
  {
377
  /* USER CODE BEGIN TIM1_MspDeInit 0 */
378
 
379
  /* USER CODE END TIM1_MspDeInit 0 */
380
    /* Peripheral clock disable */
381
    __HAL_RCC_TIM1_CLK_DISABLE();
382
  /* USER CODE BEGIN TIM1_MspDeInit 1 */
383
 
384
  /* USER CODE END TIM1_MspDeInit 1 */
385
  }
386
  else if(htim_base->Instance==TIM2)
387
  {
388
  /* USER CODE BEGIN TIM2_MspDeInit 0 */
389
 
390
  /* USER CODE END TIM2_MspDeInit 0 */
391
    /* Peripheral clock disable */
392
    __HAL_RCC_TIM2_CLK_DISABLE();
393
 
394
    /**TIM2 GPIO Configuration
5 mjames 395
    PA0-WKUP     ------> TIM2_CH1
2 mjames 396
    */
4 mjames 397
    HAL_GPIO_DeInit(PIP_GPIO_Port, PIP_Pin);
2 mjames 398
 
399
    /* TIM2 interrupt DeInit */
400
    HAL_NVIC_DisableIRQ(TIM2_IRQn);
401
  /* USER CODE BEGIN TIM2_MspDeInit 1 */
402
 
403
  /* USER CODE END TIM2_MspDeInit 1 */
404
  }
405
  else if(htim_base->Instance==TIM3)
406
  {
407
  /* USER CODE BEGIN TIM3_MspDeInit 0 */
408
 
409
  /* USER CODE END TIM3_MspDeInit 0 */
410
    /* Peripheral clock disable */
411
    __HAL_RCC_TIM3_CLK_DISABLE();
412
 
413
    /* TIM3 interrupt DeInit */
414
    HAL_NVIC_DisableIRQ(TIM3_IRQn);
415
  /* USER CODE BEGIN TIM3_MspDeInit 1 */
416
 
417
  /* USER CODE END TIM3_MspDeInit 1 */
418
  }
419
 
420
}
421
 
422
/**
423
* @brief UART MSP Initialization
424
* This function configures the hardware resources used in this example
425
* @param huart: UART handle pointer
426
* @retval None
427
*/
428
void HAL_UART_MspInit(UART_HandleTypeDef* huart)
429
{
430
  GPIO_InitTypeDef GPIO_InitStruct = {0};
431
  if(huart->Instance==USART2)
432
  {
433
  /* USER CODE BEGIN USART2_MspInit 0 */
434
 
435
  /* USER CODE END USART2_MspInit 0 */
436
    /* Peripheral clock enable */
437
    __HAL_RCC_USART2_CLK_ENABLE();
438
 
439
    __HAL_RCC_GPIOA_CLK_ENABLE();
440
    /**USART2 GPIO Configuration
441
    PA2     ------> USART2_TX
442
    PA3     ------> USART2_RX
443
    */
444
    GPIO_InitStruct.Pin = GPIO_PIN_2;
445
    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
446
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
447
    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
448
 
449
    GPIO_InitStruct.Pin = GPIO_PIN_3;
450
    GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
451
    GPIO_InitStruct.Pull = GPIO_NOPULL;
452
    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
453
 
5 mjames 454
    /* USART2 interrupt Init */
455
    HAL_NVIC_SetPriority(USART2_IRQn, 0, 0);
456
    HAL_NVIC_EnableIRQ(USART2_IRQn);
2 mjames 457
  /* USER CODE BEGIN USART2_MspInit 1 */
458
 
459
  /* USER CODE END USART2_MspInit 1 */
460
  }
461
 
462
}
463
 
464
/**
465
* @brief UART MSP De-Initialization
466
* This function freeze the hardware resources used in this example
467
* @param huart: UART handle pointer
468
* @retval None
469
*/
470
void HAL_UART_MspDeInit(UART_HandleTypeDef* huart)
471
{
472
  if(huart->Instance==USART2)
473
  {
474
  /* USER CODE BEGIN USART2_MspDeInit 0 */
475
 
476
  /* USER CODE END USART2_MspDeInit 0 */
477
    /* Peripheral clock disable */
478
    __HAL_RCC_USART2_CLK_DISABLE();
479
 
480
    /**USART2 GPIO Configuration
481
    PA2     ------> USART2_TX
482
    PA3     ------> USART2_RX
483
    */
484
    HAL_GPIO_DeInit(GPIOA, GPIO_PIN_2|GPIO_PIN_3);
485
 
5 mjames 486
    /* USART2 interrupt DeInit */
487
    HAL_NVIC_DisableIRQ(USART2_IRQn);
2 mjames 488
  /* USER CODE BEGIN USART2_MspDeInit 1 */
489
 
490
  /* USER CODE END USART2_MspDeInit 1 */
491
  }
492
 
493
}
494
 
495
/* USER CODE BEGIN 1 */
496
 
497
/* USER CODE END 1 */