๋ฉ๋ชจ๋ฆฌ์ ์ง์ ์ ๊ทผํ๋ ๊ธฐ์
CPU์ ๊ฐ์
์์ด I/O ์ฅ์น์ ๋ฉ๋ชจ๋ฆฌ ๊ฐ์ ๋ฐ์ดํฐ ์ ์ก์ ํ์ฉํ๋ ๊ธฐ์
CPU๊ฐ ๋ค๋ฅธ ์์
์ ์ํํ๋ ๋์์๋ I/O ์ฅ์น์์ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ ์ ์์ผ๋ฏ๋ก ์์คํ
์ฑ๋ฅ ํฅ์๋จ
timers, ADC, SPIs. I2Cs, USARTs ์์ ์ฌ์ฉ๋๋ค.
๋ฐ๋ผ์ ์ ๊ธฐ๋ฅ๋ค์ ์ฌ์ฉํ ๋๋ MSP Init์ ํด์ค์ผ ํจ.
์๋ ์์์ฝ๋๋ฅผ ๋ณด๋ฉด
UART_MSPInit ํจ์๋ฅผ ์ฌ์ฉํ๋ค.
(์ฃผ์ํ ์ ์ ํ๋จ์ __HAL_UART_ENABLE_IT(&huart1, UART_IT_RXNE); ๊ฐ ์์จ์ ธ ์๋ค. ์จ์ค์ผ UART์ ๋์์ด ์ ์์ ์ผ๋ก ๊ตฌํ๋๋ค)
void HAL_UART_MspInit(UART_HandleTypeDef* huart)
{
GPIO_InitTypeDef GPIO_InitStruct = {0};
if(huart->Instance==USART1)
{
/* USER CODE BEGIN USART1_MspInit 0 */
/* USER CODE END USART1_MspInit 0 */
/* Peripheral clock enable */
__HAL_RCC_USART1_CLK_ENABLE();
__HAL_RCC_GPIOA_CLK_ENABLE();
/**USART1 GPIO Configuration
PA9 ------> USART1_TX
PA10 ------> USART1_RX
*/
GPIO_InitStruct.Pin = GPIO_PIN_9;
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
GPIO_InitStruct.Pin = GPIO_PIN_10;
GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
GPIO_InitStruct.Pull = GPIO_NOPULL;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
/* USER CODE BEGIN USART1_MspInit 1 */
__HAL_UART_ENABLE_IT(&huart1, UART_IT_RXNE);
/* USER CODE END USART1_MspInit 1 */
}
}'F๐ปW > ๊ทธ ์ธ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| STM32 Clock Configuration System Clock ์ค์ (0) | 2023.06.30 |
|---|---|
| GPIO MODE์ ์ข ๋ฅ์ ์ค๋ช (0) | 2023.06.26 |
| IAR ํ๋ก์ ํธ ์์ฑ ํ ์ด๊ธฐ ์ค์ (0) | 2023.02.21 |
| NXP์ฌ NCF3320์ ํ ์กฐ์ฌ (0) | 2022.10.24 |
| RFID ์์คํ ์ ๋ฆฌ (0) | 2022.10.07 |
| ๋๊ธฐ / ๋น๋๊ธฐ / UART / I2C / I2S / SPI (2) | 2022.10.06 |