单片机C语言编程,定时计数器无法嵌套

来源:百度知道 编辑:UC知道 时间:2024/06/13 23:29:57
我想在60秒倒数后进入中断,关闭所有的定时计数器,但就是进入不了T0中断,请高手们指点一下,感激不尽

#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
uchar num,num1,num2,num3,num4,num5,shi,ge;
uint z,tt;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
void delay(uint);
sbit dula=P2^6;
sbit wela=P2^7;
sbit bell=P2^3;
void delay(uint);//中断子函数申明
void display(uchar,uchar);
void main()
{
TMOD=0x11;
//工作方式寄存器GATE C/T M1 M0分别为0 0 0 1 0 0 0 1。GATE为0 定时/计数器只受TCON的TRX(x=0/1)
//GATE为1 除TRX外,还受外部中断引脚P3.2 INT0和P3.3 INT1共同控制;
//C/T为0 定时器;C/T为1 计数器
TH0=(65535-45872)/256;//装初值 Tcy=12/时钟周期11.0592M N=T/Tcy=50000/1.09=45872
TL0=(65535-45872)%256;
TH1=(65535-45872)/256;//装初值 Tcy=12/时钟周期11.0592M N=T/Tcy=50000/1.09=45872
TL1=(65535-45872)%256;
EA=1;//开中断,位于中断允许寄存器IE的最高位AFH
ET0=1;//开

参考答案上Google上百度一下

发现keil c main前有void 编译不过。

uchar num,num1,num2,num3,num4,num5,shi,ge;
这几个8位的东西最大值是多少,能到1225吗?
仔细检查一下代码

看天祥大哥的视频