我用到uart1,设定波特率是9600,但是实际测出来只有0.67*10^6,怎么差别那么大啊
U1LCR = 0x87; // DLAB = 1,可设置波特率 Fdiv = (Fpclk / 16) / UART_BPS; // 设置波特率 U1DLM = Fdiv / 256; U1DLL = Fdiv % 256; U1LCR = 0x07;
其中 #define Fosc 11059200 //晶振频率,10MHz~25MHz,应当与实际一至 #define Fcclk (Fosc * 4) //系统频率,必须为Fosc的整数倍(1~32),且<=60MHZ #define Fcco (Fcclk * 4) //CCO频率,必须为Fcclk的2、4、8、16倍,范围为156MHz~320MHz #define Fpclk (Fcclk / 4) * 1 //VPB时钟频率,只能为(Fcclk / 4)的1 ~ 4倍
|