AT89C51单片机开关控制流水灯电路图,题如下面的图

上面被遮住的:按下key1键(松开后保持),把LED1-LED8顺序点亮,然后再从LED8-LED1顺序点亮,要求这三个key在同一个电路中实现

最最简单的方法就是3个io口接接那三个开关,用八个io口驱动八个灯,然后循环检测三个开关的状态并使用延时方式来驱动各个灯的亮灭追问

能来张图吗?

追答

我去,我在床上,怎么给图呀,硬件不难差不多是个最小系统,软件可能会有几十行

追问

看看应该怎么放

追答

你这全是草图吧,电源晶振复位电路什么都没有,不过灯和开关就可以就这么接了,反正不用考虑资源

你这全是草图吧,电源晶振复位电路什么都没有,不过灯和开关就可以就这么接了,反正不用考虑资源,我看到你说你程序是编好了的,那电路就不能随便乱接了,必须和程序配套

温馨提示:内容为网友见解,仅供参考
第1个回答  2016-05-20
先确定电路,以及编程语言。追问

就是不知道怎么画那个图,程序编好了的

追答

程序是编好了的,那电路就不能随便乱接了,必须和程序配套。

http://blog.163.com/asm_c/blog/static/24820311320111122423064/

参考。

本回答被网友采纳

用单片机控制的LED流水灯设计(电路、程序全部给出)
我们的核心是AT89C51单片机最小系统,其中包括8个LED灯、稳定工作的晶振,如图所示。每个LED的亮度控制权掌握在P1口的电平变换中,巧妙地调整即可实现动态的点亮效果。软件编程:点亮LED的艺术 流水灯的魅力在于其动态变化,而软件编程则是关键。这里,我们将采用位操作法,通过顺序控制P1口的位,实现LED的...

求高手给个AT89C51单片机流水灯电路图(PROTEL软件生成PCB,带源代码)
include <reg51.h> void delay(){ unsigned int i;for(i=0;i<32000;i++) ;} void main(){int a;while(a);{ P1 = 0xfe;delay();P1 = 0xfd;delay();P1 = 0xfb;delay();P1 = 0xf7;delay();P1 = 0xef;delay();P1 = 0xdf;delay();P1 = 0xbf;delay();P1 = 0x7f;d...

用单片机控制的LED流水灯设计(电路、程序全部给出)
硬件部分,流水灯基于单片机最小应用系统构建,仅需八个LED、晶振、复位、电源等基本元件,每个LED的亮灭控制依赖P1口的电平调节。通过控制P1.0到P1.7的电平变化,连续点亮和熄灭,创造出流水灯效果。软件编程部分,有三种方法:位控法通过逐个位操作控制LED,虽然直观但代码较长;循环移位法利用循环指令...

用单片机控制的LED流水灯设计
实现流水灯功能的关键在于控制单片机I\/O口电平,通过编程实现LED的点亮与熄灭。本设计采用多种编程方法,包括位控法、循环移位法和查表法。3.1 位控法 通过顺序控制P1口的每个位,实现LED的循环点亮与熄灭。程序简单,但代码量大。3.2 循环移位法 利用循环移位指令,简化代码,实现LED的流水效果。3....

at89c51单片机的七段显示数码管和流水灯的编程
假设P1口接8个LED灯,通过灌电流驱动(即0亮1灭)。单片机设计程序,首先你需要明白单片机的一些基本原则的原理,你在明白之后才能够去根据软件的功能采取设计。你的LED用错模型了,要用LED-RED那几个后面带颜色的。};flag++;}74HC164就是个移位寄存器,假设你使用的单片机是12M晶振,使用定时器1,...

循环流水灯电路原理
方法一:NE555产生秒脉冲,74LS161作计数器,用75LS154译码输出显示。154的1~12输出接LED(通过限流电阻共正),13输出接161的清零端。图就不画了。方法二:用一89c52最小系统。方法一省心;方法二省钱。当按下按钮开关SB时,电容C1充电,继电器KA1吸合,触点KA1-2接通,所连灯组点亮,同时触点KA1...

求基于单片机流水灯 硬件图中各器件的名称,谢啦
图里有几种器件:1.中间黄色的是AT89C51,Atmel公司生产的51系列单片机 2.两条平行线的是电容,有30pF和1uF的 3.空心方框的是电阻有4.7K8个和另一个100?(看不清)4.两个平行线中间加一个方框的是晶振,12MHz的 5.右侧一排蓝色三角形带竖线带向外箭头的是发光二极管 6.1uF电容右侧的是按钮 ...

AT89C51单片机的P1口控制8盏LED流水灯
void delay02s(void) \/\/ 延时0.2s子程序 { unsigned char i,j,k;for ( i=2;i>0;i-- )for (j=200;j>0;j-- )for (k=250;k>0;k-- );} void main (void) \/\/ 主函数 { uchar i,j;while (1) \/\/ 死循环 { j=0x01; \/\/ j初始化为0x01,左...

大家好,我现在用proteus作at89c51的“从左到右的流水灯实验”,但不知...
1、P0口如果不加上拉电阻的话是高阻态,这是没办法识别高低电平的,也就是无论你对P0赋什么值,它都不会出现0或1的结果。解决办法:加一个10K的上拉排阻到P0口。2、图中你的P0口和LED并没有真正连接上吧,你用了总线的接法,但是没有用网络连接的方式将LED连接到对应的IO。解决方法:点击...

求个AT89C51单片机流水灯(16个灯)设计电路图和汇编程序,
电路图最简单的是 一个IO口驱动一个LED,用灌电流的方式,不加驱动电路。至于3中不同的闪烁方法,就有很多了,30种都有。至于程序,只要给这16个口服不同的值就可以了。很少有人会为一个问题而专门写汇编程序。

相似回答