[51单片机] 串口通讯

[复制链接]
 楼主| caoye87 发表于 2014-8-1 21:32 | 显示全部楼层 |阅读模式
大家好,本人学习单片机通讯,发送01点亮一个灯,再次发送熄灭。程序中不需要单片机发送数据给电脑,可是每次用串口调试助手发送01之后,就会都到6个数据,不知道为什么,请高手指点。晶振是11.0592,波特率9600,程序如下:
#include<reg52.h>

#define        uchar        unsigned char
#define        uint                unsigned int

sbit        LED0 = P1^0;
sbit        LED1 = P1^1;
sbit        LED2 = P1^2;
sbit        LED3 = P1^3;
sbit        LED4 = P1^4;
sbit        LED5 = P1^5;
sbit        LED6 = P1^6;
sbit        LED7 = P1^7;

void        Init_Uart(void)
{
        TMOD = 0x20;
        TH1 = 0xFD;
        TL1 = 0xFD;
        TR1 = 1;
        SCON = 0x50;
        PCON = 0;
        EA = 1;
}

void main(void)
{
        uchar i = 0;
        Init_Uart();
        while(1)
                {
                        while(!RI);
                        RI = 0;
                        i = SBUF;
                        switch(i)
                                {
                                        case 0x01: LED0 = ~LED0;break;
                                        case 0x02: LED1 = ~LED1;break;
                                        case 0x03: LED2 = ~LED2;break;
                                        case 0x04: LED3 = ~LED3;break;
                                        case 0x05: LED4 = ~LED4;break;
                                        case 0x06: LED5 = ~LED5;break;
                                        case 0x07: LED6 = ~LED6;break;
                                        case 0x08: LED7 = ~LED7;break;
                                }
                }
}

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
xg3469 发表于 2014-8-1 21:50 | 显示全部楼层
邪门了,没看到你程序里给SBUF赋值。先换个其它的串口助手试试,再查查程序,你用的是STC吗?
 楼主| caoye87 发表于 2014-8-1 22:18 | 显示全部楼层
xg3469 发表于 2014-8-1 21:50
邪门了,没看到你程序里给SBUF赋值。先换个其它的串口助手试试,再查查程序,你用的是STC吗? ...

是STC89C52单片机,我换了个串口调试助手,同样返回六个数据,只不过是数据变成了六个20。我用的是USB转串口线,会不会是这根线不好额。
xg3469 发表于 2014-8-1 22:35 | 显示全部楼层
不好说,有示波器就看看TXD上有没有脉冲,若没有,可考虑串口线,若有,考虑程序和串口线。供你参考。
ayb_ice 发表于 2014-8-2 08:08 | 显示全部楼层
把串口线发送与接收短接,自测试一下就知道了
伊泽瑞拉 发表于 2014-8-2 09:13 | 显示全部楼层
串口和你下位机的波特率不一致时会出现这种情况    你检查下    不谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

20

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部