使用8051闪烁1个LED

这是关于8051的第一个项目,当然也是最简单的一个,使用8051闪烁的LED。电路中,按键开关S1、电容C3和电阻R3构成复位电路。当S1被压下时,复位引脚(pin9)处的电压升高,芯片复位。C1, C2和X1与产生所需时钟频率的片上振荡器有关。选择P1.0 (pin1)作为输出引脚。当P1。o变高,晶体管Q1正偏,LED亮起。当P1.0降低时,晶体管关闭,LED熄灭。可以避免LED的晶体管驱动电路,LED可以用串联限流电阻(~1K)直接连接到P1.0引脚。P1的时间。o goes high and low (time period of the LED) is determined by the program. The circuit diagram for blinking 1 LED is shown below.

闪烁一个led 8051
使用8051闪烁LED

程序

开始:CPL P1.0呼叫等待SJMP开始等待:MOV R4、#05H WAIT1:MOV R3、#00H WAIT2:MOV R2、#00H WAIT3:DJNZ R2、WAIT3 DJNZ R3、WAIT2 DJNZ R4、WAIT1 RET

使用8051交替闪烁2个LED。

该电路可以交替闪烁两个LED。P1.0和P1.1被指定为输出。当P1.0变为高电平时,P1.0变为低电平,反之亦然,并且LED遵循其所连接的相应端口的状态。这里没有LED的驱动级,它们通过串联限流电阻器(R1和R2)直接连接到相应的端口。电路图如下所示。

2个led交替闪烁8051
使用8051交替闪烁2个LED


程序

开始:CPL P1.0 ACALL WAIT CPL P1.0 CPL P1.1 ACALL WAIT CPL P1.1 SJMP开始等待:MOV R4、#05H WAIT1:MOV R3、#00H WAIT2:MOV R2、#00H WAIT3:DJNZ R2、WAIT3 DJNZ R3、WAIT2 DJNZ R4、WAIT1 RET

测试图像视频。

著者

8.评论

  1. r3tr0

    当我组装电路时,有一个小问题。

    当我按下开关时,它就关了
    当我不按时,它会打开。
    有人能跟进吗?

  2. 埃亚苏

    你能用微c和电路图帮我做这个项目吗

    在8086中开发一个系统,根据按键顺序闪烁LED。
    (a) 按键按下=>闪烁LED交替(b)键未按下=>闪烁LED

  3. 史蒂芬

    为什么当我试图在模拟器中运行闪烁1 led程序时,led没有闪烁,而是一直亮着?

    • 乔乔

      @stephen–您可以再次验证该程序。请确保它是正确的。问题可能在于你的延迟程序。延迟对人眼来说应该是重要的。试着让它保持1/2秒或更长时间。

  4. 西塔拉曼

    Hi Mark这里的电流要求小于10mA,因此BC548足够好,如果您仍然觉得这里有更好的开关晶体管,您可以使用2N2222

  5. 做记号

    BC548是一个非常糟糕的晶体管。它具有较低的最大功率和最大电流限制。应该使用2N2222或MOSFET。

Baidu