C52单片机--知识概述

单片机定时器\计数器模块:

TMOD的标志位:

1.定时模式GATE=0

  • TMOD=0X01(T0工作方式 1)
  • TMOD=0X02(T0工作方式 2)
  • TMOD=0X10(T1工作方式 1)
  • TMOD=0X20(T1工作方式 2)

2.计数模式GATE=0

  • TMOD=0X05(T0工作方式1)
  • TMOD=0X06(T0工作方式2)
  • TMOD=0X50(T1工作方式1)
  • TMOD=0X60(T1工作方式2)

实验代码演示:

#include "reg52.h"typedef unsigned int u16;
typedef unsigned char u8;sbit LED1=P2^0;void delay_10us(u16 ten_us)
{while(ten_us--);	
}void time0_init(void)
{TMOD|=0X01;TH0=0XFC;TL0=0X18;	ET0=1;EA=1;TR0=1;
}void main()
{	time0_init();while(1){			}		
}void time0() interrupt 1 
{static u16 i;TH0=0XFC;TL0=0X18;i++;if(i==1000){i=0;LED1=!LED1;	}						
}
#include "reg52.h"typedef unsigned int u16;
typedef unsigned char u8;sbit LED1=P2^0;void delay_10us(u16 ten_us)
{while(ten_us--);	
}void time1_init(void)
{TMOD|=0X10;TH1=0XFC;TL1=0X18;	ET1=1;EA=1;TR1=1;	
}void main()
{	time1_init();while(1){			}		
}void time1() interrupt 3
{static u16 i;TH1=0XFC;TL1=0X18;i++;if(i==1000){i=0;LED1=!LED1;	}						
}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部