標(biāo)題:
51單片機(jī):中斷,C語言代碼
[打印本頁]
作者:
51黑芯片
時(shí)間:
2016-1-17 01:17
標(biāo)題:
51單片機(jī):中斷,C語言代碼
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit dula=P2^5;
sbit wela=P2^6;
sbit d1=P1^0; //LED燈定義
sbit d2=P1^1;
sbit d3=P1^2;
sbit d4=P1^4;
const unsigned char table[]=
{0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E};
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void main()
{
uchar num;
EA=1; //開總中斷
EX0=1; //開外部中斷0 INT0
EX1=1; //開外部中斷1 INT1 手動(dòng)去中斷即外部中斷只有2個(gè)。T0和T1是定時(shí)器的中斷
TCON=0x01; //設(shè)為跳變沿觸發(fā)方式,即IT0=1;
wela=1;
P0=0xea; //11101010 只要1、3、5數(shù)碼管亮
wela=0;
while(1)
{
for(num=0;num<16;num++)
{
d1=1; d3=1;
dula=1;
P0=table[num];
dula=0;
delay(1000);
}
}
}
void exter0() interrupt 0
{
d1=0;
}
void exter2() interrupt 2
{
d3=0;
}
/*
我的結(jié)果很奇怪,INTO時(shí)斷時(shí)續(xù)的,INT1正常;INT1用杜綁線去卡,一卡就停了,一拿掉立馬恢復(fù)。
INT0卻不行
*/
復(fù)制代碼
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1