请教马老师:关于UCSRA中的TXC【恢复】
“发送的数据首先写入数据寄存器,然后转入一个8位的移位寄存器中通过串行口串输出(后面由硬件自动完成)。 ”想请教一下马老师:
如果只发送一个字节,要求发送完毕后置485总线处于接收状态。
也就是掐的点不是《数据寄存器空》,而是《发送完成》。
那么原理上是应该可以通过判断USCRA中的TXC位(发送完成标志位),来判断发送(包括硬件自动完成部分)是否完成。
但实际上我试了,却没有成功。
请问是什么原因呢?
发送代码如下:
void USART1_Transmit( unsigned char data)
{
UDR1 = data;
while ( !( UCSR1A & (1<<TXC1)) );
}
自己顶一下。。。请高手帮我解答下啊
页:
[1]