寄存器设置如下:
SYSCFG_RMPCR1|=0x10; //TX在PA2 RX在PA3
USART1_BRR1 = 0x68;
USART1_BRR2 = 0x03;
USART1_CR2 = 0x28;
USART1_CR3 = 0x08;
运行后发送数据端口一直是低电平,但状态寄存器USART_SR中的TC会置位。这是什么原因
你的原因我不清楚,我给你一段我实际能用的代码!STM8L152C6T6的!
void Usart_Init(void)
{
USART1_BRR2 = 0x02;
USART1_BRR1 = 0x68; //16MHZ时波特率9600对应数值
USART1_CR2 = 0x24; //发送完成中断、接受中断,开启发送,接受
}
void Clk_Config(void)
{
CLK_CKDIVR_CKM = 0; //系统时钟1分频
while(!(CLK_ICKCR & 0x02)); //等待HSI准备好
CLK_PCKENR1 = 0x21; //开启USART1的时钟,TIM2的时钟
}
我的USART_CR2寄存器中的TEN置位后TX端口还是保持低电平是怎么回事