74HC164、74HC595都可以!也可以多单片机串联控制!具体的看项目!参考资料:也

单片机C51编程问题:要实现一个开关控制两个灯,按要求两个灯有3种状态,就要声明一个变量,每按一下开关,变量加一,且变量取值为1,2,3,大于3再回1,又重复控制两个灯亮灭变化。变量加一后,就根据变量的三个值,

1.把单片机一个IO口接到一个三极管(类似开关管)的控制脚(B),把开关管的输入脚接地(E),输出脚(C)接灯的负极,就形成了一个开关;2.接两个灯时,再加这样一个电路,组成并联电路,可以同时控制开和关。单片机

按键位置:P0.1;功能:1,当第一次按键按下,第一个灯亮,按键放开灯灭 2,当第二次按键按下,第二个灯亮,按键放开灯灭 3,重复执行前面两个步骤 灯的位置:P2口;/ include define uint unsigned

同时亮或灭,只能使用字节传送指令,如:MOV P1,11111100B 这样,P1.1和P1.0外接的LED将会同时亮。MOV P1,11111111B 这样,P1.1和P1.0外接的LED将会同时灭。不同时灭,可以在不同的时刻使用位操作指令,如:SETB

1、新建项目,如图所示。2、添加头文件,创建延迟函数。3、创建C主函数。4、添加死循环效果。5、点亮LED灯。P1=0x7e;二进制11111110。6、添加延迟效果即可。注意事项:Proteus 自从有了单片机也就有了开发系统,随着单片机的

比如要控制1-8号LED全亮,单片机先选择1号缓冲器,然后发送一个全亮的指令给1号缓冲器,1号缓冲器会记住单片机的这个全亮指令控制并保持(直到单片机再发送来新的指令更改1-8号LED的状态)自己管理的8个LED的状态。指令

单片机一个接口怎么控制两个LED灯?!

//KEY2按下LED2亮 LED1灭 main(){ while(1) { if (!key2) { led1 = 1; led2 = 0;} else { if(!key1) { Delay(10);if(!key1) { while(!key1);led1 = ~led1;} } } } } //--- in

LED2灯灭 led2=1; if(key5==0){//按键5按下,两个LED灯打开 led1=0; led2=0; } if(key6==0){//按键6按下,两个LED灯关闭 led1=1; led2=1; } }}业界良心,希望采纳

你只要先定义 sbit P0^0=LED0;一定定义下去 然后再定义一个按钮 比如P1.1 sbit P1^1=key;代码里写 123456789while(true){if(key==1){LED0=0;LED1=0;..//把你要亮的灯置0就行了。阳极的话置1}}

比如是八个led,可以先让中间两个量,然后再她们各自旁边的,一直这样循环。只要给八个IO口赋值就行,第一次赋值0x18,接着是0x24、0x42,、0x81,然后又是0x18,这样循环就可以实现由中间向两边移动的循环

编码方式 ,单片机的IO分成两路,一路直接接LED,另一路先通过一个 非门 再接LED,这样IO口输出0或者1时只点亮其中一个LED,即实现了控制。如果你还想要其他控制方式,那就是用串口的TXD发出数据了,这时要另一个单片机的

同时亮或灭,只能使用字节传送指令,如:MOV P1,11111100B 这样,P1.1和P1.0外接的LED将会同时亮。MOV P1,11111111B 这样,P1.1和P1.0外接的LED将会同时灭。不同时灭,可以在不同的时刻使用位操作指令,如:SETB

怎样用单片机控制两个LED同时亮

编码方式 ,单片机的IO分成两路,一路直接接LED,另一路先通过一个 非门 再接LED,这样IO口输出0或者1时只点亮其中一个LED,即实现了控制。如果你还想要其他控制方式,那就是用串口的TXD发出数据了,这时要另一个单片机的

比如要控制1-8号LED全亮,单片机先选择1号缓冲器,然后发送一个全亮的指令给1号缓冲器,1号缓冲器会记住单片机的这个全亮指令控制并保持(直到单片机再发送来新的指令更改1-8号LED的状态)自己管理的8个LED的状态。指令

点亮P1口的1个LED灯闪烁 手把手教你学会单片机,编程 ---*/ includereg52.h //头文件 //头文件包含特殊功能寄存器的定义 sbit LED0=P1^0;// 用sbit 关键字 定义 LED到P1.0端口, //LED是自己任意定义且容易记忆

4.怎么玩转单片机-IO输出-点亮多个LED灯方法2 第二种方法 单片机智能控制,单片机源代码 /*--- 名称:IO口高低电平控制 论坛: 编写: 日期: 修改:无 内容:通过P1点亮多个LED灯 ---*/ 这个代码很少哦,好好悟吧

4.怎么玩转单片机-IO输出-点亮多个LED灯方法2

include defineuint unsigned int void delay(uint time);void flicker(uint led);//呼吸灯 void init();uint t1=80;//闪烁频率 uint light=0;sbit k1=P3^2;sbit k2=P3^3;sbit led1=P1^6;sbit

把pwm的占空比调高,灯就慢慢亮了,把pwm的占空比调低,灯就会慢慢变暗,

LED灯就是一个低压的发光块当有微电流经过时就会闪你这两个灯应该是共用的零线吧所以你开一个开关有电流经过零线回到另一个灯里电流很小不足以点亮灯所以就闪了一下把电流放掉了想让他不闪就不能共用零线。左亮右灭,

MS: CPL P1.7 ; LED 慢 闪 MOV R7,#255 LCLL YS LL2: SETB P1.0 JB P1.0, MS KS: CPL P1.7 ; LED 快闪 MOV R7,#15 LCLL YS LL3: SETB

STM32程序:按键长按和短按的判断,用来控制LED灯,有借鉴了其他程序,但是有细节上的不同。短按是切换灯亮的状态,每按一下换一个状态,长按led灯快闪并且指示灯向4靠近,直到等于4是慢闪。如果只做长短按不需要注重

stm32呼吸灯,两个led灯,一个快闪一个慢闪

介绍一个新的编程方式,自己选好芯片,安装完parkage,勾选下面 建立main.c修改下面文件,配置gpio 接口函数,调用就行,自己尝试一下 main中包含头文件 具体实现自己来吧,都是从不会到会,种地也是

假定是让连续的两个灯亮,低电平点亮。可以用与运算对整个端口操作来实现:P1&=~(3<<0);//P1=0b1111 1100 P1&=~(3<<1);//P1=0b1111 1001 循环的话可以写成:P1&=~(3<

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD, ENABLE);GPIO_InitStructure.GPIO_Pin = LED_flicker_GPIO; //流水灯GPIO引脚配置 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //推挽输出 GPIO_InitStructure.

if或for语句来实现两个LED交替闪烁。在使用STM32单片机编写点亮流水灯的程序时,可以使用if或for语句来实现两个LED交替闪烁的效果,代码中可以通过判断条件(两个LED是否已经交替闪烁)来控制LED状态的变化,从而实现了两个LED

stm32跑马灯如何两盏灯亮

确切的说一个IO口在指定时间内仅能输出一种状态(高和低,可以用来代表LED的亮和灭)。 如果楼主非要让一个LED长时间亮着的话,那就用缓冲吧!一般为了提高效率,我们会8个IO口一起操作,缓冲器也支持并且就是这样做的(所谓缓冲就是一些可以保存IO口某一时刻状态的电路)。 通俗说,单片机并不直接控制每一个LED的亮灭,而是通过相对应的缓冲器来间接控制。比如要控制1-8号LED全亮,单片机先选择1号缓冲器,然后发送一个全亮的指令给1号缓冲器,1号缓冲器会记住单片机的这个全亮指令控制并保持(直到单片机再发送来新的指令更改1-8号LED的状态)自己管理的8个LED的状态。 指令交给1号缓冲器后,单片机就可以选择二号缓冲器并发送控制9-16号LED的指令了,然后选择三号缓冲器并发送17-24号LED的指令.... 直到发送指令到第三百七拾五号缓冲器控制2992-3000号LED。有一个问题就是这样会需要375个缓冲器,并且需要24个IO口(8个IO口控制LED灯,16个IO口控制缓冲器)。 这个电路的效果就是单片机仅需要375*3=1125条指令就可以完全控制一遍这3000个LED,如果使用的单片机速度不太慢的话,这几乎不到10个毫秒,一秒钟可以控制3000个LED状态改变100次以上,虽然这个方法有点笨,成本还比较高,但他只使用了24个IO口!当然高手也许只需要16个甚至更少的IO口就能办到。
1、新建项目,如图所示。 2、添加头文件,创建延迟函数。 3、创建C主函数。 4、添加死循环效果。 5、点亮LED灯。P1=0x7e;二进制11111110。 6、添加延迟效果即可。 注意事项: Proteus 自从有了单片机也就有了开发系统,随着单片机的发展开发系统也在不断发展。 keil是一种先进的单片机集成开发系统。它代表着汇编语言单片机开发系统的最新发展,首创多项便利技术,将开发的编程/仿真/调试/写入/加密等所有过程一气呵成,中间不须任何编译或汇编。