51单片机定时器中断问题 谁能给解释一下

/********************************************************************************标题:试... /*******************************************************************************
* 标题: 试验数码管上显示定时器中断计数 *
* *
* 连接方法:参照接线图 *
********************************************************************************
* *
* 请学员认真消化本例程,用单片机脚直接控制数码管和定时器中断使用 *
********************************************************************************/
#include < reg51.h >
#include <intrins.h>
sbit LS138A=P2^2; //定义 138管脚
sbit LS138B=P2^3;
sbit LS138C=P2^4;

unsigned int LedNumVal,LedOut[8];
// 此表为 LED 的字模 // 0 1 2 3 4 5 6 7 8 9 A b c d E - L P U Hidden _ (20)
unsigned char code Disp_Tab[] = { ~0xC0,~0xF9,~0xA4,~0xB0,~0x99,~0x92,~0x82,~0xF8,~0x80,~0x90,~0x88,~0x83,~0xC6,~0xA1,~0x86,~0xbf,~0xc7,~0x8c,~0xc1, ~0xff, ~0xf7 };

/***********************************************************
purpose: 系统初始化
/**********************************************************/
void system_Ini()
{
TMOD = 0x00; //选择模式0 13位计数 最大计数8192

// TH0=0x1C; //12.000M 预装初值
//TL0=0x18;
TH0 = (8192 - 1000)/32;
TL0 = (8192 - 1000)%32 ;
IE = 0x8A; //中断
TR0 = 1; //开启T0定时器

}
void delay(unsigned int i)
{
char j;
for(i; i > 0; i--)
for(j = 200; j > 0; j--);
}

/********主函数****/
main()
{
system_Ini() ;

while(1)
{

unsigned char i;

LedOut[0]=Disp_Tab[LedNumVal%10000/1000];
LedOut[1]=Disp_Tab[LedNumVal%1000/100];
LedOut[2]=Disp_Tab[LedNumVal%100/10];
LedOut[3]=Disp_Tab[LedNumVal%10];

for( i=0; i<8; i++)
{ P0 = LedOut[i]; (这里当等于4567时怎么办)

switch(i) (这里我的板子是共阴的38线怎么中亮四个管)
{
case 0:LS138A=0; LS138B=0; LS138C=0; break; //01111111
case 1:LS138A=1; LS138B=0; LS138C=0; break; //11101111
case 2:LS138A=0; LS138B=1; LS138C=0; break; //11011111
case 3:LS138A=1; LS138B=1; LS138C=0; break; //11111101
case 4:LS138A=0; LS138B=0; LS138C=1; break; //10111111
case 5:LS138A=1; LS138B=0; LS138C=1; break; //11111011
case 6:LS138A=0; LS138B=1; LS138C=1; break; //11101111
case 7:LS138A=1; LS138B=1; LS138C=1; break; //11111110

}
delay(150);
}
}
}

/*************************************
[ T0 (1ms)中断] 中断
*************************************/
void T0zd(void) interrupt 1 //3定时器1的中断号 1定时器0的中断号 0外部中断1 2外部中断2 4串口中断
{
//TH0 = 0xFc; //12.000
//TL0 = 0x18;
TH0 = (8192 - 1000)/32 ;
TL0 = (8192 - 1000)%32;
LedNumVal++;
}
展开
 我来答
零下一度的沙漠
2015-04-11 · TA获得超过563个赞
知道小有建树答主
回答量:1690
采纳率:0%
帮助的人:361万
展开全部
你的疑问呢?你是看不懂这些代码让我们解释下吗?你可以看看单片机的书 这对你很有帮助 不需要求助于他人
一剑出血
高粉答主

2015-04-08 · 醉心答题,欢迎关注
知道大有可为答主
回答量:5.7万
采纳率:78%
帮助的人:1.7亿
展开全部
……你想问什么?把有疑问的地方说出来。
追问
疑问就是程序中括号的问题  请大神帮忙解释一下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
查晓筠0i5
2015-04-08 · TA获得超过2752个赞
知道大有可为答主
回答量:2.1万
采纳率:1%
帮助的人:4976万
展开全部
需要给你完成一份吗
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
死爱芙蓉
2015-04-08 · TA获得超过231个赞
知道小有建树答主
回答量:522
采纳率:0%
帮助的人:236万
展开全部
问题呢?汗
追问
疑问就是程序中括号的问题  请大神帮忙解释一下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式