发表于:2010/12/31 10:49:51
#0楼
我用的是89c52 为什么调用不了中断程序
#include<reg52.h>
#define uchar unsigned char
uchar t;
sbit p2=P2^7;
void main()
{
TMOD=0x01;
TH0=(25536-50000)/256;
TL0=(25536-50000)%256;
EA=1;
ET0=1;
TCON=0x10;
while(1)
{
P0=0x3f;
P1=0x00;
if(t==20)
{
P0=0x77;
P1=0x00;
p2=~p2;
t=0;
}
}
}
void time() interrupt 1
{
TH0=(25536-50000)/256;
TL0=(25536-50000)%256;
t++;
}
但是程序中的灯还是可以闪烁,这是为什么呢?
#include<reg52.h>
#define uchar unsigned char
uchar t;
sbit p2=P2^7;
void main()
{
TMOD=0x01;
TH0=(25536-50000)/256;
TL0=(25536-50000)%256;
EA=1;
ET0=1;
TCON=0x10;
while(1)
{
P0=0x3f;
P1=0x00;
if(t==20)
{
P0=0x77;
P1=0x00;
p2=~p2;
t=0;
}
}
}
void time() interrupt 1
{
TH0=(25536-50000)/256;
TL0=(25536-50000)%256;
t++;
}
但是程序中的灯还是可以闪烁,这是为什么呢?