找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2539|回复: 5
打印 上一主题 下一主题
收起左侧

大家好,我的串口调试助手程序不知道哪里有错误

[复制链接]
跳转到指定楼层
楼主
ID:70526 发表于 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;
}

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:51269 发表于 2015-1-17 11:09 来自手机 | 只看该作者
按程序,应该是从,串口调试助手发生a给单片机吧,然后单片机返回数据显示在串口调试助手上面。你现在输入a以后,得到的返回数据是什么,乱码还是空白,最好是吧汉口调试,助手,设置为十六进制看一下你的数据
回复

使用道具 举报

板凳
ID:70526 发表于 2015-1-17 11:15 | 只看该作者
xiaoliu 发表于 2015-1-17 11:09
按程序,应该是从,串口调试助手发生a给单片机吧,然后单片机返回数据显示在串口调试助手上面。你现在输入a ...

我发A以后返回值是空白
回复

使用道具 举报

地板
ID:67992 发表于 2015-1-17 23:04 | 只看该作者
程序正确。串口采用文本模式发送和接收,波特率为9600正常使用。
回复

使用道具 举报

5#
ID:1 发表于 2015-1-18 00:15 来自手机 | 只看该作者
既然楼上说程序在他那边测试是正确的。那么问题肯定是由楼主电路方面的问题造成的。晶体震荡器这些仔细检查一下。
回复

使用道具 举报

6#
ID:72419 发表于 2015-1-18 05:13 | 只看该作者
正在学习中。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表