产品中心

火狐体育投注靠谱不:51单片机入门——控制LED灯
2022-08-20 18:11:07 | 来源:火狐体育靠谱吗 作者:火狐体育投注靠谱不

  LED(light-emitting diode),即发光二极管,俗称LED小灯,是一种由磷化镓(GaP)等半导体材料制成的、能直接将电能转变成光能的发光显示件。当LED内部有一 定电流通过时,它就会发光,不同LED能发出不同颜色的光,常见的有红色、黄色等,如图:

  (1)正向工作电流IF。它是指发光二极管正常发光时的正向电流值。发光二极管工作电流一般为 10~20mA。

  (2)正向工作电压UF。它是在给定正向电流下的发光二极管两端正向工作电压。一般是在 IF=20mA 时测量,发光二极管正向工作电压为 1.4~3V 。外界温度升高时,发光二极管正向工作电压会下降。

  (1)允许功耗 Pm。它是允许加于发光二极管两端正向直流电压与流过它的电流之积的最大值,超过此值时发光二极管发热、损坏。

  (3)最大反向电压 URm。它是所允许加的最大反向电压,超过此值发光二极管可能被击 穿损坏。

  (4)工作环境 topm。它是发光二极管可正常工作的环境温度范围。低于或高于此温度范围,发光二极管将不能正常工作,效率大大降低。

  LED与普通二极管的伏 - 安特性相似,只是LED的正向导通电压值较大。 小电流LED的反向击穿电压很小,为 6V 至十几伏,比普通二极管的小。下图所示是LED正向伏 - 安特性曲线。

  下图是LED伏 - 安特性曲线, 它含正向和反向特性。LED具有与一般半导体三极管相似的输入伏 - 安特性曲线。

  (2)AB 段。这是工作区。在这一区段, 一般是随着电压增加电流也跟着增加, 发光亮度也跟着增大。

  在这个区段内要特别注意,如果不加任何保护,当正向电压增加到一定值后, 那么LED的正向电压减小,而正向电流加大。 如果没有保护电路,会因电流增大而烧坏LED。

  (3)OC 段。这是反向死区,发光二极管加反向电压是不发光的(不工作),但有反向电流。这个反向电流通常很小,一般在几微安之内。在 1990~1995 年,反向电流定为 10μA; 在 1996~2000 年,反向电流定为 5μA,目前反向电流一般是在 3μA 以下,但是基本上是 0μA。

  (4)CD 段。这是反向击穿区,LED的反向电压一 般不要超过10V,最大不得超过 15V。超过这个电压,就会出现反向击穿,导致发光二极管报废。

  在这个区段,LED存在较大的反向击穿电流(为几毫安)。这种击穿不是热击穿,不会损坏,一部分交流插座、 交流电源开关上的交流指示灯就是采用LED,在交流电的负半周期间LED就是工作在这一区段。

  下图所示是发光二极管工作电流与发光相对强度关系特性曲线。对于红色LED 而言,正向工作电流增大时发光相对强度也在增大,当工作电流大到一定程度后,曲线趋于平坦(饱和),说明发光相对强度趋于饱和;对于绿色LED而言,工作电流增大,发光相对强度增大,但是没有饱和现象。

  下图所示是发光二极管发光强度与环境温度关系特性曲线。温度愈低,发光强度愈大。 当环境温度升高后,发光强度将明显下降。

  下图所示是最大允许工作电流与环境温度关系特性曲线。当环境温度大到一定程度后, 最大允许工作电流迅速减小,最终为零,说明在环境温度较高场合下,LED更容易损坏,这也是LED怕烫的原因。

  为了不影响LED的正常发光, 在外壳上不标出型号和极性。所以识别LED正、负引脚主要靠外形特征和万用表的检测来进行。

  下图是用引脚长短区别正、负极性引脚的LED,它的两根引脚一长一短, 长的一根是正极,短的为负极。

  下图所示是突键方式表示正极性引脚方法,LED底座上有一个突键,靠 此键最近的一根引脚为正极。

  下图所示是一种 3 根引脚LED引脚分布规律和内电路示意图。内设两只不同 颜色发光二极管。K 为共同引脚。

  下图是另一种 3 根引脚的变色LED引脚识别方法示意图,它有一个突键,根据它的这一外形特征可以方便地确定各引脚。

  LED本身属于电流控制型器件,即有电流流过时它会发光,在使用时需串接适当阻值的限流电阻,为了使用的方便将LED和限流电阻制作为一体,使用时可直接并接在电源两端,这样形成了电压控制型LED。下图所示是电压控制型LED实物图和内电路。 电压控制型LED的发光颜色有红、 黄、绿等,工作电压有 5V、9V、12V、18V、 19V、24V 共 6 种规格,常用的是 BTV 系列。

  闪烁型LED是一种由 CMOS 集成电路和LED组成的特殊发光器件。下图所示是闪烁型LED实物图和内电路,它可用于报警指示及欠压、超压指示等。

  下图是闪烁型LED内电路方框图。闪烁型LED在使用时,无须外接其他元器件,只要在其引脚两端加上适当的直流工作电压(5V)即可闪烁发光,常用的闪烁型发光二极管是 BTS 系列。

  写了那么多的LED介绍,我们对LED应该有了一个清楚的认识,现在我们开始对单片机编写程序来控制LED。

  然后开始写程序。如果学过c语言的话,应该可以轻松编程,如果没有学过的话也没关系,先照着抄。

  (2)void 是函数的返回类型,本程序没有返回值,用void 表示。(3){} 在这里是函数开始和结束的标志,不可省略。

  从逻辑上来看,程序这样写就搞定了,但是在实际单片机应用中会存在一个问题。比如程序空间可以容纳1000行代码,但是实际上的程序只用了100行代码,当运行完了100行,在继续运行下去时,第101行的程序不是自己想运行的程序,而是一个未知内容,一旦执行下去程序可能会出错,从而可能导致单片机自动复位,所以通常在程序中加入一个死循环,让程序停留在所希望的这个状态下,不要乱运行,有下列两种方法可以参考:

  程序(1)的功能是不断反复的执行LED = 1这句语句,程序(2)的功能是在执行完LED = 1后停下来等待。

  程序编写好后,要对程序进行编译,生成.hex文件就可以将程序烧录到单片机里面,在编译之前,需要先勾选一个选项,单击工程(Project)->

  为目标“目标1”设置选项…(Options for Target ‘Target1’…)如图:

  在弹出的对话框中,单击Output选项页,勾选其中的Create HEX File ,然后单击确定(OK)按钮即可,如图:

  当提示“ 0 Error(s) ,Warning(s) ”表示程序没有错误和警告,就会出现“ creating hex file from “LED”… ”,意思是从当前工程中生成了一个HEX文件,要下载到单片机上的就是这个HEX文件。如果出现有错误和警告的提示的话,就是 Error 和 Warning 不是0,那么就要对程序进行检查,找出了问题,解决好了再进行编译产生 HEX 才可以。

  如果没有硬件设备的小伙伴可以使用Proteus 8 Professional来对程序进行模拟仿真。

  在Proteus 8 Professional中双击需要烧录程序的单片机,点击文件夹的图标,找到编译的 . hex 文件,点击打开即可,如图:

  如果有硬件设备的小伙伴,可以使用 STC-ISP ——STC系列单片机下载软件,将程序烧录到开发板中,如图:

  注意:因为STC系列单片机需要冷启动下载(就是先点击下载,然后再给单片机供电),所以先关闭开发板上的电源开关,然后单击下载(Download)按钮,再给开发板上电,就可以把程序烧录到单片机里面了。

  在2.1.中点亮一个LED就是令“LED = 0”即可,熄灭一个LED的程序也很简单就令“LED = 1”。现在熄灭和点亮都会了,那么如何让LED闪烁呢?也很简单,在点亮后延迟几秒再熄灭,不断重复即可。

  实现延时通常有两种方法:一种是硬件延时,要用到定时器/计数器,这种方法可以提高CPU的工作效率,也能做到精确延时;另一种是软件延时,这种方法主要采用循环体进行。在此我们主要研究软件延时。

  在很多情况下,定时器/计数器经常被用作其他用途,这时候就只能用软件方法延时。下面介绍几种软件延时的方法。

  短暂延时:可以在C文件中通过使用带_NOP_( )语句的函数实现,定义一系列不同的延时函数,如Delay10us( )、Delay25us( )、Delay40us( )等存放在一个自定义的C文件中,需要时在主程序中直接调用。如延时10 μs的延时函数可编写如下:

  循环空语句延时:在程序中编写一个空的循环语句,让单片机在空循环中“发呆”。编写大约1ms的代码如下:

  ARM单片机嵌入式系统汽车电子消费电子数据处理视频教程电子百科其他技术STM32MSP430单片机资源下载单片机习题与教程词云:

上一篇:中国智能照明行业相关企业及投资前景展望报告

下一篇:1300平米冷库造价表一平米冷库报价费用