STM32F103ZET6 USART2 PD5、PD6程序编写
时间: 2024-05-09 18:16:00 浏览: 137
STM32F103编写的基本程序,可以参考一下使用,因为每一个人用的端口不一样,所以需要自己修改
5星 · 资源好评率100%
以下是基于STM32CubeMX和HAL库的USART2 PD5和PD6的初始化和发送接收程序示例:
初始化代码:
```c
/* USART2 init function */
void MX_USART2_UART_Init(void)
{
huart2.Instance = USART2;
huart2.Init.BaudRate = 115200;
huart2.Init.WordLength = UART_WORDLENGTH_8B;
huart2.Init.StopBits = UART_STOPBITS_1;
huart2.Init.Parity = UART_PARITY_NONE;
huart2.Init.Mode = UART_MODE_TX_RX;
huart2.Init.HwFlowCtl = UART_HWCONTROL_NONE;
huart2.Init.OverSampling = UART_OVERSAMPLING_16;
if (HAL_UART_Init(&huart2) != HAL_OK)
{
Error_Handler();
}
}
```
发送代码:
```c
/* USART2 send string function */
void USART2_SendString(char *str)
{
HAL_UART_Transmit(&huart2, (uint8_t *)str, strlen(str), 1000);
}
```
接收代码:
```c
/* USART2 receive string function */
void USART2_ReceiveString(char *str)
{
HAL_UART_Receive(&huart2, (uint8_t *)str, 1, 1000);
}
```
其中,`haut2` 是 `USART_HandleTypeDef` 结构体类型的变量,需要在主函数中进行定义。在发送和接收函数中,需要传递一个指向字符串的指针参数。串口通信时,发送方和接收方需要使用相同的波特率、数据位、停止位和校验方式,才能正确地进行通信。
阅读全文