
static unsigned char i,num; 是什么意思啊
voidtim(void)interrupt1using1//中断,用于数码管扫描{staticunsignedchari,num;TH0=0xf5;TL0=0xe0;P...
void tim(void) interrupt 1 using 1
//中断,用于数码管扫描
{
static unsigned char i,num;
TH0=0xf5;
TL0=0xe0;
P0=table[l_tmpdisplay[i]]; //查表法得到要显示数字的数码段
switch(i)
{
case 0:LS138A=0; LS138B=0; LS138C=0; break;
case 1:LS138A=1; LS138B=0; LS138C=0; break;
case 2:LS138A=0; LS138B=1; LS138C=0; break;
case 3:LS138A=1; LS138B=1; LS138C=0; break;
case 4:LS138A=0; LS138B=0; LS138C=1; break;
case 5:LS138A=1; LS138B=0; LS138C=1; break;
case 6:LS138A=0; LS138B=1; LS138C=1; break;
case 7:LS138A=1; LS138B=1; LS138C=1; break;
}
i++;
if(i==8)
{
i=0;
num++;
if(10==num) //隔段时间读取1302的数据。时间间隔可以调整
{
ReadRTC_Flag=1; //使用标志位判断
num=0;
}
}
} 展开
//中断,用于数码管扫描
{
static unsigned char i,num;
TH0=0xf5;
TL0=0xe0;
P0=table[l_tmpdisplay[i]]; //查表法得到要显示数字的数码段
switch(i)
{
case 0:LS138A=0; LS138B=0; LS138C=0; break;
case 1:LS138A=1; LS138B=0; LS138C=0; break;
case 2:LS138A=0; LS138B=1; LS138C=0; break;
case 3:LS138A=1; LS138B=1; LS138C=0; break;
case 4:LS138A=0; LS138B=0; LS138C=1; break;
case 5:LS138A=1; LS138B=0; LS138C=1; break;
case 6:LS138A=0; LS138B=1; LS138C=1; break;
case 7:LS138A=1; LS138B=1; LS138C=1; break;
}
i++;
if(i==8)
{
i=0;
num++;
if(10==num) //隔段时间读取1302的数据。时间间隔可以调整
{
ReadRTC_Flag=1; //使用标志位判断
num=0;
}
}
} 展开
3个回答
展开全部
unsigned 表示无符号类型,这个我想你已经知道了,就不多说了,static表示数据的在内存中的存储类型。它表示该数据是静态的存储类型,表示你这两个字符型数据是静态的,至于静态的和非静态的有什么区别。这里面有很细的划分,大概可以分成这么几种。静态的局部变量和非静态的局部变量(也就是普通的局部变量),静态的全局变量和普通的全局变量,静态函数和普通函数。至于这些有什么区别,你可以在百度里搜一下static关键字的详细用法和作用,有专门的文章详细介绍。
展开全部
静态的无符号的字符串变量i,mun
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
static表示数据的在内存中的存储类型为静态,unsigned 表示无符号类型,char表示i和num为字符类型,即定义了两个静态无符号的字符,一个是i,另一个是num。
其中char类型的变量占2字节,声明为static的变量i和num实质上就是全局变量,即在第一次使用时即载入内存,直到程序退出,会一直在内存中,而且有一点最为关键:静态变量属于类而不属于对象,所以调用静态变量时,应该使用类名直接调用,而不要使用对象去调用。
其中char类型的变量占2字节,声明为static的变量i和num实质上就是全局变量,即在第一次使用时即载入内存,直到程序退出,会一直在内存中,而且有一点最为关键:静态变量属于类而不属于对象,所以调用静态变量时,应该使用类名直接调用,而不要使用对象去调用。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询