嵌入式论文
[摘要]LED显示技术在工业仪表中应用十分广泛,它能直观地显示运行系统的实时状态。同时PIC单片机由于功能强,成本低的优势在各种仪表中应用广泛。对PIC单片机控制点阵LED显示技术进行研究。
[关键词]PIC单片机LED 控制
[Abstract ] LED display technology in industrial instrumentation is widely used, which can visually show running system of real time state. At the same time PIC SCM because of strong function, low cost advantage in various instrument widely used. On the PIC single-chip microcomputer to control the dot matrix LED display technology research.
[Key words ]PIC MCULED control
1.LED显示技术的发展
1990年以前LED显示屏的成长形成时期。一方面,受LED材料器件的限制,LED显示屏的应用领域没有广泛展开,另一方面,显示屏控制技术基本上是通讯控制方式,客观上影响了显示效果。这一时期的LED显示屏在国外应用较广,国内很少,产品以红、绿双基色为主,控制方式为通讯控制,灰度等级为单点4级调灰,产品的成本比较高。
1990-1995年,这一阶段是LED显示屏迅速发展的时期。进入九十年代,全球信息产业高速增长,信息技术各个领域不断突破,LED显示屏在LED材料和控制技术方面也不断出现新的成果。蓝色LED芯片研制成功,全彩色LED显示屏进入市场;电子计算机及微电子领域的技术发展,在显示屏控制技术领域出现了视
频控制技术,显示屏灰度等级实现16级灰度和64级灰度调灰,显示屏的动态显示效果大大提高。这一阶段,LED显示屏在我国发展速度非常迅速,从初期的几家企业、年产值几千万元发展到几十家企业、年产值几亿元,产品应用领域涉及金融证券、体育、机场、铁路、车站、公路交通、商业广告、邮电电信等诸多领域,特别是1993年证券股票业的发展更引发了LED显示屏市场的大幅增长。LED显示屏在平板显示领域的主流产品局面基本形成,LED显示屏产业成为新兴的高科技产业。
1995年以来,LED显示屏的发展进入一个总体稳步提高产业格局调整完善的时期。同时,LED显示屏产业内部竞争加剧,形成了许多中小企业,产品价格大幅回落,应用领域更为广阔,产品在质量、标准化等方面出现了一系列新的问题,有关部门对LED显示屏的发展予以重视并进行了适当的规范和引导,目前这方面的工作正在逐步深化。我国的LED显示屏产业经过几年的发展,基本形成了一批具有一定规模的骨干企业。据不完全统计,至1998年底,年度销售总额在1000万元以上的企业有20多家,其销售总额达6亿元左右,占行业市场总额的85%以上。全国从事LED显示屏的各类企业有100余家,从业人员近6000人,行业年度销售总额近8亿元人民币,1996年、1997年的增长速度均保持40%左右,1998年略有回落。在国内市场上,国产LED显示屏的市场占有率近100%,国外同类产品基本没有市场,四十三届世乒赛主会场天津体育中心、京九铁路、北京西客站、首都机场、浦东机场等,均由国内代表企业中标。技术水准相对领先。
2.LED电子显示屏概述
LED电子显示屏(Light Emitting Diode Panel)是由几百--几十万个半导体发光
二极管构成的像素点,按矩阵均匀排列组成。利用不同的半导体材料可以制造不同色彩的LED像素点。目前应用最广的是红色、绿色、黄色。而蓝色和纯绿色LED的开发已经达到了实用阶段。 LED显示屏是一种通过控制半导体发光二极管的亮度的方式,来显示文字、图形、图像、动画、行情、视频、录像信号等各种信息的显示屏幕。
LED显示屏分为图文显示屏和条幅显示屏,均由LED矩阵块组成。图文显示屏可与计算机同步显示汉字、英文文本和图形;而条幅显示屏则适用于小容量的字符信息显示。LED显示屏因为其像素单元是主动发光的,具有亮度高,视角广、工作电压低、功耗小、寿命长、耐冲击和性能稳定等优点。因而被广泛应用于车站、码头、机场、商场、医院、宾馆、银行、证券市场、建筑市场、拍卖行、工业企业管理和其它公共场所。
LED显示屏的发展前景极为广阔,目前正朝着更高亮度、更高气候耐受性、更高的发光密度、更高的发光均匀性,可靠性、全色化方向发展。
LED常见的控制方式
目前常见的是并行传输方式(见附录1.1),通过8位锁存器将8位总线上的列数据进行锁存显示,各8位锁存器的片选信号由译码器提供。此种方式的优点是传输速度快,对微控制器(MCU)的通信速度要求较低。但是这种方案最大的缺点是不便于随意扩展显示单元的数目。每增加一个16×16点阵的全角汉字显示单元,就需要在之前的电路上多增加两根地址线,这就要求在PCB布线的时候要留有充足的地址线冗余量。再一个缺点是,每个单元的PCB随着安放位置的不同,布线结构也不相同,不利于厂家批量生产。并行传输需要的芯片较多,因此市场上已经出现用FPGA,CPLD等高密度可编程逻辑器件(PLD)来取代传统锁存
器IC的方案。成本有所下降,但可扩展性仍旧较差。因此,并行传输方式适用于显示单元数目确定的条屏。
随着广告屏显示内容的多媒体化,对控制器传输速度,运算能力的要求越来越高。因此控制器的种类也在不断发展以适应要求,从最初的8051单片机,到PIC单片机,又到FPGA,直到现在的ARM处理器。不同功能档次的广告屏对应着不同的处理器。
2.1 以传统8051单片机为控制器的LED显示屏。因受到单片机运算速度及通信速率的限制,LED动态显示的刷新率不可能做得太高。对显示效果和移动算法的处理也比较吃力,在实际显示效果上有比较明显的闪烁感。除此之外,传统8051单片机的内部资源贫乏,仅128字节的数据存储器,几K字节的程序存储器,无E2PROM,SPI。这就需要对单片机扩展外设,无疑增加了硬件成本。因此,8051控制的条屏只能用于显示内容及其简单,不需要经常更改显示内容的场合。
2.2以PIC单片机为控制器的LED显示屏。因PIC单片机是RISC架构的工业专用单片机,处理指令的速度有所增加,抗干扰能力优秀,型号种类繁多。作为条屏的控制器,可以明显的改善显示效果,同时PIC单片机内部的资源较丰富,可节省外部电路设计难度,同时降低了硬件成本。因此,以PIC单片机为控制器的条屏目前仍是单色条屏市场的主流。
2.3以FPGA(复杂可编程逻辑门阵列)为控制器的LED显示屏。FPGA以高速、并行著称。是近年来新兴的可编程逻辑器件。用他作为LED显示屏的控制器,能够高速的处理色阶PWM信号、高速的完成动态扫描逻辑、高速的完成字符移动算法。因此被运用于双基色、三基色的显示系统。但是其成本较高,开发难度较大。
2.4以ARM(32位RISC架构高性能微处理器)为控制器的LED显示屏。ARM有着极高的指令效率,极高的时钟频率。因此其运算能力非常强大,内部资源也十分丰富,极大的简化了硬件设计的难度,缩短了开发周期。在条屏的运用中,能用ARM来实现花样繁多的显示方式,以及高色阶,多像素的全彩屏驱动。ARM与FPGA的组合更是功能强大,除了海量存储技术,无线更新技术外,还能实时地显示视频信号。因此,以ARM为控制器的显示屏常为视频全彩屏。
3.LED显示屏的应用涉及社会经济的许多领域,主要包括:
证券交易、金融信息显示。这一领域的LED显示屏占到了前几年国内LED显示屏需求量的50%以上,目前仍为LED显示屏的主要需求行业。上海证券交易所、深圳证券交易所及全国上万家证券、金融营业机构广泛使用了LED显示屏。 机场航班动态信息显示。民航机场建设对信息显示的要求非常明确,LED显示屏是航班信息显示系统FIDS(FlightinformationDisplaysystem)的首选产品,首都机场、上海浦东国际机场、海口美兰机场、珠海机场、厦门高崎机场、深圳黄田机场、广州白云机场及全国数十家新建和改扩建机场都选用了国产的LED显示屏产品。
港口、车站旅客引导信息显示。以LED显示屏为主体的信息系统和广播系统、列车到发揭示系统、票务信息系统等共同构成客运枢纽的自动化系统,北京站、北京西站、南昌站、大连港等国内重要火车站和港口都安装了国内厂家提供的产品和系统。
体育场馆信息显示。LED显示屏已取代了传统的灯泡及CRT显示屏,四十三届世乒赛主场地天津体育中心首次采用了国产彩色视频LED显示屏,受到普遍好评,上海体育中心、大连体育场等许多国内重要体育场馆相继采用了LED显示屏作为信息显示的主要手段。
道路交通信息显示。智能交通系统(ITS)的兴起,在城市交通、高速公路等领域,LED显示屏作为可变情报板、限速标志等,替代国外同类产品,得到普遍采用。
调度指挥中心信息显示。电力调度、车辆动态跟踪、车辆调度管理等,也在逐步采用高密度的LED显示屏。
邮政、电信、商场购物中心等服务领域的业务宣传及信息显示。遍布全国的服务领域均有国产LED显示屏在信息显示方面发挥作用。
广告媒体新产品。除单一大型户内、户外显示屏做为广告媒体外,国内一些城市出现了集群LED显示屏广告系统;列车LED显示屏广告发布系统也已在全国数十列旅客列车上得到采用并正在推广。
4.点阵LED的结构
使用的LED为14*15点阵,由六片7*5点阵LED拼接而成,先分别用三片LED横向组成两个7*15点阵,再用两个7*15上下排列,组成需要的14*15点阵。当某一个LED所在的行驱动为低,列驱动为高时,这个发光管被点亮。
5.静态显示电路的构成
74LS164为TTL单向8位移位寄存器,可实现串行输入,并行输出。其中A、B(第1、2脚)为串行数据输入端,2个引脚按逻辑与运算规律输入信号,共一个输入信号时可并接。CLK(第8脚)为时钟输入端,可连接到串行口的同步时钟输出端。每一个时钟信号的上升沿加到CLK端时,移位寄存器移一位,8个时钟脉冲过后,8位二进制数全部移入74LS164中。在给出了8个脉冲后,最先进入74LS164的第一个数据到达了最高位,再来一个脉冲,第一个脉冲就会从最高位移出。4片74LS164首尾相串,而时钟端则接在一起。
只要我们对每片LED上7位行驱动中的一位输入低电平,这行中相应列驱动为高的点就会被点亮。如此反复向每一行送入低电平,同时在相应的行被选中时,在列送入相应的数据,并反复的扫描,由于人眼存在视觉暂留效应就可以看到预期的画面信息。
6.编码方式
编码方式是由硬件设计方式决定的。因为送入下排三个LED中最后一片最后一位的列驱动是最先进入74LS164的数据,所以字模的编码顺序和在LED显示顺序正好相反。而且PIC16F877做串行输出时,串行输出寄存器SSPBUF中的8位数据的最高位是最先送出的,所以每行8个点是右面为高位,左面为低进行编码。后面的类推,要显示一个完整的14*15点阵共需要28组的8位2进制字模数据。
7.PIC16F877与LED电路的连接
PIC16F877中提供了两个串行通信模块,分别是同步串行口和通用同步异步接收发送器。其中MSSP模块又提供了两种工作方式,一种是串行外围接口(SPI),另一个工作方式是芯片间通信总线(IIC)。SSP模块主要用于单片机和其他外围接口或微处理器芯片间的串行通信,像串行EEPROM、显示控制器、模拟数字转换器等,都属于电路板上众多器件间的串行通信接口。USART则属于和电路板外部设备串行通信的接口,简单地说就是RS232接口,可以与PC通信。所以,我们选择SPI同步串行通信方式送入行选编码。SPI工作方式提供8位数据的传输,SCK引脚上的时钟速度决定数据的传输速度。在连接的器件中,由主控器件来产生时钟,其他器件以此外界的时钟为标准。因此在使用SPI方式时,必须确定那个器件为主控器件,其它则为从控器件。本电路使用PIC16F877作为主控器件,SSP模块工作在主控方式下。SCK引脚的时钟由单片机自己产生,因此可以在任何时候数据的传送,传送在有写入SSPBUF缓冲器的动作时开始,我们用SCK引脚输出串行输出同步时钟。本电路中的SPI模块中用来输入出数据,那么SDI引脚可以关掉不用,这时SSBUF寄存器里的内容全根据设定的时钟一位的由SDO引脚移出。在设置使用MSSP模块的SPI工作方式前第一件事是初始化MSSP模块,SSPCON寄存器包含了要设置的相关位,在设置完成后,置MSSP模式使能位SSPEN,便可以开始SPI方式的工作。同时,要复位SSP模块,只要先将SSPEN位清除0,然后重新设置SSPCON,再将SSPEN设置为1就可以。设定好SSPCON就相当于设定了SDO,SCK,SDI,SS 为串行通信用的引脚,因此除了SSPCON寄
存器的设置外,对SPI工作方式用到的引脚也要设置。SDO和SCK为输出引脚,因此TRISC和TRISC必须清零。
PORTD端口寄存器读出的是相应的I/O引脚上的电平状态,而写PORTD 端口寄存器则是写入其数据锁存器。另外,D端口还可以作为并行从动端口与单片机总线接口。这里,我们使用它的8 位并行数据输出功能,作为7位并行行选信号和一位使能信号的输出。
8.程序的编写
程序各模块功能说明:
INITIAL:初始化模块。设置串行口工作方式为SPI主动方式;RC3,RC5引脚为输出;SSPBUF寄存器在时钟上升沿送出数据;串行同步时钟为单片机内部时钟的四分频;清SSP中断标志;使能SSP模块。
I2C_OUT:串行口发送数据模块,要发送的数据存放在TXDATA寄存单元中。将TXDATA内容送入SSPBUF中后,检查SSPIF位。当此位被置1时,表示SSPBUF数据送完。SSPIF位需要手动清零,然后此模块返回。
SHOW:将表TABLE的段地址装入数据寄存器DATA1中。共有四个字符要显示,数据寄存器NUM中存放当前显示的是第几个字体符。
SHOW1:每送一次行选取数据后连续送四个列选数据,数据寄存器R1 中存放在送出的是每四个列选数据是的第几个,初始值为4。
SHOW2:初始化表地址段内偏移数据寄存器R0。由段地址和段内偏移相加得
出要查表数据的页内地址,地址值存放W寄存器。查表得到地址W 内的数据内容放入TXDATA数据寄存器,即当前要送入的列选数据。
SHOW3:将行选数据寄存器R2中的内容送放D口,显示已经送出的四组列选数据。调用延迟模块。关闭D口,LED全灭。从新计算行选数据,然后存入行选数据寄存器R2中。通过R3寄存器判断是否一个字符是否全部显示完毕,如果没有完毕则回到SHOW1模块,送出下面四个列选数据;否则转到下一个模块。 NUMBER:将当前的段内偏移加上段地址作为新的段地址,这个新的段地址存放在DATA1数据寄存器中。判断是否所有字符都已经显示完毕。如果没有则转移到SHOW6模块准备显示下一个字符;如果所有字符都已经显示完毕,则回到主模块MAIN,循环显示四个字符。
DELAY:延迟模块。因为每次LED上只有一行是显示出来的,所以快速的刷新会在人的视觉系统中造成视觉暂留,人眼看到的就会是一幅完成的画面。延迟程序时间的长短应使人肉眼看到的画面连贯,无强烈闪烁。
参考文献:
[1]程明、刘琴,LED显示屏的原理及其无线寻呼通信方法[J].电讯技术,2004,(04).
[2]王永忠,银行自动叫号系统的设计[J].北京服装学院学报(自然科学版),2006,(02).