×
单片机 > 单片机程序设计 > 详情

proteus与keil Cx51的单片机仿真(定时器应用1)

发布时间:2020-09-03 发布时间:
|
使用定时器定时,每隔10s使与P0、P!、P2、P3口连接的发光二极管闪烁10次;设P0、P!、P2、P3口低高电平灯亮,反之灯灭。

电路图:Cx51的单片机仿真(定时器应用1)">

C程序:

 #include
#include
#define uchar unsigned char
bit flag;
void delay();
uchar IntNumber,Flashnumber;//T0中断次数,闪烁次数
void main()
{
    TMOD=0x01;//T0方式1
    TL0=0xb0;
    TH0=0x3c;//定时器赋初值
    EA=1;//开总中断
    ET0=1;//开T0中断
    TR0=1;//启动T0
    IntNumber=200;//T0中断次数初始化
    flag=0;
while(1)
    {
      if(flag==1)
      {
        flag=0;
        for(Flashnumber=0;Flashnumber<10;Flashnumber++)
          {
            P0=0x00;P1=0x00;P2=0x00;P3=0x00;delay();//灯亮
            P0=0xff;P1=0xff;P2=0xff;P3=0xff;delay();//灯灭
           }
       }
     }
  }
void Int_T0() interrupt 1 using 2
{
    TL0=0xb0;//重赋初值
    TH0=0x3c;
    IntNumber-=1;//T0中断次数减1
    if(IntNumber==0x00)
    {
      IntNumber=200;
      flag=1;//10s到,闪烁标志位置1
     }
}
void delay()
{
    uchar i,j;
    for(i=0;i<255;i++)
    for(j=0;j<255;j++)
    ;
}


关键字:proteus keil Cx51 单片机仿真 定时器

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
单片机的抗干扰措施有哪些