stm32f0xx_hal_msp.c


1
/* USER CODE BEGIN Header */
2
/**
3
  ******************************************************************************
4
  * @file         stm32f0xx_hal_msp.c
5
  * @brief        This file provides code for the MSP Initialization
6
  *               and de-Initialization codes.
7
  ******************************************************************************
8
  * @attention
9
  *
10
  * <h2><center>&copy; Copyright (c) 2021 STMicroelectronics.
11
  * All rights reserved.</center></h2>
12
  *
13
  * This software component is licensed by ST under Ultimate Liberty license
14
  * SLA0044, the "License"; You may not use this file except in compliance with
15
  * the License. You may obtain a copy of the License at:
16
  *                             www.st.com/SLA0044
17
  *
18
  ******************************************************************************
19
  */
20
/* USER CODE END Header */
21
22
/* Includes ------------------------------------------------------------------*/
23
#include "main.h"
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
  * Initializes the Global MSP.
63
  */
64
void HAL_MspInit(void)
65
{
66
  /* USER CODE BEGIN MspInit 0 */
67
68
  /* USER CODE END MspInit 0 */
69
70
  __HAL_RCC_SYSCFG_CLK_ENABLE();
71
  __HAL_RCC_PWR_CLK_ENABLE();
72
73
  /* System interrupt init*/
74
75
  /* USER CODE BEGIN MspInit 1 */
76
77
  /* USER CODE END MspInit 1 */
78
}
79
80
/**
81
* @brief I2C MSP Initialization
82
* This function configures the hardware resources used in this example
83
* @param hi2c: I2C handle pointer
84
* @retval None
85
*/
86
void HAL_I2C_MspInit(I2C_HandleTypeDef* hi2c)
87
{
88
  GPIO_InitTypeDef GPIO_InitStruct = {0};
89
  if(hi2c->Instance==I2C2)
90
  {
91
  /* USER CODE BEGIN I2C2_MspInit 0 */
92
93
  /* USER CODE END I2C2_MspInit 0 */
94
95
    __HAL_RCC_GPIOB_CLK_ENABLE();
96
    /**I2C2 GPIO Configuration
97
    PB10     ------> I2C2_SCL
98
    PB11     ------> I2C2_SDA
99
    */
100
    GPIO_InitStruct.Pin = I2C2_SCL_Pin|I2C2_SDA_Pin;
101
    GPIO_InitStruct.Mode = GPIO_MODE_AF_OD;
102
    GPIO_InitStruct.Pull = GPIO_PULLUP;
103
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
104
    GPIO_InitStruct.Alternate = GPIO_AF1_I2C2;
105
    HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
106
107
    /* Peripheral clock enable */
108
    __HAL_RCC_I2C2_CLK_ENABLE();
109
  /* USER CODE BEGIN I2C2_MspInit 1 */
110
111
  /* USER CODE END I2C2_MspInit 1 */
112
  }
113
114
}
115
116
/**
117
* @brief I2C MSP De-Initialization
118
* This function freeze the hardware resources used in this example
119
* @param hi2c: I2C handle pointer
120
* @retval None
121
*/
122
void HAL_I2C_MspDeInit(I2C_HandleTypeDef* hi2c)
123
{
124
  if(hi2c->Instance==I2C2)
125
  {
126
  /* USER CODE BEGIN I2C2_MspDeInit 0 */
127
128
  /* USER CODE END I2C2_MspDeInit 0 */
129
    /* Peripheral clock disable */
130
    __HAL_RCC_I2C2_CLK_DISABLE();
131
132
    /**I2C2 GPIO Configuration
133
    PB10     ------> I2C2_SCL
134
    PB11     ------> I2C2_SDA
135
    */
136
    HAL_GPIO_DeInit(I2C2_SCL_GPIO_Port, I2C2_SCL_Pin);
137
138
    HAL_GPIO_DeInit(I2C2_SDA_GPIO_Port, I2C2_SDA_Pin);
139
140
  /* USER CODE BEGIN I2C2_MspDeInit 1 */
141
142
  /* USER CODE END I2C2_MspDeInit 1 */
143
  }
144
145
}
146
147
/**
148
* @brief SPI MSP Initialization
149
* This function configures the hardware resources used in this example
150
* @param hspi: SPI handle pointer
151
* @retval None
152
*/
153
void HAL_SPI_MspInit(SPI_HandleTypeDef* hspi)
154
{
155
  GPIO_InitTypeDef GPIO_InitStruct = {0};
156
  if(hspi->Instance==SPI2)
157
  {
158
  /* USER CODE BEGIN SPI2_MspInit 0 */
159
160
  /* USER CODE END SPI2_MspInit 0 */
161
    /* Peripheral clock enable */
162
    __HAL_RCC_SPI2_CLK_ENABLE();
163
164
    __HAL_RCC_GPIOB_CLK_ENABLE();
165
    /**SPI2 GPIO Configuration
166
    PB13     ------> SPI2_SCK
167
    PB14     ------> SPI2_MISO
168
    PB15     ------> SPI2_MOSI
169
    */
170
    GPIO_InitStruct.Pin = SPI2_SCK_Pin|SPI2_MISO_Pin|SPI2_MOSI_Pin;
171
    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
172
    GPIO_InitStruct.Pull = GPIO_NOPULL;
173
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
174
    GPIO_InitStruct.Alternate = GPIO_AF0_SPI2;
175
    HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
176
177
  /* USER CODE BEGIN SPI2_MspInit 1 */
178
179
  /* USER CODE END SPI2_MspInit 1 */
180
  }
181
182
}
183
184
/**
185
* @brief SPI MSP De-Initialization
186
* This function freeze the hardware resources used in this example
187
* @param hspi: SPI handle pointer
188
* @retval None
189
*/
190
void HAL_SPI_MspDeInit(SPI_HandleTypeDef* hspi)
191
{
192
  if(hspi->Instance==SPI2)
193
  {
194
  /* USER CODE BEGIN SPI2_MspDeInit 0 */
195
196
  /* USER CODE END SPI2_MspDeInit 0 */
197
    /* Peripheral clock disable */
198
    __HAL_RCC_SPI2_CLK_DISABLE();
199
200
    /**SPI2 GPIO Configuration
201
    PB13     ------> SPI2_SCK
202
    PB14     ------> SPI2_MISO
203
    PB15     ------> SPI2_MOSI
204
    */
205
    HAL_GPIO_DeInit(GPIOB, SPI2_SCK_Pin|SPI2_MISO_Pin|SPI2_MOSI_Pin);
206
207
  /* USER CODE BEGIN SPI2_MspDeInit 1 */
208
209
  /* USER CODE END SPI2_MspDeInit 1 */
210
  }
211
212
}
213
214
/**
215
* @brief TIM_Base MSP Initialization
216
* This function configures the hardware resources used in this example
217
* @param htim_base: TIM_Base handle pointer
218
* @retval None
219
*/
220
void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* htim_base)
221
{
222
  if(htim_base->Instance==TIM3)
223
  {
224
  /* USER CODE BEGIN TIM3_MspInit 0 */
225
226
  /* USER CODE END TIM3_MspInit 0 */
227
    /* Peripheral clock enable */
228
    __HAL_RCC_TIM3_CLK_ENABLE();
229
    /* TIM3 interrupt Init */
230
    HAL_NVIC_SetPriority(TIM3_IRQn, 0, 0);
231
    HAL_NVIC_EnableIRQ(TIM3_IRQn);
232
  /* USER CODE BEGIN TIM3_MspInit 1 */
233
234
  /* USER CODE END TIM3_MspInit 1 */
235
  }
236
237
}
238
239
/**
240
* @brief TIM_Base MSP De-Initialization
241
* This function freeze the hardware resources used in this example
242
* @param htim_base: TIM_Base handle pointer
243
* @retval None
244
*/
245
void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef* htim_base)
246
{
247
  if(htim_base->Instance==TIM3)
248
  {
249
  /* USER CODE BEGIN TIM3_MspDeInit 0 */
250
251
  /* USER CODE END TIM3_MspDeInit 0 */
252
    /* Peripheral clock disable */
253
    __HAL_RCC_TIM3_CLK_DISABLE();
254
255
    /* TIM3 interrupt DeInit */
256
    HAL_NVIC_DisableIRQ(TIM3_IRQn);
257
  /* USER CODE BEGIN TIM3_MspDeInit 1 */
258
259
  /* USER CODE END TIM3_MspDeInit 1 */
260
  }
261
262
}
263
264
/**
265
* @brief TSC MSP Initialization
266
* This function configures the hardware resources used in this example
267
* @param htsc: TSC handle pointer
268
* @retval None
269
*/
270
void HAL_TSC_MspInit(TSC_HandleTypeDef* htsc)
271
{
272
  GPIO_InitTypeDef GPIO_InitStruct = {0};
273
  if(htsc->Instance==TSC)
274
  {
275
  /* USER CODE BEGIN TSC_MspInit 0 */
276
277
  /* USER CODE END TSC_MspInit 0 */
278
    /* Peripheral clock enable */
279
    __HAL_RCC_TSC_CLK_ENABLE();
280
281
    __HAL_RCC_GPIOA_CLK_ENABLE();
282
    __HAL_RCC_GPIOB_CLK_ENABLE();
283
    /**TSC GPIO Configuration
284
    PA2     ------> TSC_G1_IO3
285
    PA3     ------> TSC_G1_IO4
286
    PA6     ------> TSC_G2_IO3
287
    PA7     ------> TSC_G2_IO4
288
    PB0     ------> TSC_G3_IO2
289
    PB1     ------> TSC_G3_IO3
290
    */
291
    GPIO_InitStruct.Pin = GPIO_PIN_2|GPIO_PIN_6;
292
    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
293
    GPIO_InitStruct.Pull = GPIO_NOPULL;
294
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
295
    GPIO_InitStruct.Alternate = GPIO_AF3_TSC;
296
    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
297
298
    GPIO_InitStruct.Pin = GPIO_PIN_3|GPIO_PIN_7;
299
    GPIO_InitStruct.Mode = GPIO_MODE_AF_OD;
300
    GPIO_InitStruct.Pull = GPIO_NOPULL;
301
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
302
    GPIO_InitStruct.Alternate = GPIO_AF3_TSC;
303
    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
304
305
    GPIO_InitStruct.Pin = GPIO_PIN_0;
306
    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
307
    GPIO_InitStruct.Pull = GPIO_NOPULL;
308
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
309
    GPIO_InitStruct.Alternate = GPIO_AF3_TSC;
310
    HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
311
312
    GPIO_InitStruct.Pin = GPIO_PIN_1;
313
    GPIO_InitStruct.Mode = GPIO_MODE_AF_OD;
314
    GPIO_InitStruct.Pull = GPIO_NOPULL;
315
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
316
    GPIO_InitStruct.Alternate = GPIO_AF3_TSC;
317
    HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
318
319
  /* USER CODE BEGIN TSC_MspInit 1 */
320
321
  /* USER CODE END TSC_MspInit 1 */
322
  }
323
324
}
325
326
/**
327
* @brief TSC MSP De-Initialization
328
* This function freeze the hardware resources used in this example
329
* @param htsc: TSC handle pointer
330
* @retval None
331
*/
332
void HAL_TSC_MspDeInit(TSC_HandleTypeDef* htsc)
333
{
334
  if(htsc->Instance==TSC)
335
  {
336
  /* USER CODE BEGIN TSC_MspDeInit 0 */
337
338
  /* USER CODE END TSC_MspDeInit 0 */
339
    /* Peripheral clock disable */
340
    __HAL_RCC_TSC_CLK_DISABLE();
341
342
    /**TSC GPIO Configuration
343
    PA2     ------> TSC_G1_IO3
344
    PA3     ------> TSC_G1_IO4
345
    PA6     ------> TSC_G2_IO3
346
    PA7     ------> TSC_G2_IO4
347
    PB0     ------> TSC_G3_IO2
348
    PB1     ------> TSC_G3_IO3
349
    */
350
    HAL_GPIO_DeInit(GPIOA, GPIO_PIN_2|GPIO_PIN_3|GPIO_PIN_6|GPIO_PIN_7);
351
352
    HAL_GPIO_DeInit(GPIOB, GPIO_PIN_0|GPIO_PIN_1);
353
354
  /* USER CODE BEGIN TSC_MspDeInit 1 */
355
356
  /* USER CODE END TSC_MspDeInit 1 */
357
  }
358
359
}
360
361
/* USER CODE BEGIN 1 */
362
363
/* USER CODE END 1 */
364
365
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/