自己写了个接纳程序,流程是上位机发给单片机,假如收到的是1,就点亮一个LED,一起把收到的再发到串口。编译不经过,原因是我把中止函数、接纳函数等前加了个void,一向不明白加与不加有何差异。明日上网查下。去掉,有报警,可是编译能经过,下进去,公然没有预期的成果。也不知道到底是啥缺点,明日再找吧!
明日调好这个,再做做收发,就先做自收发吧!
调通了网上原程序。这个也通了。可完成上述功用,不过程序做的是点亮后,延时会平息。
#include
#define uchar unsigned char
#define uint
sbit Led = P0^0;
Delay()
{ int i,j;
}
{
}
{
if(TI)
TI=0;
}
}
其实,开端我自己做的程序也行。错就错在关于m判别上。我曾经写的是if(m==1),而从串口发31或1.而在C中,它只能断定16进制和10进制,所以我的ASCII 收成10进制是49,收成16进制是31,怎样也不会等于1.而把if(m==1)改成if(m==0x31)一试OK了。