微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 想做个简单的单片机串口通信,遇到点小问题

想做个简单的单片机串口通信,遇到点小问题

时间:10-02 整理:3721RD 点击:
本来想做到发一个字符串返回同样一个字符串,但是貌似高位置1了,不知道程序哪里出了问题,特来请教。


#pragma db code
#include<reg51.h>
#define uchar unsigned char
void rece(void);
void init(void);
uchar re[17];
void main(void)
{
uchar temp;
init();
do{
  while(RI==0);//接收
  temp=SBUF;
  if(temp==0x00)
  {rece();}
  else break;
  }while(1);
}
void init(void)
{
TMOD=0x20;
PCON=0x80;
SCON=0x50;
TL1=0xFa;
TH1=0xFa;
TR1=1;
}
void rece(void)
{
char i;
i=0;
do       
{        while(RI==0);
        re[17]=SBUF;
        RI=0;
        SBUF=re[17];
        while(TI==0);
        TI=0;
}while(re[i-1]!=255);       
}

然而并没有发现错误

没有看出有什么规则性的错误呀

难不成在硬件上出差了

串口设备会不会有问题?

可以具体一点吗

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top