amimax
おもいね
2021-01-19 20:44

51单片机串口通信,无法正常接收数据,全部都是乱码

  • 测试用例

# include <reg52.h>
typedef unsigned int u16;
typedef unsigned  char u8;
u8 flag,a,i;
u8 table[]="I get";
void Init()
{

   TMOD = 0x20;
    SCON = 0x50;
    TH1 = 0xF3;
    TL1 = TH1;
    PCON = 0x80;
    EA = 1;
    ES = 1;
    TR1 = 1;
    
}
void main ()
{        
    Init();
    while(1){
        if(flag==1){
            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 sda()interrupt 4{
    RI=0;
    a=SBUF; 
    flag=1;
}
 

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

1条回答

为你推荐