为啥这个程序上位机不能显示返回值 i

2019-07-15 23:06发布

为啥这个程序上位机不能显示返回值 i 这是为什么 大神们
#include <reg51.h>

unsigned char flag,a;
int i;

void main ()
{
        TMOD=0x20;
        TH1=0xfd;
        TL1=0xfd;
        TR1=1;
        REN=1;
        SM0=0;
        SM1=1;
        EA=1;
        ES=1;

while(1)
        {
                if(flag==1)
                {       
                        ES=0;
                        flag=0;
                        SBUF=i;
                        while(!ti);
                        TI=0;
                        SBUF=a;
                        while(!TI);
                        TI=0;
                        ES=1;                       
                }
        }
}

void inti () interrupt 4
{
        RI=0;
        a=SBUF;
        P0=SBUF;
        i=0;
        i++;
        if(i==256)
                i=0;
        flag=1;
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
10条回答
西雅图之恋
1楼-- · 2019-07-17 04:18
tangkii 发表于 2013-8-12 17:37
SBUF='C'
右边要写字符或ASCII码
你写一个SBUF=i,什么意思?

我想输出i的值 比如说 子函数那个当i=2时 SBUF输出2
不知道怎么做
tangkii
2楼-- · 2019-07-17 08:15
 精彩回答 2  元偷偷看……
tangkii
3楼-- · 2019-07-17 14:09
忘了一点,在定义int i时,就因该给i赋值,int i=0;
西雅图之恋
4楼-- · 2019-07-17 17:49
tangkii 发表于 2013-8-13 12:23
忘了一点,在定义int i时,就因该给i赋值,int i=0;

谢谢 十分感谢

一周热门 更多>