智能车制作
标题:
XS128单片机SCI接口程序问题,很不解。求解答
[打印本页]
作者:
xlfd1
时间:
2011-8-5 15:49
标题:
XS128单片机SCI接口程序问题,很不解。求解答
/////////////////////////////////////////////////////////////////////////////////////////
// 函数:Sci_Write
// 功能:通过XS128单片机串口发送一个字节字符型数据
/////////////////////////////////////////////////////////////////////////////////////////
void Sci_Write(unsigned char data)
{
while(!(SCI0SR1&0x80)) //数据寄存器未空,则等待中,直至空
;
Clear=SCI0SR1;
SCI0DRL=data;
while(SCI0SR1_TC!=1); //SCI未发送完则等待
delay(TIME); //延时一段时间
}
在用TBDML调试这个函数时候,发现
Clear=SCI0SR1; SCI0DRL=data;
这两个语句并没有使标志寄存器的TDRE位和TC位清零
,可是按照数据手册的说明是会清零的。不知道到底是什么原因。而且在使用这个函数发送数据的时候,上位机无法收到数据,或者收不到正确的数据。但是在自收发测试的时候,收发数据又是没问题的,被这个问题困扰好几天了。
现在实在找不出是什么原因,求解答。
作者:
xlfd1
时间:
2011-8-11 23:10
Clear=SCI0SR1;
SCI0DRL=data;
功能赘述。第一句去掉。
作者:
飞思卡尔835
时间:
2011-10-30 17:35
你好像是没有理解这个函数的意思?
作者:
仰望星空1
时间:
2012-3-11 17:26
貌似那一块的清零操作都是自动配置的吧
欢迎光临 智能车制作 (http://dns.znczz.com/)
Powered by Discuz! X3.2