基于单片机的LED点阵动态显示系统

时间:2013-04-25

  LED 电子显示屏具有投影仪器、液晶显示屏无法比拟的优点:高亮度、功耗小、工作电压低、寿命长、稳定和耐冲击等优点。

  本文所提出的即为一种基于AT89C51 系列单片机的8×8 LED点阵动态显示的设计原理。

  1   8×8 LED 点阵电路及显示原理

  1.1   单片机及其主控接口简介

  本文采用的AT89C51 系列单片机是8 位机,是一款很有代表性的经典单片机。

  P 口又称I /O 口, 是单片机的输入输出口, 其中共有4 组(P0-P3),每组都有8 根管脚。而这里我们要用到的只有两组,P1 口和P2 口。

  P1 口是一个双向的8 位I /O 口, 其内部有一个上拉电阻。

  如果对端口写入“1”,及通过上拉电阻把端口拉到高电平,这时P1 可作为输入口使用。而当P2 口作为输入口时,和P1 口的原理一样。只不过在访问外部数据存储器或16 位地址的外部数据存储(例如执行MOVX@DPTR 指令)时,P2 口还可以作为8 位的地址数据总线使用。

  1.2   8×8 LED 点阵电路原理图

  如下8×8 LED 点阵电路原理图所示,将单片机的P1 口连接LED 点阵模块的列线,P2 口连接LED 点阵模块的行线即:

8×8 LED 点阵电路原理图

  1.3   8×8LED 点阵动态显示原理

  (1)LED 点阵显示原理

  我们采用的是一个共阳极8×8 的点阵LED 显示器。该点阵对外引出8 条行线,8 条列线。若使某一个LED 发光,只要将与其LED 连接的行线加高电平,列线加低电平;若使某一列LED 发光,只要将8 根行线全加高电平,此列线加低电平;若使某一列LED部分发光,只要将需发光的行线加高电平,此列线加低电平。

  单片机P2 口输出的数据通过行驱动器加至点阵的8 条行线上,单片机P1 口输出的数据通过列驱动器反相后加至点阵的8 条列线上。若要使该点阵显示某一信息, 只要通过P2 口、P1口输出特定的数据,控制点阵LED 逐行或逐列循环发光即可。

  (2)动态显示思路

  由静态显示原理可知, 欲达到动态显示的目的, 就需要让LED 灯变化的速度快一些,就像有多幅图片组成的一个动画。首先得保证LED 显示屏上的点自身闪烁的速度, 如果闪烁的速度太慢,你看到的只是某些点亮,只有让LED 屏上的点闪烁的速度达到足够快时才能看到稳定输出的字,当然须让这一状态保持一定的时间。其次如果想让字达到移动的效果,应当使LED 显示屏上的字的状态进行更新,而对于字的状态更新速度的快慢如何控制,取决于个人的需要。如果你想使字左右移动的速度快一些,那么你可以把字的状态的更新速度设置的快一些(通过修改程序中的延时语句进行设置),反之就可以降慢字的移动速度。

  2   8×8 LED 点阵动态显示运行程序

  按照以上叙述的思路进行编写程序,8×8 LED 点阵动态显示运行程序如下:

8×8 LED 点阵动态显示运行程序

8×8 LED 点阵动态显示运行程序

  3   8×8 LED 点阵动态显示仿真结果

  首先按照上述点阵电路原理图连接好仿真仪器的线路,之后把上述程序输入到仿真软件中进行实验仿真, 得到的显示效果如图2 所示:

8×8 LED 点阵动态显示仿真结果

  4 结束语

  本设计是使用简短的汇编语言程序在LED 点阵显示屏上实现了汉字的滚动显示。其特点是:结构简单,应用方便。内容易更新且能滚动显示。LED 灯廉价,工作效率高等。目前LED 显示正朝着更高亮度、更稳定、更高的发光密度、更易检修、全色化的方向发展

上一篇:基于单片机C8051F020 的数字多电机控制平台的设计
下一篇:一种低电压低静态电流LDO的电路设计(一)

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料