Subversion Repositories EDIS_Ignition

Rev

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