遇到的问题: 使用DMA进行如下的字符传输串口助手可以正常接收 HAL_UART_Transmit_DMA(&huart1, (uint8_t *)"data:3.14\r\n", 14);
但是采用下面的方式发送就失败了 floatangle[2] ={1.12,2.23}; staticchar StrBuf[20] = {0}; sprintf(StrBuf,"RP:%.2f, %.2f\n", angle[0], angle[1]); HAL_UART_Transmit_DMA(&huart1, (uint8_t *)StrBuf,strlen(StrBuf)); 能进一次DMA函数,但是串口助手也是接收不到,进一次后 if (huart->gState == HAL_UART_STATE_READY) 就进不去了。 另外使用串口中断可以正常收发数据
有没有大佬遇到过这种问题啊
|