本帖最后由 yange1999 于 2025-9-19 17:20 编辑
GDx芯片通过DMA进行485数据的收发,目前发送没问题,接收不到数据,通过
if(usart_interrupt_flag_get(Port->USARTx, USART_INT_FLAG_IDLE) != RESET)
{
void)(temp = USART_STAT(USART1));
(void)(temp = USART_DATA(USART1));
(void)temp;
.....
}
读取状态寄存器、数据寄存器来清除空闲中断标志,状态寄存器报错,也有链接头文件的,有大佬知道还要啥好的办法清除这个状态寄存器不?
发送和接收的DMA驱动差不多,就只有内存地址和方向不一样,485的驱动也确定没问题,不用DMA接收可以正常接收数据,还有什么原因会导致接收不到数据
|
|