中断程序小小疑问

2020-01-30 13:38发布

#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吗,怎么没设置它的工作方式的?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
mo_fish
1楼-- · 2020-01-30 19:02
定时器1能工作,但不能中断,因为中断源已经被T0占用,具体LZ去查书吧,还有工作方式TMOD不是设置了吗
小德GD
2楼-- · 2020-01-30 21:25
mo_fish 发表于 2013-5-7 23:55
定时器1能工作,但不能中断,因为中断源已经被T0占用,具体LZ去查书吧,还有工作方式TMOD不是设置了吗 ...

en ,设置的是定时器0的,定时器1的不用吗?
barryliu
3楼-- · 2020-01-30 22:06
 精彩回答 2  元偷偷看……
zjk
4楼-- · 2020-01-31 03:30
定时器1只是开了中断

一周热门 更多>