如下配置后,发送数据正常,接收数据全部为0,中断功能正常,请赐教,非常感谢
使用的单片机是HC32L130, PA14已经禁用SWD,配置为普通IO,并且发送是正常的,现在看是PA15不能接收,谢谢
配置代码
///<TX
stcGpioCfg.enDir = GpioDirOut;
Gpio_Init(GpioPortA,GpioPin14,&stcGpioCfg);
Gpio_SetAfMode(GpioPortA,GpioPin14,GpioAf1); //配置PA14为UART1_TX
//<RX
stcGpioCfg.enDir = GpioDirIn;
stcGpioCfg.enPu = GpioPuEnable;
stcGpioCfg.enPd = GpioPdDisable;
Gpio_Init(GpioPortA,GpioPin15,&stcGpioCfg);
Gpio_SetAfMode(GpioPortA,GpioPin15,GpioAf2); //配置PA15为UART1_RX
Sysctrl_SetPeripheralGate(SysctrlPeripheralUart1,TRUE);
///<UART 初始化
stcCfg.enRunMode = UartMskMode1; ///<模式3
stcCfg.enStopBit = UartMsk1bit; ///<1bit停止位
stcCfg.enMmdorCk = UartMskNoParity; ///<多机模式时
stcCfg.stcBaud.u32Baud = baud; ///<波特率9600
stcCfg.stcBaud.enClkDiv = UartMsk8Or16Div; ///<通道采样分频配置
stcCfg.stcBaud.u32Pclk = Sysctrl_GetPClkFreq(); ///</<获得外设时钟(PCLK)频率值
Uart_Init(M0P_UART1, &stcCfg); ///<串口初始化
///<UART 中断使能
Uart_ClrStatus(M0P_UART1,UartRC); ///<清接收中断请求
Uart_ClrStatus(M0P_UART1,UartTC); ///<清发送中断请求
Uart_EnableIrq(M0P_UART1,UartRxIrq); ///<使能接收中断
Uart_DisableIrq(M0P_UART1,UartTxIrq); ///<禁止发送中断
EnableNvic(UART1_IRQn, IrqLevel3, TRUE); ///<系统中断使能
|