Subversion Repositories canSerial

Rev

Rev 2 | 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 Name          : stm32f1xx_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>&copy; Copyright (c) 2022 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"
3 mjames 24
 
2 mjames 25
/* USER CODE BEGIN Includes */
26
 
27
/* USER CODE END Includes */
28
 
29
/* Private typedef -----------------------------------------------------------*/
30
/* USER CODE BEGIN TD */
31
 
32
/* USER CODE END TD */
33
 
34
/* Private define ------------------------------------------------------------*/
35
/* USER CODE BEGIN Define */
36
 
37
/* USER CODE END Define */
38
 
39
/* Private macro -------------------------------------------------------------*/
40
/* USER CODE BEGIN Macro */
41
 
42
/* USER CODE END Macro */
43
 
44
/* Private variables ---------------------------------------------------------*/
45
/* USER CODE BEGIN PV */
46
 
47
/* USER CODE END PV */
48
 
49
/* Private function prototypes -----------------------------------------------*/
50
/* USER CODE BEGIN PFP */
51
 
52
/* USER CODE END PFP */
53
 
54
/* External functions --------------------------------------------------------*/
55
/* USER CODE BEGIN ExternalFunctions */
56
 
57
/* USER CODE END ExternalFunctions */
58
 
59
/* USER CODE BEGIN 0 */
60
 
61
/* USER CODE END 0 */
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
    /* CAN1 interrupt Init */
118
    HAL_NVIC_SetPriority(USB_HP_CAN1_TX_IRQn, 0, 0);
119
    HAL_NVIC_EnableIRQ(USB_HP_CAN1_TX_IRQn);
120
    HAL_NVIC_SetPriority(USB_LP_CAN1_RX0_IRQn, 0, 0);
121
    HAL_NVIC_EnableIRQ(USB_LP_CAN1_RX0_IRQn);
122
    HAL_NVIC_SetPriority(CAN1_RX1_IRQn, 0, 0);
123
    HAL_NVIC_EnableIRQ(CAN1_RX1_IRQn);
124
  /* USER CODE BEGIN CAN1_MspInit 1 */
125
 
126
  /* USER CODE END CAN1_MspInit 1 */
127
  }
128
 
129
}
130
 
131
/**
132
* @brief CAN MSP De-Initialization
133
* This function freeze the hardware resources used in this example
134
* @param hcan: CAN handle pointer
135
* @retval None
136
*/
137
void HAL_CAN_MspDeInit(CAN_HandleTypeDef* hcan)
138
{
139
  if(hcan->Instance==CAN1)
140
  {
141
  /* USER CODE BEGIN CAN1_MspDeInit 0 */
142
 
143
  /* USER CODE END CAN1_MspDeInit 0 */
144
    /* Peripheral clock disable */
145
    __HAL_RCC_CAN1_CLK_DISABLE();
146
 
147
    /**CAN GPIO Configuration
148
    PA11     ------> CAN_RX
149
    PA12     ------> CAN_TX
150
    */
151
    HAL_GPIO_DeInit(GPIOA, GPIO_PIN_11|GPIO_PIN_12);
152
 
153
    /* CAN1 interrupt DeInit */
154
    HAL_NVIC_DisableIRQ(USB_HP_CAN1_TX_IRQn);
155
    HAL_NVIC_DisableIRQ(USB_LP_CAN1_RX0_IRQn);
156
    HAL_NVIC_DisableIRQ(CAN1_RX1_IRQn);
157
  /* USER CODE BEGIN CAN1_MspDeInit 1 */
158
 
159
  /* USER CODE END CAN1_MspDeInit 1 */
160
  }
161
 
162
}
163
 
164
/**
3 mjames 165
* @brief SPI MSP Initialization
166
* This function configures the hardware resources used in this example
167
* @param hspi: SPI handle pointer
168
* @retval None
169
*/
170
void HAL_SPI_MspInit(SPI_HandleTypeDef* hspi)
171
{
172
  GPIO_InitTypeDef GPIO_InitStruct = {0};
173
  if(hspi->Instance==SPI1)
174
  {
175
  /* USER CODE BEGIN SPI1_MspInit 0 */
176
 
177
  /* USER CODE END SPI1_MspInit 0 */
178
    /* Peripheral clock enable */
179
    __HAL_RCC_SPI1_CLK_ENABLE();
180
 
181
    __HAL_RCC_GPIOA_CLK_ENABLE();
182
    /**SPI1 GPIO Configuration
183
    PA5     ------> SPI1_SCK
184
    PA7     ------> SPI1_MOSI
185
    */
186
    GPIO_InitStruct.Pin = GPIO_PIN_5|GPIO_PIN_7;
187
    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
188
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
189
    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
190
 
191
  /* USER CODE BEGIN SPI1_MspInit 1 */
192
 
193
  /* USER CODE END SPI1_MspInit 1 */
194
  }
195
 
196
}
197
 
198
/**
199
* @brief SPI MSP De-Initialization
200
* This function freeze the hardware resources used in this example
201
* @param hspi: SPI handle pointer
202
* @retval None
203
*/
204
void HAL_SPI_MspDeInit(SPI_HandleTypeDef* hspi)
205
{
206
  if(hspi->Instance==SPI1)
207
  {
208
  /* USER CODE BEGIN SPI1_MspDeInit 0 */
209
 
210
  /* USER CODE END SPI1_MspDeInit 0 */
211
    /* Peripheral clock disable */
212
    __HAL_RCC_SPI1_CLK_DISABLE();
213
 
214
    /**SPI1 GPIO Configuration
215
    PA5     ------> SPI1_SCK
216
    PA7     ------> SPI1_MOSI
217
    */
218
    HAL_GPIO_DeInit(GPIOA, GPIO_PIN_5|GPIO_PIN_7);
219
 
220
  /* USER CODE BEGIN SPI1_MspDeInit 1 */
221
 
222
  /* USER CODE END SPI1_MspDeInit 1 */
223
  }
224
 
225
}
226
 
227
/**
2 mjames 228
* @brief UART MSP Initialization
229
* This function configures the hardware resources used in this example
230
* @param huart: UART handle pointer
231
* @retval None
232
*/
233
void HAL_UART_MspInit(UART_HandleTypeDef* huart)
234
{
235
  GPIO_InitTypeDef GPIO_InitStruct = {0};
236
  if(huart->Instance==USART1)
237
  {
238
  /* USER CODE BEGIN USART1_MspInit 0 */
239
 
240
  /* USER CODE END USART1_MspInit 0 */
241
    /* Peripheral clock enable */
242
    __HAL_RCC_USART1_CLK_ENABLE();
243
 
244
    __HAL_RCC_GPIOA_CLK_ENABLE();
245
    /**USART1 GPIO Configuration
246
    PA9     ------> USART1_TX
247
    PA10     ------> USART1_RX
248
    */
249
    GPIO_InitStruct.Pin = GPIO_PIN_9;
250
    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
251
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
252
    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
253
 
254
    GPIO_InitStruct.Pin = GPIO_PIN_10;
255
    GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
256
    GPIO_InitStruct.Pull = GPIO_NOPULL;
257
    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
258
 
259
    /* USART1 interrupt Init */
260
    HAL_NVIC_SetPriority(USART1_IRQn, 0, 0);
261
    HAL_NVIC_EnableIRQ(USART1_IRQn);
262
  /* USER CODE BEGIN USART1_MspInit 1 */
263
 
264
  /* USER CODE END USART1_MspInit 1 */
265
  }
266
 
267
}
268
 
269
/**
270
* @brief UART MSP De-Initialization
271
* This function freeze the hardware resources used in this example
272
* @param huart: UART handle pointer
273
* @retval None
274
*/
275
void HAL_UART_MspDeInit(UART_HandleTypeDef* huart)
276
{
277
  if(huart->Instance==USART1)
278
  {
279
  /* USER CODE BEGIN USART1_MspDeInit 0 */
280
 
281
  /* USER CODE END USART1_MspDeInit 0 */
282
    /* Peripheral clock disable */
283
    __HAL_RCC_USART1_CLK_DISABLE();
284
 
285
    /**USART1 GPIO Configuration
286
    PA9     ------> USART1_TX
287
    PA10     ------> USART1_RX
288
    */
289
    HAL_GPIO_DeInit(GPIOA, GPIO_PIN_9|GPIO_PIN_10);
290
 
291
    /* USART1 interrupt DeInit */
292
    HAL_NVIC_DisableIRQ(USART1_IRQn);
293
  /* USER CODE BEGIN USART1_MspDeInit 1 */
294
 
295
  /* USER CODE END USART1_MspDeInit 1 */
296
  }
297
 
298
}
299
 
300
/* USER CODE BEGIN 1 */
301
 
302
/* USER CODE END 1 */