我用的是神舟三号的开发板,所有的程序全是基于固件库,想改成不用固件库的,
之前参考正点原子的帖子,但是串口这跑不通,
改到如下程度时可以跑通,当把前三行注释掉,然后直接给USART1->BRR赋值就跑不通了
不明白原因,求助
系统时钟为8M
USART_InitStructure.USART_BaudRate = 9600;
USART_Init(USART1, &USART_InitStructure); /*配置串口1 */
USART_Init(USART2, &USART_InitStructure); /*配置串口2*/
// USART1->BRR=0x0341; // 波特率设置
// USART2->BRR=0x0341; // 波特率设置
USART1->CR2 &= 0XCFFF;
USART1->CR2 |= 0X0000;//设置停止位,1个
USART1->CR1 &= 0XE9F3;
USART1->CR1 |= 0x000C;//设置字长:8个数据位,校验控制:无,发送使能,接收使能
USART1->CR3 &= 0XFCFF;
USART1->CR3 |= 0X0000;//无硬件流控制
USART2->CR2 &= 0XCFFF;
USART2->CR2 |= 0X0000;//设置停止位,1个
USART2->CR1 &= 0XE9F3;
USART2->CR1 |= 0x000C;//设置字长:8个数据位,校验控制:无,发送使能,接收使能
USART2->CR3 &= 0XFCFF;
USART2->CR3 |= 0X0000;//无硬件流控制
|