标题: 11F04E单片机串口通讯,发送1,回传数据混乱没有规则,串口初始化有问题吗? [打印本页]

作者: 194940051    时间: 2020-4-5 08:54
标题: 11F04E单片机串口通讯,发送1,回传数据混乱没有规则,串口初始化有问题吗?

#include "reg52.h"
#include "intrins.h"
void Usartinit()
{SCON=0x50; TMOD=0X20; TL1 = 0xD7; //设定定时初值
TH1 = 0xFE; //设定定时初值 TR1=1; ES=1; EA=1; }
void main(){ UsartInit();while(1){} }
void Usart() interrupt 4
{unsigned char ReceiveData;ReceiveData=1;RI=0;if(ReceiveData == 1)
{ ReceiveData = ReceiveData + 1;}else{ ReceiveData = ReceiveData + 5;}
SBUF=ReceiveData; while(!TI); TI=0;}


作者: wulin    时间: 2020-4-5 10:11
void Usart() interrupt 4
{
        unsigned char ReceiveData;
        RI=0;
        ReceiveData=SBUF;//保存接收到的数据
        if(ReceiveData == 1)
        {
                ReceiveData = ReceiveData + 1;
        }
        else
        {
                ReceiveData = ReceiveData + 5;
        }
        SBUF=ReceiveData; //回传处理后的数据
        while(!TI);
        TI=0;
}

作者: wulin    时间: 2020-4-5 10:20
#include "reg52.h"
#include "intrins.h"

void Usartinit()
{
    SCON = 0x50;
    TMOD = 0x20;
    TH1 = 0xfd;//晶振11.0592MHz 波特率9600
    TL1 = 0xfd;
    TR1 = 1;
    ES = 1;
    EA = 1;
}
void main()
{
        UsartInit();
        while(1)
        {

        }
}
void Usart() interrupt 4
{
        unsigned char ReceiveData;
        RI=0;
        ReceiveData=SBUF;//保存接收到的数据
        if(ReceiveData == 1)
        {
                ReceiveData = ReceiveData + 1;
        }
        else
        {
                ReceiveData = ReceiveData + 5;
        }
        SBUF=ReceiveData;
        while(!TI); //回传处理后的数据
        TI=0;
}




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1