找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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;}

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

使用道具 举报

沙发
ID:213173 发表于 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;
}
回复

使用道具 举报

板凳
ID:213173 发表于 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;
}
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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