#include <reg51.h>燃谈
#define uchar unsigned char
sbit LED=P1^0
uchar time
void InitTimer0(void)
{
TMOD = 0x01 //定时宽段肢器0,工作方式1
TH0 = 0x3c
TL0 = 0xb0 慎世 //50ms中断一次
EA = 1
ET0 = 1
TR0 = 1
}
void main(void)
{
InitTimer0()
while(1)
if(time==20) //中断20次,1s
{
time=0
LED=!LEDP1.0上的LED1s亮灭一次
}
}
void Timer0Interrupt(void) interrupt 1
{
TH0 = 0x3c
TL0 = 0xb0
time++
}
1、#include <reg52.h>
2、#define uchar unsigned char
3、#define uint unsigned int
4、sbit LED = P0^0uchar T_Count = 0void main(){TMOD = 0x01TH0 = (65535-50000)/256TL0 = (65535-50000)%256IE = 0x82TR0 = 1while(1)}
5、void LED_Flash() interrupt 1{TH0 = (65535-50000)/256TL0 = (65535-50000)%256if(++T_Count == 20){LED = !LEDT_Count = 0}}
6、这个程序是1秒钟LED灯会亮与灭显示。
1单片机,拥圆肢有两个定时器,用来中断计数,分别是T0和T1。而52单片机和51单片机的定时器是一样的,橘态世只是52比51多了一个闭野定时器/计数器T2,它们的设置都大同小异。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)