标题:
串口通信问题
[打印本页]
作者:
sky7
时间:
2015-10-22 20:47
标题:
串口通信问题
做郭天祥串口通信实验,在上位机用串口调试助手发送1个字符X,单片机收到字符返回给上位机“I get x”为什么我发送任意字符,都只是得到I get,而没有X呢
作者:
海哥沧海一笑
时间:
2015-10-22 21:15
程序贴出来,大家才能给你查看原因
作者:
sky7
时间:
2015-10-23 12:26
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
uchar flag,a,i;
uchar code table[]="I get";
void init()
{
SCON=0X50; //设置为工作方式1
TMOD=0X20; //设置计数器工作方式2
PCON=0X80; //波特率加倍
TH1=0XF3; //计数器初始值设置,注意波特率是4800的
TL1=0XF3;
ES=1; //打开接收中断
EA=1; //打开总中断
TR1=1; //打开计数器
}
void main()
{
init();
while(1)
{
if(flag==1)
{
flag=0;
ES=0;
for(i=0;i<6;i++)
{
SBUF=table[i];
while(!TI);
TI=0;
}
SBUF=a;
while(!TI);
TI=0;
ES=1;
flag=0;
}
}
}
void ser()interrupt 4
{
RI=0;
a=SBUF;
flag=1;
}
作者:
sky7
时间:
2015-10-23 18:43
没人帮助一下吗
作者:
sky7
时间:
2015-10-23 18:43
菜鸟积极求助
作者:
2423299621
时间:
2015-11-9 10:18
for(i=0;i<6;i++)
{
SBUF=table[i];
while(!TI);
TI=0;
}把这段去掉、
作者:
2423299621
时间:
2015-11-9 10:56
for(i=0;i<6;i++)
{
SBUF=table[i];
while(!TI);
TI=0;
}把i<6改为i<5
之前看错标题了
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1