小林 发表于 2021-3-8 14:37:06

PIC单片机PLL影响串口输出

群里各位大佬,小弟有个问题,搞了好几天了,一直没想明白,PLL配置会影响UART输出

代码如下:
int main(int argc, char** argv)
{
    INTCON2bits.GIE = 0;                     /*Disable user interrupt*/
   
    RPINR19bits.U2RXR = 19;//U2_RX ->RPINR19
    RPOR1bits.RP36R   = 3;//U2_TX ->RP36
   
    SysClkInit();
    McuPeripheralInit();
    VariableInit();
   
    INTCON2bits.GIE = 1;      /*Enable user interrupt*/
   
    SvpwmDutySet(500,1000,1500);
    while (1)
    {
      if(Timer1Cnt > 100)
      {
            Timer1Cnt = 0;
            LED1_PIN = !LED1_PIN;
            U2TXREG= ADC_BUF;
      }
    }
    return 0;



    RPINR19bits.U2RXR = 19;//U2_RX ->RPINR19
    RPOR1bits.RP36R   = 3;//U2_TX ->RP36
这两行是配置IO复用的,这两句放在PLL时钟后面执行,串口就没有输出了,放在前面就可以,是不是很神奇?
希望有大佬能看到,指点一下,感谢!

dinggong 发表于 2022-7-9 11:33:57

加了PLL,晶振頻率都變了,肯定有影響了

bmagui 发表于 2022-7-10 10:27:53

一点都不神奇!

波特率和时钟是直接关联的,PLL启动后相当于波特率提高了4倍。
页: [1]
查看完整版本: PIC单片机PLL影响串口输出