本帖最后由 kaixinjiuhao 于 2017-4-8 21:02 编辑
那如果用数组的形式来装载输入的字符,那应该怎么编写呢?
比如:
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
unsigned char flag,a[4],i,j;
void init()
{
TMOD=0x20;
TH1=0xfd;
TL1=0xfd;
TR1=1;
REN=1;
SM0=0;
SM1=1;
EA=1;
ES=1;
}
void main()
{
init();
while(1)
{
if(flag==1)
{
flag=0;
ES=0;
SBUF=a[j++];
while(!TI);
TI=0;
ES=1;
//flag=0
}
}
}
void ser() interrupt 4
{
RI=0;
a[i++]=SBUF;
if(i==4)
flag=1;
}
我将interrupt 4中的a变为数组a,我只输入四个字符,我在interrupt 4中将SBUF中的四个字符全部放到数组中,然后在主函数中显示数组中数值。
这种方法应该怎样实现呢?
|