您的位置:控制工程论坛网论坛 » 教程与手册 » 定时计数器T0作定时应用技术(一)

xilinxue

xilinxue   |   当前状态:在线

总积分:16186  2025年可用积分:0

注册时间: 2008-06-26

最后登录时间: 2020-03-22

空间 发短消息加为好友

定时计数器T0作定时应用技术(一)

xilinxue  发表于 2008/9/20 13:23:16      558 查看 0 回复  [上一主题]  [下一主题]

手机阅读

#include <AT89X51.H>
 
unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f,
                               0x66,0x6d,0x7d,0x07,
                               0x7f,0x6f,0x77,0x7c,
                               0x39,0x5e,0x79,0x71,0x00};
unsigned char second;
unsigned char tcount;
 
void main(void)
{
  TMOD=0x01;
  TH0=(65536-50000)/256;
  TL0=(65536-50000)%256;
  TR0=1;
  ET0=1;
  EA=1;
  tcount=0;
  second=0;
  P0=dispcode[second/10];
  P2=dispcode[second%10];
  while(1);
}
 
void t0(void) interrupt 1 using 0
{
  tcount++;
  if(tcount==20)
    {
      tcount=0;
      second++;
      if(second==60)
        {
          second=0;
        }
      P0=dispcode[second/10];
      P2=dispcode[second%10];             
    }
  TH0=(65536-50000)/256;
  TL0=(65536-50000)%256;
}


 

1楼 0 0 回复