单片机课程设计之基于Proteus的LED点阵显示屏的设计与仿真

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

单片机应用系统设计课题:基于Proteus的LED点阵显示屏的设计与仿真姓名:班级:学号:指导老师:日期:一绪论八十年代以来出现了组合型IED点阵显示器,以发光二极管为像素,它用高亮度发光二极管芯阵列组合后,环氧树脂和塑模封装而成。具有高亮度、功耗低、引脚少、视角大、寿命长、耐湿、耐冷热、耐腐蚀等特点。点阵显示器有单色和双色两类,可显示红,黄,绿,橙等。LED点阵有4×4、4×8、5×7、5×8、8×8、16×16、24×24、40×40等多种;根据像素的数目分为等,双基色、三基色等,根据像素颜色的不同所显示的文字、图象等内容的颜色也不同,单基色点阵只能显示固定色彩如红、绿、黄等单色,双基色和三基色点阵显示内容的颜色由像素内不同颜色发光二极管点亮组合方式决定,如红绿都亮时可显示黄色,如果按照脉冲方式控制二极管的点亮时间,则可实现256或更高级灰度显示,即可实现真彩色显示。图1--5示出几种LED点阵显示器的内部电路结构和外型规格,其它型号点阵的结构与引脚可试验获得。LED点阵显示器单块使用时,既可代替数码管显示数字,也可显示各种中西文字及符号.如5x7点阵显示器用于显示西文字母.5×8点阵显示器用于显示中西文,8x8点阵用于显示中文文字,也可用于图形显示。用多块点阵显示器组合则可构成大屏幕显示器,但这类实用装置常通过微机或单片机控制驱动。LED点阵扫描驱动方案:由LED点阵显示器的内部结构可知,器件宜采用动态扫描驱动方式工作,由于LED管芯大多为高亮度型,因此某行或某列的单体LED驱动电流可选用窄脉冲,但其平均电流应限制在20mA内.多数点阵显示器的单体LED的正向压降约在2V左右.但大亮点∮10的点阵显示器单体LED的正向压降约为6V。大屏幕显示系统一般是将由多个LED点阵组成的小模块以搭积木的方式组合而成的,每一个小模块都有自己的独立的控制系统,组合在一起后只要引入一个总控制器控制各模块的命令和数据即可,这种方法既简单而且具有易展、易维修的特点。LED点阵显示系统中各模块的显示方式有静态和动态显示两种。静态显示原理简单、控制方便,但硬件接线复杂,在实际应用中一般采用动态显示方式,动态显示采用扫描的方式工作,由峰值较大的窄脉冲驱动,从上到下逐次不断地对显示屏的各行进行选通,同时又向各列送出表示图形或文字信息的脉冲信号,反复循环以上操作,就可显示各种图形或文字信息。Proteus最重要的特点是它能够把用户编写的应用软件作用在微处理器上并和连接在该处理器的外围模拟器件及数字器件协同仿真,就像在真正的单片机应用系统的硬件平台上执行目标代码。支持的微控制器有51系列、Microchip的PIC系列、Atmel的AV系列、和ARM7/LPC2000。Proteus软件使用彻底改变了传统单片机学习和开发方式,初学者可以在没有实验硬件条件下进行仿真实验,开发者也不必经历“原理图设计、PCB线路板制作、元件焊接、然后进行软件编程、通过仿真器对系统硬件和软件调试”过程,可以直接用Proteus进行电路设计和仿真运行程序,运行成功后再制作产品,缩短开发周期,节约开发成本。汉字点阵显示电路设计制作时,显示部分由8×8单色LED模块拼接而成,元件引脚较多,硬件制作繁琐,应用Proteus进行仿真设计,极大缩短开发周期。下文用Proteus软件设计16×16三个汉字静态显示屏。二系统总体设计方案(1)硬件框图汉字点阵的控制电路采用C51系列单片机,硬件电路可分为单片机控制器、LED显示屏行列驱动电路、LED点阵显示屏三部分,如下图所示。系统设计硬件框图单片机AT89C51列驱动74HC595行驱动译码器74HC1543个16X16点阵振荡电路复位电路(2)基本原理点阵LED扫描法介绍点阵LED一般采用扫描式显示,实际运用分为三种方式:(1)点扫描(2)行扫描(3)列扫描若使用第一种方式,其扫描频率必须大于16×64=1024Hz,周期小于1ms即可。若使用第二和第三种方式,则频率必须大于16×8=128Hz,周期小于7.8ms即可符合视觉暂留要求。此外一次驱动一列或一行(8颗LED)时需外加驱动电路提高电流,否则LED亮度会不足。汉字的存储用动态分时扫描技术使LED点阵模块显示图像,需要进行两步工作。第一步是获得数据并保存,即在存贮器中建立汉字数据库。第二步是在扫描模块的控制下,配合行扫描的次序正确地输出这些数据。获得图像数据的步骤是,先将要显示的每一幅图像画在一个如图3.3所示的被分成16×16共256个小方格的矩形框中,再在有笔划下落处的小方格里填上“1”,无笔划处填上“0”,这样就形成了与这个汉字所对应的二进制数据在该矩形框上的分布,再将此分布关系以32×16的数据结构组成64个字节的数据,并保存在只读存贮器ROM中。以这种方式将若干个汉字的数据贮存在存贮器内,就完成了图像数据库的建立工作。然后,依次对多汉字抽取像素信息,并按序排队存放起来,便可得到一个待显示数据序列。将这个序列存到ROM中进一步通过寻址的方法来控制该数据序列的释放过程,就可实现在LED发光二极管点阵上滚动显示多汉字信息的目的。16×16LED点阵模块由图3.4可知,某一时刻能在显示数据序列中定位待显示数据的地址指针可用下式计算:addr=n+m(式3.1)第二步工作的步骤是:先在扫描模块的控制下,由地址线确定每次由ROM送出某一列的16个LED所要显示的汉字的控制字节数据,同时由扫描模块输出的5位扫描码经两个4-16译码器解码后决定相应的某一列可以被点亮,而另外31列都不能被点亮。该状态持续约0.4毫秒后,就接着进行下一行的扫描。当完成了一次32行的扫描后,也就完成了一帧画面的显示。重复上述过程不断修改ROM的地址区间的起始地址,转向下一幅画面的数据传送和显示。如此进行,就可以在LED点阵模块上滚动显示ROM中存储的汉字。滚动显示多汉字信息的原理示意图三硬件系统设计(1)硬件原理图利用Proteus仿真软件制作出详细的硬件原理图如下:VcSTGndu1y1u1y2u1y3u1y4u1y5u1y6u1y7u1y8u1outu1outu2outu2outu3outu3outu4outu4outu5outu5outu6outx1x2x3x4x5x6x7x8x9x10x11x12x13x14x15x16u2y1u2y2u2y3u2y4u2y5u2y6u2y7u2y8u3y1u3y2u3y3u3y4u3y5u3y6u3y7u3y8u4y1u4y2u4y3u4y4u4y5u4y6u4y7u4y8u5y1u5y2u5y3u5y4u5y5u5y6u5y7u5y8u6y1u6y2u6y3u6y4u6y5u6y6u6y7u6y8x1x2x3x4x5x6x7x8x1x2x3x4x5x6x7x8x9x10x11x12x13x14x15x16x9x10x11x12x13x14x15x16u2y1u2y2u2y3u2y4u2y5u2y6u2y7u2y8u1y1u1y2u1y3u1y4u1y5u1y6u1y7u1y8u2y1u2y2u2y3u2y4u2y5u2y6u2y7u2y8u1y1u1y2u1y3u1y4u1y5u1y6u1y7u1y8x1x2x3x4x5x6x7x8x1x2x3x4x5x6x7x8x9x10x11x12x13x14x15x16x9x10x11x12x13x14x15x16u4y1u4y2u4y3u4y4u4y5u4y6u4y7u4y8u3y1u3y2u3y3u3y4u3y5u3y6u3y7u3y8u4y1u4y2u4y3u4y4u4y5u4y6u4y7u4y8u3y1u3y2u3y3u3y4u3y5u3y6u3y7u3y8x1x2x3x4x5x6x7x8x1x2x3x4x5x6x7x8x9x10x11x12x13x14x15x16x9x10x11x12x13x14x15x16u6y1u6y2u6y3u6y4u6y5u6y6u6y7u6y8u5y1u5y2u5y3u5y4u5y5u5y6u5y7u5y8u6y1u6y2u6y3u6y4u6y5u6y6u6y7u6y8u5y1u5y2u5y3u5y4u5y5u5y6u5y7u5y8Q015Q11Q22Q33Q44Q55Q66Q77Q7'9SH_CP11ST_CP12DS14MR10OE13U274HC595Q015Q11Q22Q33Q44Q55Q66Q77Q7'9SH_CP11ST_CP12DS14MR10OE13U374HC595Q015Q11Q22Q33Q44Q55Q66Q77Q7'9SH_CP11ST_CP12DS14MR10OE13U474HC595Q015Q11Q22Q33Q44Q55Q66Q77Q7'9SH_CP11ST_CP12DS14MR10OE13U174HC595+5VXTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U7AT89C51X112MHzC133pC233pC310uR12kR28.2kGND+5VGND+5VGNDQ015Q11Q22Q33Q44Q55Q66Q77Q7'9SH_CP11ST_CP12DS14MR10OE13U574HC595Q015Q11Q22Q33Q44Q55Q66Q77Q7'9SH_CP11ST_CP12DS14MR10OE13U674HC595A23B22C21D20E118E219011223344556677889910101111131214131514161517U874HC154说明:16×16LED静态汉字显示作者:石长华邮箱:sch3461@sina.com.cn日期:2007年08月18日图1.1硬件原理图(2)元器件的选择元件编号规格参数LED16x16点阵PCB板10cm*10cm环氧板U1~U674HC595U7AT89C51U874HC154R12K欧姆C1、C233pFC310uF四系统软件设计(1)编程思路根据以上硬件电路和单片机控制原理,编程思路为:a先对相关变量进行初始化。b调用显示程序c装载三个汉字的第一行数据,并显示出来。d依次显示三个汉字的第二行至第十六行。e结束(2)流程图:(3)程序编写利用字库软件查找所要显示的3个字的代码,为了突出课程设计的唯一性,我用了自己的名字“费星”来加以与其他同学区别。调用显示程序序调用发送字节程序发送第一个字显示汉字延时调用发送字节程序发送第二个字调用发送字节程序发送第三个字结束开始“费”字代码如下{0x04,0x48,0x7F,0xFC,0x04,0x48,0x7F,0xF8,0x44,0x40,0x7F,0xFE,0x04,0x42,0x08,0x4A,0x3F,0xF4,0xD0,0x10,0x11,0x10,0x11,0x10,0x11,0x10,0x02,0xC0,0x0C,0x30,0x30,0x08},//费“星”字代码如下{0x00,0x08,0x3F,0xFC,0x20,0x08,0x3F,0xF8,0x20,0x08,0x3F,0xF8,0x01,0x00,0x21,0x08,0x3F,0xFC,0x21,0x00,0x41,0x10,0xBF,0xF8,0x01,0x00,0x01,0x04,0xFF,0xFE,0x00,0x00},//星“做”字代码如下{0x10,0x20,0x12,0x20,0x12,0x20

1 / 15
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功