c51单片机中怎样怎让程序一直循环读取数组中的16个元素?

如题所述

i = 0;
while(1)
{
a[i]; // 访问数组中的元素
i = ( i + 1 ) % 16;

}
由于16可以被256整除,也可以这样做
for( i = 0; ; ++i )
{
array[i%16]; // 访问数组中的元素

}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-02-07
大循环里面加FOR语句
第2个回答  2014-02-07
#include<reg51.h>
unsigned char ary[16],i;
main()
{
TMOD=0x20;
TH1=0xfd;
TL1=0xfd;
SCON=0x50;
TR1=1;
while(1)
{
if(RI)
{RI=0;ary[i]=SBUF;}
SBUF=ary[i];
while(!TI);
TI=0;
i++;
i%=16;
}
}