用五一单片机控制led灯亮两秒灭一秒程序编写

如题所述

第1个回答  2015-04-27
#include<reg51.h>
void delay1s()
{
unsigned chari,j,k;
for(i=10;i>0;i--)
for(k=200;k>0;k--)
for(j=250;j>0;j--);
}

void delay2s()
{
unsigned chari,j,k;
for(i=20;i>0;i--)
for(k=200;k>0;k--)
for(j=250;j>0;j--);
}

void main()
{
while(1)
{
P1=0x00;
delay2s();
P1=0xff;
delay1s();
}
}追问

用中断和循环的方法,不用c语言,是单片机编程

追答

z这位兄台,上面的程序不是单片机编程吗?
#include‘’reg51.h‘’
#define uint unsigned int
uint time;
void main()
{
TMOD=0x01;
TH0=(65536-10000)/256;//定时10ms
TL0=(65536-10000)%256;
ET0=1;EA=1;
while(1);
}
void in() interrupt 1
{
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;
if(time==0) //开始P1输出0
{P1=0x00}
time++;
if(time==200)//接着输出1 持续(300-200)*10ms=1s
{P1=0xFF;}
if(time==300) //接着使time=0,执行之前的程序
{time=0;}
}

本回答被网友采纳
相似回答