您当前的位置:五五电子网电子知识电子制作自动控制-单片机用PIC单片机控制发光管闪动的实验 正文
用PIC单片机控制发光管闪动的实验

用PIC单片机控制发光管闪动的实验

点击数:7769 次   录入时间:03-04 12:04:03   整理:http://www.55dianzi.com   自动控制-单片机

  本实验中主要应用到单片机的端口操作及延时循环程序。首先我们需要知道如何让一个发光二极管工作。发光二极管有很多类,如下左图所示的是几种直径3mm的普通亮度发光二极管,原理图则如下右图所示,当在它的A和K两个电极加上合适的电压的时候,它就会亮起来。说“合适的电压”,是因为不同的发光二极管工作电压并不相同,红黄绿色的LED一般是在1.6~2.8V之间,正常工作电流则一般在2~30mA之间,但是实际最佳工作的选择范围一般是4~10mA之间。

  1.硬件电路
  
  根据发光管电压、电流参数,可以计算串接在LED上的电阻大小。例如系统供电为5V,LED上串接的电阻是1kΩ,设此时LED上的电压是2.0V,那么此时通过LED的电流则为(5V-2V)/1000Ω=3mA,如果需要提高亮度,一般会电流控制在10rrrA左右,则此时电阻应该选择(5V-2V)/10mA=300Q,可以就近选择10%误差的E12系列为330Q。

  电路已经确定,然后就是连接到单片机的I/O口上,见图3,我们可以看到LED的A极通过限流电阻连接到单片机的I/O口,K极接GND,因此要使LED发光,也就是使电流流过LED,只需要把I/O口置成高电平即可,所以最终我们对LED的控制变成了对一个I/O口的控制,比如要点亮某个LED,就是把对应的某个口RCx设置为“1”而已,这就是实现方法。实验电路可以参考下图。

用PIC单片机控制发光管闪动硬件电路

  2.程序设计
  
  与RCx置成“1”相反,把RCx置成“0”就可以使LED灭掉,而要想让他闪动起来,其实也就是亮和灭在一段连续时间上交替出现。所以,实现方法就是使RCx在每隔一段时间轮流出现“1”和“0”。因为单片机的程序执行速度很快,如果是在很短的时间内改变RCx的状态,人眼是看不出来的,中间必须有个合适的延迟时间,所以一般闪动地延迟是在300ms左右,一般认为以这个频率闪烁不太会令人觉得很紧张。到这里我们就可以编写如下程序,通过以下程序可以实现某个LED的闪动发光。

  程序代码如下:




本文关键字:单片机  发光管  自动控制-单片机电子制作 - 自动控制-单片机