可以用for循环试试unsingned char i;for(i=0;i<5;i++)//流水灯闪烁程序。若干个灯泡依次点亮就叫流水灯,它用在夜间建筑物装饰方面。例如在建筑物的棱角上装上流水灯,可起到变换闪烁美不胜收的效果。单片机(Single-

1、用精确定时的方法,设置流水灯运行时的时间间隔,延时时间为500MS。2、#include "reg51.h"首先写出单片机的头函数。3、#include "intrins.h"输入位移函数。4、unsigned int count=0,led;定义函数。5、输入主函数,定

单片机流水灯程序代码(汇编语言):ORG0000HAJMPMAINORG0030HMAIN:MOVP1,#11111110BACALLDELAY;跳转到子程序MOVP1,#11111101BACALLDELAYMOVP1,#11111011BACALLDELAYMOVP1,#11110111BACALLDELAYMOVP1,#11101111BACALLDELAYMOVP1,

单片机流水灯代码:#include//51头文件void delay(int t)//定义延时函数{int j;while(t--){for(j=0;j<500;j++);}}void main(){int i;while(1){for(i=0;i<7;i++)//循环点亮LED

单片机流水灯程序

你把P1.0引脚和P1.1引脚的LED看做数据的比特位,每次输出后加1,延时一段时间后继续输出。大致的流程是这样:1. 初始化寄存器值 al=0 2. 将寄存器值输出到p1口 3. 延时1秒 4. 寄存器值加1 5. 重新回到第2步

include sbit P32 = P3^2;sbit LED = P1^1;void main(){ IE = 129; while(1);}void X0_Int() interrupt 0{ while(!P32) LED = 0; LED = 1;}

cpl p1.1 ;1S求反一次,如果P1.1接一LED,即每秒亮或灭一次。sjmp loop ;返回loop,继续。end

p1=~(1< >8;tl0=-50000;ms++;if(ms>20){ms=0;secflag=1;}//12mhz,50ms定时中断,1秒计时。} 你很容易扩展出任意要求的闪烁流水灯啦。display(2,1);display(1,1);display(3,2);display(1,2);……放到wh

LED1=0;(低电平驱动)LED0=1;(高电平驱动)LED1=1;(高电平驱动)字节操作:define LED_Port P1 define LED0 0 define LED1 1 LED_Port &=~(1<

【1】C51硬件上,必须LED阴极接IO口,阳极接VCC,记得串个电阻。因为Ioh非常小。接反了,啥都不亮。(所以P11=1肯定不会亮的)【2】楼上的程序不完善或不准确。P1^1语法错了,他们没有调试过,呵呵。我调过了 inclu

新手学单片机。要在89C51上实现点亮一个LED?要怎么写C程序?用P1.1口接一个LED。一定要用C写。

例如每间隔1毫秒电平取反一次就可以改变亮度。那你在用个变量值来给这个时间赋值。就能调亮度了啊,比如你接个电位器电位器值改变你程序你就让定时器时间也相应跟着变动 如何用单片机控制LED灯的亮度,不要PWM波的程序 程序

方法1:用8050的三极管做开关电路,三极管的基极接P2.0,然后用集电极通过LED接5v电源,发射极通过220欧姆电阻接地。执行SETB P2.0 指令可以点亮led。方法2:用P1.0直接驱动led,应该让led另一端通过220欧姆电阻接5v

单片机(microcontroller)可以通过控制其硬件输出接口来控制LED灯的亮灭。在使用单片机控制LED之前,需要对单片机的硬件进行接线和配置。首先,将LED的正极接入单片机的硬件输出口,将LED的负极接入单片机的地。然后,使用单片机编程

在上述代码中,我们首先将P1口设置为全灭状态,然后使用一个循环将P1口设置为全亮状态,并延时1秒钟。接着,我们将P1口设置为全灭状态,并再次延时1秒钟。这样,LED灯就会一亮一灭间隔1秒。需要注意的是,上述代码中的延

LED_D1 =1;//=1亮灯 ,=0灭灯当也要看电路,完善的电路还会有驱动电路如三极管点了,也要看LED固定的那端是接地还是接VCC。最终无非就是通过单片机的IO口输出一个0或1来是LED二极管电路正向导通形成发光。

1、创建项目,如图所示。2、创建延迟函数。3、创建C语言主函数。设计unsigned char k=0;变量。4、添加循环效果。5、点亮灯,通过k++,改变效果。6、添加延迟效果,单片机就可以控制8个灯依次亮,全亮了,然后再依次灭。

如何通过单片机来控制LED灯的亮灭?

LED = 1; //灯灭 } count++;if(count == CYCLE){ count=0;if(PWM_ON!=0) //如果左右时间是0 保持原来状态 LED = 0; //灯亮 }}有什么不明白的可以问我!

i0.0为启动按钮,Q0.0为指示灯 按I0.0,当I0.0断开后开始计时,Q0.0亮5秒,熄灭5秒,如此运行5次后停止 网络1 LD I0.0 TOF T101, 5000 网络2 LDW<= 1, T101 AW> 501, T101 LDW<=

1){if (!KEY_0 ) { // 按键KEY_0被按delayus(20); //消抖动 if (!KEY_0 ) { //确认被按下 LED_7=~LED_7 //灯亮或灭}}} 其余一样即可。

5.测试控制:完成上传后,单片机将开始执行程序。LED灯应该会按照程序中定义的亮灭时间间隔进行控制。您可以观察LED灯的状态,验证控制是否正常。请注意,具体的步骤和代码可能因单片机型号和开发环境而有所不同。因此,在进行

同时,程序判断计时器是否超过了3秒,如果是,则点亮LED。最后,程序将计时器清零,等待下一次按键操作。

include#define uchar unsigned charuchar cnt1,cnt2;sbit led1=P1^0;sbit led2=P1^1;void ext0() interrupt 0{cnt1=0led1=0;}void ext1() interrupt 2{cnt2=0;led2=0;}void t0isr() interrupt

当单片机LED灯一亮一灭间隔1秒时,可以使用以下代码实现:// 初始化IO口 P1 = 0xFF; // 设置延时时间 while (1) { P1 = 0x00; // 延时1秒 for (int i = 0; i < 10000; i++) { // 空循环 } P1 =

关于stc单片机做LED点亮和灭的时间控制程序问题?

文件名 : 流水灯.c 描述 : 该程序实现LED的流水灯显示。该程序用于学习 LED流水灯 的控制方法。本例中是调用的 intrins.h 中的函数实现的循环移位。创建人 : 东流,2009年8月27日 版本号 : 1.0 / inc

include define uchar unsigned char sbit key=P3^3;uchar led=0x01;void delay(uchar a){ uchar i,j;for(i=0;i

P3=seg3[c];} } while(P2_3==0){ for(d=0;d<4;d++) //查表显示花样 4 { delay(500);P1=seg4[d];P3=seg4[d];} while(P2_4==0){ for(e=0;e<4;e++) //查表显示花样5 { delay(500

单片机流水灯代码:#include//51头文件void delay(int t)//定义延时函数{int j;while(t--){for(j=0;j<500;j++);}}void main(){int i;while(1){for(i=0;i<7;i++)//循环点亮LED

03 8只LED左右来回点亮 /* 名称:8只LED左右来回点亮 说明:程序利用循环移位函数_crol_和_cror_形成来回滚动的效果 / include include define uchar unsigned char define uint unsigned int /

sbit led7 = P2^6;sbit led8 = P2^7;void main(){ int i,j;//点亮第一个灯 led1 = 1;led2 = 0;led3 = 0;led4 = 0;led5 = 0;led6 = 0;led7 = 0;led8 = 0;//延时1秒 for(i = 0;i <

proteus电路图 画法依旧不说,给出元件清单,其实都差不多,与上篇一致51单片机 电容 瓷片电容 晶振 红色二极管 电阻 电路图如图 程序清单 说明:流水灯的闪亮方法肯定不是唯一的,按照各种形式都可以写出所需的程序,这里只用

51单片机C程序实验LED灯:[4]花样流水灯

没想法就不会有创新,你的想法就很好。像这种亮灯的程序,对时间要求不是那么严格(如果极其严格就没法实现),那么可以采用如下方法实现你的要求://假设晶振12MHZ,按键输入P1.0,P1.1,P1.2;LED控制P2.0,P2.1,P

;led1=0;led2=1;led3=1;}if(s2==0){while(s2==0);led1=1;led2=0;led3=1;}if(s3==0){while(s3==0);led1=1;led2=1;led3=0;}if(s4==0){while(s4==0);led1=0;led2=0;led3=0;}}}

你可以按照以下步骤编写STC8G1K08芯片的LED点亮和灭的时间控制程序:设置芯片的时钟和计数器,以便实现时间控制。例如,可以使用定时器或延时函数来控制时间。在主函数中编写程序,实现LED点亮和灭的时间控制。可以使用if语句或

即使不这样改,delayms是子程序,一般都是for循环实现的 用if的话:led=0;可以改成if(led==1)led=0;led=1;可以改成if(led==0)led=1;

2.连接电路:将LED灯与单片机连接起来。一般情况下,将LED的正极连接到单片机的一个GPIO引脚,将LED的负极连接到电阻,然后将电阻的另一端连接到单片机的地(GND)引脚。确保连接牢固。3.编写程序:使用单片机的编程软件(如A

现功能:按下按键三个全亮,在按下LED2灭,再按下三个LED全灭,如此循环,相当于三档,第三档是停止。第一档和第二档定时5S,5S终了,停止运行,如果此时再按1次则回到第一档。如果5S之内按下,则切换到下一档,实现

单片机按键时间3sled亮的程序是什么

位操作: sbit LED0=P1^0; sbit LED1=P1^1; LED0=0;(低电平驱动) LED1=0;(低电平驱动) LED0=1;(高电平驱动) LED1=1;(高电平驱动) 字节操作: #define LED_Port P1 #define LED0 0 #define LED1 1 LED_Port &=~(1<<LED0);(低电平驱动 LED0) LED_Port &=~(1<<LED1);(低电平驱动 LED1) LED_Port |=1<<LED0;(高电平驱动 LED0) LED_Port |=1<<LED1;(高电平驱动 LED1) 其中,每个LED 的另一种驱动方式 就是 它的熄灭 语句。
如果要控制LED亮度的话,估计不是给I/O口送值这么简单。可能需要增加PWM模块来控制LED的亮度
1、用精确定时的方法,设置流水灯运行时的时间间隔,延时时间为500MS。 2、#include "reg51.h"首先写出单片机的头函数。 3、#include "intrins.h"输入位移函数。 4、unsigned int count=0,led;定义函数。 5、输入主函数,定义单片机的端口,写入延时函数。 6、中断跳转,使流水灯运行起来。
第4题 89S51 单片机的P1 口接有 8个 LED,当某一端口输出为“0”时,相应的 LED 点亮,P3.2、P3.3、P3.4、P3.5 分别接有四个按钮 K1~K4,按下按钮时,相应引脚被接地。现要求编写可键控的流水灯程序,当 K1 按下时,开始流动,K2 按下时停止流动,全部灯灭,K3 使灯由上往下流动,K4 使灯由下往上流动。 #include "reg51.h" #include "intrins.h" #define uchar unsigned char void mDelay(unsigned int DelayTime) { unsigned int j=0; for(;DelayTime>0;DelayTime--) { for(j=0;j<125;j++) {;} }} uchar Key() { uchar KeyV; uchar tmp; P1=P1|0x3c; //四个按键所接位置 KeyV=P1; if((KeyV|0xc3)==0xff) //无键按下 return(0); mDelay(10); //延时,去键抖 KeyV=P1; if((KeyV|0xc3)==0xff) return(0); else { for(;;){ tmp=P1; if((tmp|0xc3)==0xff) break;} return(KeyV);}} void main() { unsigned char OutData=0xfe; bit UpDown=0; bit Start=0; uchar KValue; for(;;) { KValue=Key(); switch (KValue) { case 0xfb: //P3.2=0,Start { Start=1; break; } case 0xf7: //P3.3=0,Stop { Start=0; break; } case 0xef: //P3.4=0 Up { UpDown=1; break; } case 0xdf: //P3.5=0 Down { UpDown=0; break; } } if(Start) { if(UpDown) OutData=_crol_(OutData,1); else OutData=_cror_(OutData,1); P2=OutData; } else P2=0xff; //否则灯全灭 mDelay(1000); } }