高分求 单片机延时5分钟程序

来源:百度知道 编辑:UC知道 时间:2024/05/04 18:28:29
89C52 IC 单片机

4分半钟 IC 1脚 低电平
5分钟 IC 2脚 低电平
10分钟 IC 3脚 低电平
15分钟 IC 4脚 低电平

/*-----------------------------------------------
注:1.硬件应使用12MHz晶振;
2.程序使用定时器0,溢出周期50ms,计90次溢出为
4分半,其它以此类推,15分到时IC4脚(P1.3)输
出低电平,然后关闭定时器,停止计数。
-------------------------------------------------*/

#include<reg52.h>

sbit P10=P1^0;
sbit P11=P1^1;
sbit P12=P1^2;
sbit P13=P1^3;

unsigned char Count=0;
unsigned char Half_Min=0;

void main()
{
TMOD=0x01;
TH0=0x3C;
TL0=0xB0;
ET0=1;
EA=1;
TR0=1;

while(1);
}

void timer_0() interrupt 1
{
TH0=0x3C;
TL0=0xB0;

Count++;

if(Count>10) //大于10则为500ms
{Half_Min++;
Count=0;

switch(Half_Min)
{
case 9:P10=0;break; //4分半
case 10:P11=0;break; //5分
case 20:P12=0;break; //10分
case 30:P13=0;TR0=0;break; //15分
default:break;