电脑上,你是用什么软件发送数据的看用串口调试助手就行,网上到处可以下载。也好用。关键问题是在电脑上发送的0,1,是以什么数据格式发送的,通常以字符格式发送的,即是ASCII码。所以,单片机接收时,也要按字符格式发才行。而你的程序是按十六进制数的格式判断的,也就是二进制数,所以,发送和接收格式不统一,单片机就不能正常接收控制LED0,也就不能正常返回数据。
if(SBUF==0) //这是按二进制数接收的
if(SBUF==1) //这也是按二进制数接收的
这样写程序,要求电脑上,要按二进制数即十六进制数发送才行。
还是按字符格式收发比较好。
这样,程序改一下就行了。
if(SBUF==‘0’) //这就是按字符接收的
if(SBUF==‘1’) //这也是按字符接收的
其它行不用动。
这样,收发比较可靠。
串口控制LED。
在串口助手发送命令,比如发送open1,使LED1灯亮,发送stop1,使LED1灯灭。
拜托了 帮我写一下代码吧 拜托了