1.问题描述:
使用串口的空闲中断和接收中断进行串口数据的不定长接收
2.测试平台:
(1)芯片STM32F756VGT6
(2)IAR软件环境
(3)使用芯片的串口6,和外接的RS485收发模块一起用做RS485通讯
3.实际操作:
(1)串口初始化:
void MX_UART6_Init(void)
{
huart6.Instance = USART6;
huart6.Init.BaudRate = 115200;
huart6.Init.WordLength = UART_WORDLENGTH_8B;
huart6.Init.StopBits = UART_STOPBITS_1;
huart6.Init.Parity = UART_PARITY_NONE;
huart6.Init.Mode = UART_MODE_TX_RX;
huart6.Init.HwFlowCtl = UART_HWCONTROL_NONE;
huart6.Init.OverSampling = UART_OVERSAMPLING_16;
huart6.Init.OneBitSampling = UART_ONE_BIT_SAMPLE_DISABLE;
huart6.AdvancedInit.AdvFeatureInit = UART_ADVFEATURE_NO_INIT;
if (HAL_UART_Init(&huart6) != HAL_OK)
{
// _Error_Handle