技术文档

51单片机led灯程序 51单片机实例讲解,彩灯键盘显示程序

小编 2025-07-02 技术文档 23 0

51单片机实例讲解,彩灯键盘显示程序

彩灯键盘显示控制要求:用10个数字键控制选择彩灯的10种变化,并用数码管显示器显示按键号。

10种变化彩灯如下:

●花样一:一盏灯从右至左点亮,即从LED1开始向LED8方向流水移动点亮。

●花样二:一盏灯从左至右点亮,即从LED8开始向LED1方向流水移动点亮。

●花样三:要求一盏灯从左至右逐个点亮不灭,即从LED8开始向LED1方向逐个点亮不熄灭,直到全部点亮。

●花样四:让全亮的灯从右至左逐个熄灭,即从LED1开始向LED8方向,彩灯逐个熄灭。

●花样五:两盏灯从右至左点亮,即LED1+LED2→LED3+LED4→LED5+LED6→LED7+LED8。

●花样六:两盏灯从左至右点亮,即LED8+LED7→LED6+LED5→LED4+LED3→LED2+LED1。

●花样七:一盏灯从左至右先按单数流水点亮,后按双数流水点亮,即LED1→LED3→LED5→LED7→LED2→LED4→LED6→LED8。

●花样八:一盏灯从右至左先按双数流水点亮,后按单数流水点亮,即LED8→LED6→LED4→LED2→LED7→LED5→LED3→LED1。

●花样九:8只发光从左至右依次点亮一只,即LED1亮→LED1+LED2亮→LED1+ LED2+LED3亮→LED1+LED2+LED3+LED4亮→LED1+LED2+LED3+LED4+LED5亮→LED1+LED2+LED3+LED4+LED5+LED6亮→LED1+LED2+LED3+LED4+LED5+ LED6+LED7亮→LED1+LED2+LED3+LED4+LED5+LED6+LED7+LED8亮。

●花样十:8只发光二极管从右至左依次点亮一只,即LED8亮→LED8+LED7亮→LED8+LED7+LED6亮→LED8+LED7+LED6+LED5亮→LED8+LED7+LED6+LED5+ LED4亮→LED8+LED7+LED6+LED5+LED4+LED3亮→LED8+LED7+LED6+LED5+ LED4+LED3+LED2亮→LED8+LED7+LED6+LED5+LED4+LED3+LED2+LED1亮。

(1)彩灯键盘显示硬件电路(见图46)。

图46 彩灯键盘显示接线原理图

(2)彩灯键盘显示硬件电路元器件(见表19)。

表19 彩灯键盘显示硬件电路元器件表

(3)彩灯键盘显示程序流程图(见图47)。

图47 彩灯键盘显示程序流程图

(4)彩灯键盘显示程序。

如何用单片机点亮一个LED灯(入门基础篇)

这几天主要为大家分享一些元件的基础知识以及在电路的应用,一开始没直接就写单片机之类的,对于单片机来说的,需要我们有一些基础,在应用中不但涉及到模拟电子技术也包括数字电子技术,对于从未接触这方面的人员来说,理解起来是有些难度的,为了能让大家都明白,我们还是先学习下它的基础应用。

今天我们使用的单片机芯片为STC89C52,他和俗称51单片机使用方法一样,就是内存大小不一样而已,在我国大部分人入门单片机是从51开始的,在国外用的最多的是Arduino,这也不是绝对的,考虑到大部分人群,我们今天就用51单片机来讲解。

一提到单片机,没有接触过的会产生一个疑问 ,什么是单片机?

STC89C52芯片

官方解释为:单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。

简单的理解他就是一个集成电路(内部有很多复杂电路),他能控制许多模块,单片机就像人的大脑,我们做什么是都是由大脑控制,因此单片机的发明使自动化智能化更近了一步。

如果问你如何让一个LED亮的话,可能你想到最直接的方法就是把LED的正极连在VCC,负极连在GND,如果电流太大,可以串联一个电阻起到限制电流的作用;在单片机中道理也是如此,通常我们把LED正极经过串联一个电阻直接连在电源正极,然后另一端接在单片机上。

由原理图可以看出,只要我们把P1^0这个端口接地就行了,因此我们所做的工作就是用单片机能够理解的语言把P1^0这一个端口接地,这就得需要编程,这里就不多介绍编程,回来专门写一篇文章关于编程的文章,这里把程序直接展示出来。

#include<reg52.h>

sbit LED=P1^0;

main()

{

while(1)

{

LED=0;

}

}

这个程序很简单,单片机会一直循环执行LED=0这个语句(在数电中可以简单理解为=0就是接电源负=1就是接电源正),意思就是让P1^0这个端口接地,这样就能使LED一直点亮。

用的贴片展示的效果

一开始学单片机的时候都会从点亮一个LED灯开始做起,就像我们学编程输出一个HELLO WORD一样,大家也不要小瞧LED灯,其实我们生活中很多地方都用到了,像流水灯,交通信号灯,广告牌,甚至连显示屏都会用到LED灯,如果你能够足够熟练操作LED,还是前途无量的。

单片机入手还是比较容易的,如果想熟练应用的话,还是有一定难度的,但是只要我们坚持下来,我相信你就能够熟练开发应用,我会每天发布一些这方面的文章,大家可以关注下,我祝大家能够取得成功!

相关问答

用汇编语言编写 51单片机程序 LED灯 亮0.5秒,灭2秒无限循环?

ORG0000HMOVSP,#60HE:CLRP1.0;P1.0LED亮ACALLDEL_1S;0.5秒SETBP1.0;P1.0LED灭ACALLDEL_2S;2....

51单片机 c语言编程 led灯 1,3,5,7和2,4,6,8交替闪烁?

假设你的8个LED是通过低电平来点亮,即LED负极连接P口,正极连接电源:1.当1,3,5,7亮时,我们的P2口状态以二进制表示应该是10101010,也就是0xAA,程序应该写成...

怎么用 51单片机 控制32个 led灯 但是不用完32个引脚,还要能实现很多方式的亮灭,怎么实现?

用51单片机控制32个led灯,又不能全用32个IO引脚,还要能实现很多方式的亮灭,这很容易实现。扩展四个并行口就行了,一个并行口控制8个LED灯,最常用的是8位锁存...

proteus 51单片机led灯 不亮?

“原来的LED是接电源的,我改成了接地”,就是因为这么改了,就改错了,不能只改接地呀,那8个LED的正负也要颠倒一下才对,这样的8个LED的正负就接反了,肯定是...

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

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

用keil设置 51单片机 p2口0 1 2作为开关控制8个 led灯 亮?

使用软件简单的控制,根据P2端口的数值作为依据去控制8个LEd灯亮,比如当P2=000控制一个,P2=001控制另外一个,以此类推。。使用软件简单的控制,根据P2端口的数...

51单片机 +74HC595控制 LED 程序 怎样实现整体渐变?(595不接OE脚)?

如果你是静态显示,那么灰度是没戏了。如果是动态显示,那就先点亮一个LED,再将595的数据刷新,令所有的LED灭掉,然后亮第二个LED,再将595的数据刷新,令所有...

51单片机 接138译码器再接 LED灯 ,问还需要接电阻吗?(接多大电...

[最佳回答]红色LED500欧;蓝色、白色、绿色LED330欧.应该是74HC138三线转8线译码器吧,驱动电流很小,但点亮小功率超高亮LED应该没问题.红色LED500欧;蓝色、...

51单片机 中#includesbitled=P0^0, led 1=P0^1,led2=P0^2;主要...

[最佳回答]变量可以这样写,位定义好像是不行的.

51单片机 的题目:依次点亮四个 Led灯 ?

ORG0000HLOOP0:MOVA,#0FEHMOVR0,#4LOOP:MOVP1,ADELL:MOVR7,#0DEL1:MOVR6,#0DEL2:DJNZR6,DEL2DJNZR7...

猜你喜欢