PY32F030 串口DMA通讯问题

在PY32F030这个MCU中,如果使用其他MCU的代码,会出现问题,其问题就出现在SYSCFG(System Configuration Controller)配置寄存器,这是一类寄存器的统称。

SYSCFG中有外设引脚重映射、外部中断线配置、DMA请求映射、特定系统功能的配置寄存器等。

而我们的问题就出现在DMA请求映射上,SYSCFG配置寄存器中有一个SYSCFG_CFGR3寄存器,如果要使用DMA,就需要把DMA映射到对应的功能通道上。就比如DMA1_MAP要映射到USART1_RX上,就需要把SYSCFG_CFGR3寄存器的第6位置1即可。

体现在代码上就是很简单的:

//UART1_RX是第六位
SET_BIT(SYSCFG->CFGR3, 0x0600);