中断控制程序中加定时器延时子程序,外部中断后灯一直暗
时间:10-02
整理:3721RD
点击:
#include <reg51.h>
void delay(unsigned char x);/*延时x秒*/
void main()
{
IT0=1;
EA=1;
EX0=1;
for(;;)
P1=0x00;
}
void f()interrupt 0
{
P1=0xff;
delay(1);
}
void delay(unsigned char x)
{
unsigned char i,j;
for(j=1;j<=x;j++)
for(i=1;i<=20;i++)/*一秒*/
{
TMOD=0x01;
TH0=0x3c;
TL0=0xB0;
TR0=1;
while(!TF0);
TF0=0;
}
}
你把中断初始化TMOD=0x01;TH0=0x3c;TL0=0xB0; TR0=1;放MAIN里试试
写的什么代码,想表达的是什么意思,延时函数还能写成这样?
就是想在外部中断0中断后灯全暗一秒,然后用子程序delay(1)来达到延时一秒。
直接用暂时函数就行了吧,不需要再加定时中断吧来自: Android客户端
我这个小白都看不下去了
void delay(uchar a)
{
uint x,y;
for(x=a;x>0;x--)
for(y=110;y>0;y--);
你试试把这个延时程序替代你的,然后那些中断指令要放在main里。
这个延时是一毫秒的