|
我按下p3.2之后全亮但是我按下p3.3沒有用了,還有就是怎么實(shí)現(xiàn)按兩下p3.2關(guān)閉這些燈啊跪求!
單片機(jī)源程序如下:
- #include<reg52.h>
- unsigned char flag,led,k,i;
- sbit key1=P3^2;
- sbit key2=P3^3;
- void delay(unsigned char n)
- {
- unsigned char a;
- for(a=0;a<n;a++);
- }
- void init(void)
- {
- IT1=1;
- IT0=1;
- EA=1;
- EX1=1;
- EX0=1;
- led=0xff;
- }
- int main(void)
- {
- unsigned char code table[]={0x33,0xcc,0x33,0xcc};
- init();
- while(1)
- {
- if(flag==1)
- { delay(1000);
- if(!key1)
- {
- while(!key1)
- P1=0x00;
- }
- flag=0;
- EX0=1;
- }
- if(flag==2)
- {
- delay(1000);
- if(!key2)
- {
- while(!key2);
- while(1)
- {
- for(i=0;i<4;i++)
- {
- P1=table[i];
- delay(100000);
- }
- }
- }
- flag=0;
- EX1=1;
- }
- }
- }
- void exzd0(void) interrupt 0
- {
- flag=1;
- EX0=0;
- }
- void exzd1(void) interrupt 2
- {
- flag=2;
- EX1=0;
- }
復(fù)制代碼
|
|