為什么我的程序中斷之后不是第一個LED亮而是其它的亮,且數碼管還在動態顯示,是什么原因?請各位大俠賜教。
#include <reg52.h> #define uchar unsigned char #define uint unsigned int sbit wei=P2^7; sbit duan=P2^6; sbit LED=P0^0; sbit P14=P1^4; uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f}; uint num,z; void delayms(uint); void main() { EA=1; EX0=1; wei=1; P0=0xfe; wei=0; while(1) { duan=1; for(num=0;num<10;num++) { P0=table[num]; delayms(200); } } } void delayms(uint z) { uint x,y; for(x=z;x>0;x--) for(y=300;y>0;y--); } void exter0() interrupt 0 { P14=0; LED=0; P14=1; }
歡迎光臨 (http://m.zg4o1577.cn/bbs/) | Powered by Discuz! X3.1 |