79F1616A,按照手册初始化 定时器3 和定时器5. BANK 设置也是查看手册设置的。无法产生中断。仿真发现: 只有定时器 3的计数寄存器低8位在变,高8位不动。定时器5的 16位计数寄存器 一直不变。
SETBIT(INSCON,6); //BANK1
//T3CON=
SETBIT(T3CON,4); //T3PS0=1;256分頻
SETBIT(T3CON,5); //T3PS1=1;256分頻
CLRBIT(T3CON,0); //T3CLKS0=0;系统时钟,T3引脚做IO
CLRBIT(T3CON,1); //T3CLKS1=0;系统时钟,T3引脚做IO
CLRBIT(T3CON,2); //TR3=0;关闭定时器3
// SWTHL=0x03;
TL3=0x2b; //10mS定时
TH3=0xfe;
CLRBIT(INSCON,6); //BANK0
__enable_interrupt(); //开总中断
SETBIT(IEN1,4); //IEN1|=0x10;开定时器3中断
//TF3=0;清除中断请求位,硬件清零
SETBIT(INSCON,6); //BANK1
SETBIT(T3CON,2); //开始定时器3
//---------------------------------------------------------------
T5CON=0x30; //0X11 XX0X 256分频,禁止定时器5
CLRBIT(T5CON,1); //TR5=0;禁止定时器5
// SWTHL=0x03;
TL5=0x2b; //10mS定时
TH5=0xfe;
SETBIT(T5CON,1); //TR5=1;开始定时器5
CLRBIT(INSCON,6); //BANK0
// __enable_interrupt(); //开总中断
SETBIT(IEN0,1); //开定时器5中断 |