22问答网
所有问题
while((USART1->SR&0X40)==0)中的0x40对应的是TC啊!为什么都说是TXE?
如题所述
举报该问题
相似回答
单片机串口单个接收没问题,但是用数组接收时,第
一
个接收到
的是0x
...
答:
while((USART1
->
SR&0X40)==0);
//等待发送结束 USART1->DR=buf[t];} while((USART1->SR&0X40)==0);//等待发送结束
...
USART
_FLAG_
TC
正常。但使用 USART_FLAG_
TXE
会乱码。
答:
while (!(USART1
->
SR &
USART_FLAG_
TC));
这句是等待数据完完全全从“发送移位寄存器”中发送出去,while (!(USART1->SR & USART_FLAG_
TXE));
这句是等待数据从USARTx->DR转移到“发送移位寄存器”中。在后一句的写...
大家正在搜