串口发送通了 但是始终接收不到数据
int tmp,i,j;
int receiv,send=0x30;
*ULCON0=0x03;
*UCON0=0x09;
*UBRDIV0=0x280;
while(1)
{
for(i=0;i<1000;i++)
for(j=0;j<1000;j++)
;
tmp=(*USTRAT0)&0x40;
if(tmp==0x040)
{
*UTXBUF0=send;
}
for(i=0;i<1000;i++)
for(j=0;j<1000;j++)
;
tmp=(*USTRAT0)&0x20;
if(tmp==0x20)
{
receiv=*URXBUF0;
printf("receive=%d",receiv);
}
}
串口发送通了 但是始终接收不到数据, 即tmp=(*USTRAT0)&0x20;始终不等于0X20,但是硬件上用示波器却看到电脑串口调试工具传入的数据高低变化 真是奇怪 有谁知道原因吗?