标题:
大家好,我的串口调试助手程序不知道哪里有错误
[打印本页]
作者:
situhaoda
时间:
2015-1-17 10:09
标题:
大家好,我的串口调试助手程序不知道哪里有错误
大家好,我写了一段串口调试助手程序,就是输入一个A 电脑回答 I get A,我实在是找不到哪里有错误,各位大神能不能帮我看看。谢谢大家了
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
uchar flag,a,i;
uchar code table[]="I get ";
void init(){
TMOD=0x20;
TH1=0xfd;
TL1=0xfd;
TR1=1;
REN=1;
SM0=0;
SM1=1;
ES=1;
EA=1;
flag=0;
}
void main(){
init();
while(1){
if(flag==1){
ES=0;
for(i=0;i<6;i++){
SBUF=table[i];
while(TI==0);
TI=0;
}
SBUF=a;
while(TI==0);
TI=0;
ES=1;
flag=0;
}
}
}
void zd() interrupt 4{
RI=0;
a=SBUF;
flag=1;
}
作者:
xiaoliu
时间:
2015-1-17 11:09
按程序,应该是从,串口调试助手发生a给单片机吧,然后单片机返回数据显示在串口调试助手上面。你现在输入a以后,得到的返回数据是什么,乱码还是空白,最好是吧汉口调试,助手,设置为十六进制看一下你的数据
作者:
situhaoda
时间:
2015-1-17 11:15
xiaoliu 发表于 2015-1-17 11:09
按程序,应该是从,串口调试助手发生a给单片机吧,然后单片机返回数据显示在串口调试助手上面。你现在输入a ...
我发A以后返回值是空白
作者:
dgahz
时间:
2015-1-17 23:04
程序正确。串口采用文本模式发送和接收,波特率为9600正常使用。
作者:
admin
时间:
2015-1-18 00:15
既然楼上说程序在他那边测试是正确的。那么问题肯定是由楼主电路方面的问题造成的。晶体震荡器这些仔细检查一下。
作者:
lionago
时间:
2015-1-18 05:13
正在学习中。
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1