外接晶振为11.0592MHz的STC11F04E单片机,求延时60s函数c程序
答案:3 悬赏:60
解决时间 2021-11-25 12:47
- 提问者网友:猖狂醉薇
- 2021-11-25 00:50
外接晶振为11.0592MHz的STC11F04E单片机,求延时60s函数c程序
最佳答案
- 二级知识专家网友:废途浑身病态
- 2021-11-25 01:47
#include "reg51.h"
unsigned int YSJS=0;
bit time=0
void main(void)
{
AUXR &= 0xBF; //定时器时钟12T模式
TMOD &= 0x0F; //设置定时器模式
TMOD |= 0x10; //设置定时器模式
TL1 = 0x00; //设置定时初值
TH1 = 0xEE; //5毫秒@11.0592MHz
TF1 = 0; //清除TF1标志
TR1 = 1; //定时器1开始计时
ET1 = 1;//使能定时器1中断
EA =1; //开总中断
if(time==1)
{
time=0
//1秒时间到,加入自己处理程序
}
}
void TIMER1(void) interrupt 3 //定时器1中断函数使用默认寄存器组
{
TL1 = 0x00; //设置定时初值
TH1 = 0xEE; //5毫秒@11.0592MHz
YSJS++;
if(YSJS==200) //5000uS*200=1000000us=1s
{
time = 1;
YSJS = 0;
}
}
unsigned int YSJS=0;
bit time=0
void main(void)
{
AUXR &= 0xBF; //定时器时钟12T模式
TMOD &= 0x0F; //设置定时器模式
TMOD |= 0x10; //设置定时器模式
TL1 = 0x00; //设置定时初值
TH1 = 0xEE; //5毫秒@11.0592MHz
TF1 = 0; //清除TF1标志
TR1 = 1; //定时器1开始计时
ET1 = 1;//使能定时器1中断
EA =1; //开总中断
if(time==1)
{
time=0
//1秒时间到,加入自己处理程序
}
}
void TIMER1(void) interrupt 3 //定时器1中断函数使用默认寄存器组
{
TL1 = 0x00; //设置定时初值
TH1 = 0xEE; //5毫秒@11.0592MHz
YSJS++;
if(YSJS==200) //5000uS*200=1000000us=1s
{
time = 1;
YSJS = 0;
}
}
全部回答
- 1楼网友:猖狂的痴情人
- 2021-11-25 03:36
关注
mark
- 2楼网友:而你却相形见绌
- 2021-11-25 02:07
你好!
关注
mark
如有疑问,请追问。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯