广东药学院微机原理课程设计2012级电子信息工程题目16x16点阵电子广告牌小组第二组组员吴耀龙·刘昌·潘搌鹏时间2014年6月18日1小组成员分工:组长:吴耀龙负责Protues画图与键盘代码,8255控制,闪烁显示组员:潘搌鹏:负责Protues图改进,流水显示广告与文字编码刘昌:课题选择与功能实现负责程序调试与改进成果:基本实现预期功能,但是复位功能未能实现,还有按键检测时序上的一点小缺陷2摘要LED显示屏分为图文显示屏和视频显示屏,均由LED矩阵块组成。LED显示屏可以显示变化的数字、文字、图形图像;不仅可以用于室内环境还可以用于室外环境,具有投影仪、电视墙、液晶显示屏无法比拟的优点。LED之所以受到广泛重视而得到迅速发展,是与它本身所具有的优点分不开的。这些优点概括起来是:亮度高、工作电压低、功耗小、小型化、寿命长、耐冲击和性能稳定。LED的发展前景极为广阔,目前正朝着更高亮度、更高耐气候性、更高的发光密度、更高的发光均匀性,可靠性、全色化方向发展。现代LED的发展很快,很多研究领域非常已经深刻,所以想利用自己学的微机知识简单的研究一下用微机驱动的LED显示汉字,以达到学以致用和实践相结合的目的,同时巩固加深自己的微机知识。用点阵方式构成图形或文字,是非常灵活的,可以根据需要任意组合和变化,只要设计好合适的数据文件,就可以得到满意的显示效果。因而采用点阵式图文显示屏显示经常需要变化的信息,是非常有效的。点阵大小可以有16×16、24×24、32×32、48×48等不同规格,也有单色、双色、和多色几种,最常用的是单色图文屏。单色屏多使用红色或橘红色或橙色LED点阵单元。双色图文屏和多色图文屏,在LED点阵的每一个“点”上布置有两个或多个不同颜色的LED发光器件。换句话说,对应于每种颜色都有自己的显示矩阵。显示的时候,各颜色的显示点阵是分开控制的。事先设计好各种颜色的显示数据,显示时分别送到各自的显示点阵,即可实现预期效果。每一种颜色的控制方法和单色的完全相同,因此掌握了单色图文显示屏的原理,双色屏和多色屏就不难理解了。关键词:LED,微机,点阵,驱动,矩阵31.设计方案1.1、系统构成该设计大体可以分为CPU控制、LED驱动、16x16LED点阵显示几按键控制四部分组成,控制电路部分包括一个8086和构成其最小系统的外围电路。其信号传输规则如图所示1.2、LED动态显示原理LED点阵显示系统中各模块的显示方式:有静态和动态显示两种。静态显示原理简单、控制方便,但硬件接线复杂,在实际应用中一般采用动态显示方式,动态显示采用扫描的方式工作,由峰值较大的窄脉冲电压驱动,从上到下逐次不断地对显示屏的各行进行选通,同时又向各列送出表示图形或文字信息的列数据信号,反复循环以上操作,就可显示各种图形或文字信息。点阵式LED汉字广告屏绝大部分是采用动态扫描显示方式,这种显示方式巧妙地利用了人眼的视觉暂留特性。将连续的几帧画面高速的循环显示,只要帧速率高于24帧/秒,人眼看起来就是一个完整的,相对静止的画面。最典型的例子就是电影放映机。在电子领域中,因为这种动态扫描显示方式极大的缩减了发光单元的信号线数量,因此在LED显示技术中被广泛使用。74LS138驱动电路8086CPU8255并行接口16×16LED显示4该设计采用8086微机做主控制芯片,使用74HC373作为地址锁存器,8255A提供I/O口选通地址,使用8255A进行I/O口的扩展,并使其分别16x16点阵上,点阵采用列为高电平,行为低电平点亮方式。设计目的为按下按键1显示字符“老师IloveU!”,并使其从右至左滚屏显示,按下按键2闪烁显示“老师IloveU!”,可随意切换,按下按键3为复位(该功能未能实现)2.硬件电路设计2.1、硬件原理图(见附录)2.2、8086模块8086有16根数据线和20根地址线,它既能处理16位数据,也能处理8位数据。可寻址的内存空间为1MB。52.3、8255A模块8255A是8086系列配套微处理机并行接口芯片,它可以为CPU与外设之间提供并行I/O的通道。8255A有3个8位的并行I/O口,它可以通过设置多种工作方式,通常不需要附加外部电路,在中小型系统有着广泛的应用。8086通过锁存器74HC373和74LS138为8255A提供地址及方式选择,U3的Q1,Q2输出分别接两片8255A的A0、A1端口,其八位并行输入口接8086的AD0~AD7,两片的8255A的PA,PB口接到点阵,具体如图所示:62.4、16x16显示模块LED16x16X显示模块在网上找的库,Protues中并没有16x16的点阵,该点阵在列线给高电平,行线给低电平就点亮。用第一片8255A,U5的PA,PB接列线,用第二片8255A,U1的PA,PB接行线实现控制72.5、键盘模块这里使用3个可回弹按键开关,分别接到U5,即第一片8255A的PC0~PC2,使用低电平为检测电平。如图所示8开始3.软件程序设计3.1、程序流程图主模块程序流程图:3.2、源程序清单初始化数据段,堆栈段初始化8255A地址、初始化字模区域初始化两片8255A的A,B,C端口工作方式为输出不断调用键盘扫描模块滚屏显示模块(显示期间不断调用键盘扫描)字符闪烁显示模块(显示期间不断调用键盘扫描)程序复位模块Button1Button3Button2Button2Button1Button2Button1Button3Button39代码:1011121314153.2、程序运行结果分析与预测点击按钮1(流水灯模式),显示效果如下图所示:4.系统改进(升级)建议整个电路中,键盘模块的复位功能暂时没有完全实现,仍需要考虑,8255并口还有一些端口,仍然可以进行一些功能的扩展,比如显示多个字符串,字符显示停止功能等16点击按钮2(依次闪烁显示模式),各个字符是以一定的频率循环切换显示,显示效果如下图所示:17总结经过近多日的努力,终于将本次课程设计做完了,但由于水平有限,文中肯定有很多不恰当的地方,请老师指出其中的错误和不当之处,使我能做出改正,我会虚心接受。在本次课程设计过程中,我增强了自己的动手能力和分析能力。通过跟老师和同学的交流,也通过自己的努力,我按时完成了这次课程设计。在此过程中,我学会了很多,也看到了很多自己的不足之处。在以后的学习生活中,我会努力学习专业知识,完善自我,为将来的发展做好充分的准备。总之,在这次课程设计中,我受益匪浅,学到了很多书本上所没有的东西,懂得了理论和实际联系的重要性。在以后的学习中,我不仅要把理论知识掌握牢固,更要提高自己的动手能力和分析能力。18附录硬件原理图: