#include
void Init_Value();
void Delay(unsigned char count);
sbit Led = P1^0;
//unsigned char i = 1;
void main(void)
{
Init_Value();
while(1);
}
void Init_Value()
{
// TMOD = 0x01;
// TH0 = (65535 - 10000) / 256;
// TL0 = (65535 - 10000) % 256;
EA = 1;
// ET0 = 1;
// TR0 = 1;
EX0 = 1;
IT0 = 0;
}
void Inter() interrupt 0
{
/* if(i == 0)
{
i = 1;
}*/
if(!INT0)
{
//while(i);
//i = 1;
Delay(20);
if(!INT0)
{
while(!INT0);
Led = !Led;
}
}
}
/*void Timer0() interrupt 1
{
TH0 = (65535 - 10000) / 256;
TL0 = (65535 - 10000) % 256;
i = 0;
}*/
void Delay(unsigned char count)
{
unsigned int i;
unsigned int j;
for(i = 0; i <= count; i++)
for(j = 0; j <= 1000; j++);
}
注释部分是我想用计数器替换软延时的代码.....我不知道是那里出了问题,头都搞焦了..
刚开始,就是想用内部中断来代替软延时,但是写好了,下载板子上没反应,找了好久没发现原因,最后无奈还是用软延时来看看是不是代码写错了
中断函数没有你那么些写的。里面有while、还有DELAY函数
回复 板凳 ltbytyn 的帖子
能指点我下吗?刚学没多久