通过单片机的串行接口,发送端A发出一个命令点亮接收端B的发光二极管
答案:2 悬赏:20 手机版
解决时间 2021-12-01 06:07
- 提问者网友:暗中人
- 2021-11-30 14:43
通过单片机的串行接口,发送端A发出一个命令点亮接收端B的发光二极管
最佳答案
- 五星知识达人网友:十年萤火照君眠
- 2021-11-30 15:32
是两个单片机吗?追问恩,是的。。你能不能把图也画下,我怕你把程序写出来时,没图我看不懂。。。谢谢了追答
#include
sbit key=P1^0;
unsigned char dat=0x55;
void main()
{
TMOD=0x20;
TH1=0xfd;
TL1=0xfd;
TR1=1;
SCON=0x50;
while(1)
{
if(key==0)
{
while(key==0);
SBUF=dat;
while(TI==0);
TI=0;
dat=~dat;
}
}
}
#include
sbit led=P1^0;
unsigned char dat;
void main()
{
TMOD=0x20;
TH1=0xfd;
TL1=0xfd;
TR1=1;
SCON=0x50;
led=0;
while(1)
{
if(RI)
{
RI=0;
dat=SBUF;
if(dat==0x55)led=1;
if(dat==0xaa)led=0;
}
}
}
追问
程序运行不了啊,出现了这种状况。。。你能在帮我看看吗?
追答这里是两个程序,一个是A单片机,一个是B单片机,得分别编译,生产两个HEX文件才可以。
#include
sbit key=P1^0;
unsigned char dat=0x55;
void main()
{
TMOD=0x20;
TH1=0xfd;
TL1=0xfd;
TR1=1;
SCON=0x50;
while(1)
{
if(key==0)
{
while(key==0);
SBUF=dat;
while(TI==0);
TI=0;
dat=~dat;
}
}
}
#include
sbit led=P1^0;
unsigned char dat;
void main()
{
TMOD=0x20;
TH1=0xfd;
TL1=0xfd;
TR1=1;
SCON=0x50;
led=0;
while(1)
{
if(RI)
{
RI=0;
dat=SBUF;
if(dat==0x55)led=1;
if(dat==0xaa)led=0;
}
}
}
追问
程序运行不了啊,出现了这种状况。。。你能在帮我看看吗?
追答这里是两个程序,一个是A单片机,一个是B单片机,得分别编译,生产两个HEX文件才可以。
全部回答
- 1楼网友:你哪知我潦倒为你
- 2021-11-30 16:56
看看这个仿真实例,可以参考一下。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯