本帖最后由 muyichuan2012 于 2020-8-31 09:12 编辑
请求一份串口DMA空闲中断例程,如果用STM32的移植过去,很多寄存器不一样,BSP包没注解,没把握
我看到STM32的空闲中断例程是这样:
void USART3_IRQHandler(void)
{
u32 temp=0;
if(USART_GetITStatus(USART3, USART_IT_IDLE) != RESET)
{
temp=USART3->SR;
temp=USART3->DR;//清除IDLE标志位
DMA_Cmd(DMA1_Channel3,DISABLE);
temp = MAX_RX_LEN - DMA_GetCurrDataCounter(DMA1_Channel3);
DMA_SetCurrDataCounter(DMA1_Channel3,MAX_RX_LEN);//设置传输长度
DMA_Cmd(DMA1_Channel3,ENABLE); //打开DMA
USART3_DMA_Send(Flag_Uart3_Send,temp);
}
}
不知AT32的要怎样改?
|