急求stc11f02e单片机通电让P1^1和P1^2口上的led延时3秒后常亮
答案:1 悬赏:70 手机版
解决时间 2021-04-01 13:34
- 提问者网友:最美的风景
- 2021-03-31 13:19
急求stc11f02e单片机通电让P1^1和P1^2口上的led延时3秒后常亮
最佳答案
- 五星知识达人网友:佘樂
- 2021-03-31 14:08
//假设晶振12MHZ
//P1控制LED低电平亮
#include "reg51.h"
unsigned int YSJS=0;
void main(void)
{
TMOD |= 0x10; //定时器1工作于方式1,16位定时器
TL1 = 0x78; //设置定时初值
TH1 = 0xEC; //定时器1定时时间=5000us
ET1 = 1; //使能定时器1中断
TR1 = 1; //启动定时器1
EA =1; //开总中断
P1 = 0xFF;
while(1)
{
}
}
void TIMER1(void) interrupt 3 //定时器1中断函数使用默认寄存器组
{
TL1 = 0x78; //设置定时初值
TH1 = 0xEC; //定时器1定时时间=5000us
YSJS++;
if(YSJS==600) //5000uS*600=3000000us=3s
{
TR1 = 0; //停止定时器1
P1 = P1 & 0xF9H
}
}
//P1控制LED低电平亮
#include "reg51.h"
unsigned int YSJS=0;
void main(void)
{
TMOD |= 0x10; //定时器1工作于方式1,16位定时器
TL1 = 0x78; //设置定时初值
TH1 = 0xEC; //定时器1定时时间=5000us
ET1 = 1; //使能定时器1中断
TR1 = 1; //启动定时器1
EA =1; //开总中断
P1 = 0xFF;
while(1)
{
}
}
void TIMER1(void) interrupt 3 //定时器1中断函数使用默认寄存器组
{
TL1 = 0x78; //设置定时初值
TH1 = 0xEC; //定时器1定时时间=5000us
YSJS++;
if(YSJS==600) //5000uS*600=3000000us=3s
{
TR1 = 0; //停止定时器1
P1 = P1 & 0xF9H
}
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯