外部中断只有两个针脚可以触发
SER=dat>>7;
dat<<=1;
SRCLK=1;
_nop_();
_nop_();
SRCLK=0;
这个的赋值我来解一下
0000 0111
右移7位;
1000 000 ;
赋给ser;
然后左移一位;
0000 0011;
移八次 一个字节
ser就改变了八次值
***it LSA=P2^2;
***it LSB=P2^3;
***it LSC=P2^4; //数码显示管
***it IRIN=P3^2; //红外通信
***it led=P2^0; LED灯
***it k1=P3^1;
***it k2=P3^0; //按键
case 28: // 按键5;
change(wu);
break;
case 12: // 按键1;
change(er);
break;
case 94: // 按键3;
change(er);
break;
case 8: // 按键4;
change(er);
break;
case 90: // 按键6;红外线的一些值
IT0=1;//下降沿触发
EX0=1;//打开中断0允许
EA=1; //打开总中断
interrupt 0 外部中断
//数码显示管;
void DigDisplay()
{
u8 i;
for(i=0;i<4;i++)
{
switch(i) //位选,选择点亮的数码管,
{
case(0):
LSA=0;LSB=0;LSC=0; break;//显示第0位
case(1):
LSA=1;LSB=0;LSC=0; break;//显示第1位
case(2):
LSA=0;LSB=1;LSC=0; break;//显示第2位
case(3):
LSA=1;LSB=1;LSC=0; break;//显示第3位
}
P0=disp[3-i];//发送数据
delay(100); //间隔一段时间扫描
P0=0x00;//消隐
}
}
外部中断只有两个针脚可以触发
SER=dat>>7;
dat<<=1;
SRCLK=1;
_nop_();
_nop_();
SRCLK=0;
这个的赋值我来解一下
0000 0111
右移7位;
1000 000 ;
赋给ser;
然后左移一位;
0000 0011;
移八次 一个字节
ser就改变了八次值
***it LSA=P2^2;
***it LSB=P2^3;
***it LSC=P2^4; //数码显示管
***it IRIN=P3^2; //红外通信
***it led=P2^0; LED灯
***it k1=P3^1;
***it k2=P3^0; //按键
case 28: // 按键5;
change(wu);
break;
case 12: // 按键1;
change(er);
break;
case 94: // 按键3;
change(er);
break;
case 8: // 按键4;
change(er);
break;
case 90: // 按键6;红外线的一些值
IT0=1;//下降沿触发
EX0=1;//打开中断0允许
EA=1; //打开总中断
interrupt 0 外部中断
//数码显示管;
void DigDisplay()
{
u8 i;
for(i=0;i<4;i++)
{
switch(i) //位选,选择点亮的数码管,
{
case(0):
LSA=0;LSB=0;LSC=0; break;//显示第0位
case(1):
LSA=1;LSB=0;LSC=0; break;//显示第1位
case(2):
LSA=0;LSB=1;LSC=0; break;//显示第2位
case(3):
LSA=1;LSB=1;LSC=0; break;//显示第3位
}
P0=disp[3-i];//发送数据
delay(100); //间隔一段时间扫描
P0=0x00;//消隐
}
}
举报