21ic问答首页 - GD32C103通过DMA进行485通讯的数据收发
GD32C103通过DMA进行485通讯的数据收发
本帖最后由 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接收可以正常接收数据,还有什么原因会导致接收不到数据
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接收可以正常接收数据,还有什么原因会导致接收不到数据
赞0
评论
2025-09-19
赞0
看懂报错报的啥不?建议翻译一下。
评论
2025-09-19
您需要登录后才可以回复 登录 | 注册