技术文档

基于单片机LED灯 51单片机之LED灯

小编 2024-10-12 技术文档 23 0

51单片机之LED灯

实验要求

LED灯以一秒的频率闪烁

众所众知,软件编程的第一个小程序就是打印“hello world”,同样硬件的编程也有他的第一个小程序,那就是LED灯的点亮,如果不做一个这样的小实验,学再多理论也是纸上谈兵。下面我们来实现LED灯闪烁的实验。

物料清单

电容

12M晶振

点阵开关

电阻

LED灯

AT89C52单片机(和51效果一样)

原理图

为了更形象的讲解LED灯闪烁的实验,笔者特意画了LED闪烁的原理图,他们的作用如下:

18脚和19脚接的是12M晶振系统,它是系统时序的由来;

9脚所接的是复位系统,当我们按下按键之后,系统会从程序最开始的代码开始运行;

P0.0接了一个电阻和一个LED灯,为什么接这个电阻呢?如果不加电阻,电流过大可能会烧坏LED灯,所以LED灯使用的时候一般都加限流电阻。

复位电路和晶振电路是单片机的固定外围电路,数据手册上已经给出,不需要我们花心思研究。

程序

我们要做的是让单片机控制LED灯以一秒的频率闪烁,这就避免不了写程序,看看现在的硬件产品吧,哪一个硬件产品里面没有集成电路,又有哪一个没有代码的“参与”。所以不要说硬件工程师就只做硬件,写单片机代码也是硬件工程师分内的事。下面把完整代码分享给大家。

#include <reg51.h>

void delay(void)

void main()

{

while(1)

{

P0=0x01;

delay();

P0=0x01;

}

void delay(void)

{

unsigned char a,b,c;

for(c=167;c>0;c--)

for(b=171;b>0;b--)

for(a=16;a>0;a--);

_nop_;

}

}

delay()函数是由单片机小精灵生成的,如果我们自己计算的话太麻烦了。

实验现象

视频加载中...

最后

我们实验的当中只用到了一个LED灯,所以直接用单片机驱动也可以,但是单片机的总的驱动电流就很小,如果LED灯多了的话,51单片机是驱动不了的,这时候就需要外加电源和开关管来驱动LED。

用单片机玩转LED灯(附带原理图)

视频加载中...

利用单片机控制LED实现流水效果,画面漂亮,设计成爱心更炫酷,PS:附带原理图哦,3D音效,戴上耳机效果更好!

相关问答

单片机led 闪烁的原因?

32单片机LED灯闪烁的原因可能有以下几种:程序设计问题:如果程序中存在错误或者逻辑不严谨,可能会导致LED灯闪烁。例如,程序中可能存在死循环或者延时不准确...

51 单片机 如何点亮一个 LED灯 ?

1.确定LED灯的点亮电压;2.确定51单片机的数字输出电压,如果与LED灯电压一致,则可直接驱动;不一致则需要通过电路转换;3.给51单片机配置最基本的供电电路,...

急! 单片机 如何驱动RGB三色 LED灯 来合成各种颜色的?通过PWM脉宽调制,还是通过驱动芯片来实现?

驱动芯片也是通过调节三色灯的PWM脉宽进而调节每个LED灯的亮度驱动芯片也是通过调节三色灯的PWM脉宽进而调节每个LED灯的亮度

51 单片机 如何接 LED ?

89C51或89C52单片机P0P1P3P4四组共32个IO口都可以驱动LED灯。这种单片机的高电平驱动能力很弱,通常IO输出低电平驱动LED,LED的另一端接限流电阻然后再接电源正...

stm32 单片机LED灯 常亮是怎么回事?

stm32单片机LED灯常亮是可能设置的时间太长。可以通过以下使其熄灭首先实现LED灯的点亮和熄灭,控制连接LED灯的管脚输出高低电平就可以实现。如果电流比较大可...

单片机LED灯 不亮问题!(初学者)?

P0如果不等于0,默认就是高电平。看电路,P0为高时,LED负极是高电平时,不导通LED肯定不会亮。P0如果不等于0,默认就是高电平。看电路,P0为高时,LED负极是高电平...

单片机led灯 延时2秒后闪烁?

单片机led闪烁有以下原因1、LED灯珠与LED驱动电源不匹配,正常单颗足1W灯珠承受电流:280-300mA,电压:3.0-3.4V,如果灯珠芯片不是足功率的就会造成灯光光源频...

八个 led灯单片机 使用C语言怎么做贪吃蛇?

这就是一个简单的双层循环程序,没有任何难度的。第一层控制做减法循环第二层控制做LED亮灯就这么简单这就是一个简单的双层循环程序,没有任何难度的。第一...

单片机 控制 LED灯 1秒钟闪烁一次程序(采用中断方式)?

你是想中断服务里读按键吧,硬件上提几点建议。1,按键加个104的去抖电容。2,中断口加上拉电阻。3,不用外部中断,采用定时器中断,在定时器中断服务程序中...

用51 单片机 一个IO口驱动3mm LED灯 ?

1你没讲清楚具体的连线方式:是IO口的高电平驱动灯亮,此时二极管加限流电阻接地;还是IO的低电平驱动灯亮,此时二极管加限流电阻接+5v。2学习51,数字电...

猜你喜欢