论文部分内容阅读
摘要:单片机是使用最多的一个CPU器件,而发光二极管的使用是单片机最常用的器件。本文对发光二级管的工作原理和最常见的编程方法进行介绍和总结,并给出了完整的程序。
关键词:单片机 发光二极管 闪烁
0 引言
单片机由于体积小、价格低廉、功能强、可靠性高、面向控制和价格低廉等优点,不仅成为工业测控领域使用的智能化控制工具,而且已渗入到人们工作和生活的各个角落。在工科学校中基本都开设有《单片机原理及应用》这门课,而对所有学习单片机的人来说最入门的就是对发光二级管LED的控制。
1 发光二级管的工作原理
发光二极管Light-Emitting Diode简称为LED,由镓(Ga)与砷(As)、磷(P)的化合物制成的二极管。发光二极管与普通二极管一样是由一个PN结组成,也具有单向导电性。当给发光二极管加上正向电压后,从P区注入到N区的空穴和由N区注入到P区的电子,在PN结附近数微米内分别与N区的电子和P区的空穴复合,产生自发辐射的荧光,因而可以用来制成发光二极管。在电路及仪器中作为指示灯,或者组成文字或数字显示。磷砷化镓二极管发红光,磷化镓二极管发绿光,碳化硅二极管发黄光。
LED只能往一个方向导通,发光二极管的反向击穿电压约5伏。它的正向伏安特性曲线很陡,使用时必须串联限流电阻以控制通过管子的电流来控制LED的亮度。限流电阻R可用下式计算:
R=(E-UF)/IF
式中E为电源电压,UF为LED的正向压降,IF为LED的一般工作电流。
2 LED的编程方法
假设LED的连接电路图如图1所示,八个红色发光二极管通过限流电阻分别接到单片机P1端口的8个引脚上,单片机选用AT89C51。
2.1 单个发光二极管的控制
在图1中,如图所示,如果要使发光二极管D1点亮,由于D1的正极通过电阻R1接到电源VCC上,那么D1要正向导通必须使D1的阴极为低电平,也就是P1.0引脚为低电平,这个可以通过软件可以控制,完整的C51程序如下:
同样的,如果要使发光二极管D1一亮一灭不停地闪烁,则工作原理是让D1点亮并延时一段时间,接着使D1熄灭并延时一段时间并不断的循环,这样就可以观察到D1一亮一灭不停地闪烁。延时可以采用软件延时或者定时计数器定时延时两种方式,本文采用软件延时,其工作原理是利用每条指令运行都需要一定的时钟周期,运行一定数量的时钟周期可以实现延时的功能,本图中晶振为12MHz,那么12个振荡周期为1us,延时1ms的延时程序如下:
2.2 多个发光二极管的控制 多个多个发光二极管的控制原理与单个发光二级管的控制原理一样,在图1中,如果要控制8个发光二极管同时一亮一灭的闪烁,那么只需要同时使8个发光二级管点亮延时一段时间,再同时使8个发光二级管熄灭并延时一段时间,周而复始不断循环就可以实现8个LED不停地闪烁,完整的C51程序如
下:
2.3 花样流水灯的控制 对于花样流水灯,工作原理和前面多个发光二极管的控制原理一样,只需要把不同状态下灯所对应端口的值送到相应的控制端口并延时一定的时间就可以实现,编程时可以把所以对应状态的端口值放在一个数组里存放,不停循环地取数组的值,每取一个值延时一段时间,即可以实现,程序略。
3 总结
单片机在各行各业中使用越来越多,文中对单片机中发光二极管的使用和编程方法进行总结,并给出各种方法的工作原理和完整的程序。
参考文献:
[1]戴仙金.51单片机及其C语言程序开发实例.北京:清华大学出版社,2007.
[2]李朝青.单片机原理与接口技术.北京:北京航空航天大学出版社,2005.
[3]李广军等.实用接口技术.成都:电子科技大学出版社,1997.
[4]蒋国平,周国伟.基于PROTEUS的单片机系统设计与仿真实例.北京:机械工业出版社,2009.
[5]张靖武,周灵衫.单片机系统的PROTEUS设计与仿真.北京:电子工业出版社,2007.
关键词:单片机 发光二极管 闪烁
0 引言
单片机由于体积小、价格低廉、功能强、可靠性高、面向控制和价格低廉等优点,不仅成为工业测控领域使用的智能化控制工具,而且已渗入到人们工作和生活的各个角落。在工科学校中基本都开设有《单片机原理及应用》这门课,而对所有学习单片机的人来说最入门的就是对发光二级管LED的控制。
1 发光二级管的工作原理
发光二极管Light-Emitting Diode简称为LED,由镓(Ga)与砷(As)、磷(P)的化合物制成的二极管。发光二极管与普通二极管一样是由一个PN结组成,也具有单向导电性。当给发光二极管加上正向电压后,从P区注入到N区的空穴和由N区注入到P区的电子,在PN结附近数微米内分别与N区的电子和P区的空穴复合,产生自发辐射的荧光,因而可以用来制成发光二极管。在电路及仪器中作为指示灯,或者组成文字或数字显示。磷砷化镓二极管发红光,磷化镓二极管发绿光,碳化硅二极管发黄光。
LED只能往一个方向导通,发光二极管的反向击穿电压约5伏。它的正向伏安特性曲线很陡,使用时必须串联限流电阻以控制通过管子的电流来控制LED的亮度。限流电阻R可用下式计算:
R=(E-UF)/IF
式中E为电源电压,UF为LED的正向压降,IF为LED的一般工作电流。
2 LED的编程方法
假设LED的连接电路图如图1所示,八个红色发光二极管通过限流电阻分别接到单片机P1端口的8个引脚上,单片机选用AT89C51。
2.1 单个发光二极管的控制
在图1中,如图所示,如果要使发光二极管D1点亮,由于D1的正极通过电阻R1接到电源VCC上,那么D1要正向导通必须使D1的阴极为低电平,也就是P1.0引脚为低电平,这个可以通过软件可以控制,完整的C51程序如下:
同样的,如果要使发光二极管D1一亮一灭不停地闪烁,则工作原理是让D1点亮并延时一段时间,接着使D1熄灭并延时一段时间并不断的循环,这样就可以观察到D1一亮一灭不停地闪烁。延时可以采用软件延时或者定时计数器定时延时两种方式,本文采用软件延时,其工作原理是利用每条指令运行都需要一定的时钟周期,运行一定数量的时钟周期可以实现延时的功能,本图中晶振为12MHz,那么12个振荡周期为1us,延时1ms的延时程序如下:
2.2 多个发光二极管的控制 多个多个发光二极管的控制原理与单个发光二级管的控制原理一样,在图1中,如果要控制8个发光二极管同时一亮一灭的闪烁,那么只需要同时使8个发光二级管点亮延时一段时间,再同时使8个发光二级管熄灭并延时一段时间,周而复始不断循环就可以实现8个LED不停地闪烁,完整的C51程序如
下:
2.3 花样流水灯的控制 对于花样流水灯,工作原理和前面多个发光二极管的控制原理一样,只需要把不同状态下灯所对应端口的值送到相应的控制端口并延时一定的时间就可以实现,编程时可以把所以对应状态的端口值放在一个数组里存放,不停循环地取数组的值,每取一个值延时一段时间,即可以实现,程序略。
3 总结
单片机在各行各业中使用越来越多,文中对单片机中发光二极管的使用和编程方法进行总结,并给出各种方法的工作原理和完整的程序。
参考文献:
[1]戴仙金.51单片机及其C语言程序开发实例.北京:清华大学出版社,2007.
[2]李朝青.单片机原理与接口技术.北京:北京航空航天大学出版社,2005.
[3]李广军等.实用接口技术.成都:电子科技大学出版社,1997.
[4]蒋国平,周国伟.基于PROTEUS的单片机系统设计与仿真实例.北京:机械工业出版社,2009.
[5]张靖武,周灵衫.单片机系统的PROTEUS设计与仿真.北京:电子工业出版社,2007.