程序很简单就是P0口控制数码管从0到F,加了一个中断控制LED灯,这是一个电平触发
我想问的是当我用指拨开关使P3.2置低电平,那么这个程序应该只在中断程序运行数码管应该不会在改变,可实际上数码管却在缓慢从0到F变化,这是问什么???
#include<reg52.h>#define uint unsigned int#define uchar unsigned charvoid delay(uint a);sbit dula=P2^6;sbit wela=P2^7;sbit d1=P1^0;void main(){ uchar i; uchar code temp[]={ 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71, }; EA=1; EX0=1; IT0=0; wela=1; P0=0xf0; wela=0; for(i=0;i<16;i++) { d1=1; dula=1; P0=temp[i]; dula=0; delay(82); }}void delay(uint a){ uint x,y; for(x=500;x>0;x--) for(y=a;y>0;y--);}void exter0() interrupt 0{ d1=0;}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>