中断程序小小疑问
#include<reg52.h>#define uint unsigned int
#define uchar unsigned char
sbit LED1=P0^0;
sbit LED2=P0^1;
uint num1,num2;
void main()
{
TMOD=0X03; // 定时器0工作方式3
TH0=6; // 初值
TL0=6;
EA=1; //开总中断
ET0=1; //开定时器0中断
ET1=1; //开定时器1中断
TR0=1; //启动定时器0
TR1=1; //启动定时器0的高八位计数器
while(1)
{
if(num1>3683)
{
num1=0;
LED1=~LED1;
}
if(num2>1843)
{
num2=0;
LED2=~LED2;
}
}
}
void time0() interrupt 1
{
TL0=6;
num1++;
}
void time1() interrupt 3
{
TH0=6;
num2++;
}
请问这个程序有用到定时器1吗,怎么没设置它的工作方式的? 定时器1能工作,但不能中断,因为中断源已经被T0占用,具体LZ去查书吧,还有工作方式TMOD不是设置了吗 mo_fish 发表于 2013-5-7 23:55 static/image/common/back.gif
定时器1能工作,但不能中断,因为中断源已经被T0占用,具体LZ去查书吧,还有工作方式TMOD不是设置了吗 ...
en ,设置的是定时器0的,定时器1的不用吗? 这个程序一运行就会跑飞,因为定时器1没有中断服务程序,却开了中断。 定时器1只是开了中断
页:
[1]