简易电子广告屏的设计内容摘要:

P2. 5SRCLK11 P3. 1VCC16GND8SER14 P3. 0QA15QB1QC2QD3QE4QF5QG6QH7QH19CE13RCLK12 P2. 6SRCLR10 P2. 5SRCLK11 P3. 1VCC16GND8SER14 P3. 0161514131211109123456781615141312111091 2 3 4 5 6 7 8 1615141312111091234567816151413121110912345678470K470K470K470K470K470K470K470K470K470K470K470K470K470K470K470KGNDGNDVCCVCC8X8LED8X8LED8X8LED8X8LEDQ9Q10Q11Q12Q13Q14Q15Q16Q2Q3Q4Q5Q6Q7Q1Q8Q9Q10Q11Q12Q13Q14Q15Q16Q2Q3Q4Q5Q6Q7Q8Q1 图 34 74HC595 构成的电路图 行驱动器部分 单片机 P3 口低 4 位输出的行号经一个线译码器 74HC154 译码后生成 16 条行选通信号线,再经过驱动器驱动对应的行线。 一条行线上要带动 16 列的 LED 进行显示,按每一德州学院 物理与电子信息学院 2020 届 电子信息科学与技术专业 毕业设计 10 LED 器件 20 mA 电流计算, 16 个 LED 同时发光时,需要 320 mA 电流,选用三极管作为驱动管可满足要求。 当选通端 G G2 均为低电平时,译码器处于工作状态,可将地址输入端( A、 B、 C、 D)的二进制编码在一个对应的输出端以低电平译出。 否则,译码器被禁止,所有的 输出端被封锁在高电平。 Y0~ Y15 为译码输出端,输出是低电平有效,即在选通时,每输入一个二进制代码将使对应的一个输出端为低电平,而其它输出端均为高电平的无效信号。 连接过程 :74HC154 的输入端 A、 B、 C、 D 分别与芯片 AT89C51 的 、 、 管脚相连,输出端 Y0~ Y15 与电阻相连。 系统的行驱动电路 如 图 35 所示 [9]。 Y01Y12Y23Y34Y45Y56Y67Y78Y89Y910Y1011Y1112Y1213Y1314Y1415Y1516VCC24A23B22C21D20G219G118GND1274HC154 图 35 74HC154 的引脚图 LED 显示模块 将 LED 像素模块按照实际需要大小拼装排列成矩阵,配以专用显示驱动电路、直流稳压电源、软件、框架以 及外装饰灯,即构成一台 LED 显示屏,用来显示文字、图形、动画、行情、视频、录像等各种信息的显示屏幕。 LED 显示屏是将发光二极管按行按列布置的,驱动时也就按行按列驱动。 在扫描驱动方式下可以按行扫描按列控制,也可以按列扫描按行控制。 LED 显示屏现多采用多 88 点阵显示单元拼接而成。 本文就是使用 采用 4 块 88 点阵 LED 显示模块来组成 1616 点阵 [10]显示模式 ,以满足汉字显示的要求。 汉字显示的原理: 我们以 UCDOS 中文宋体字库为例,每一个字由 16 行 16 列的点阵组成显示。 即国标汉字库中的每一个字均由 256 点阵来 表示。 我们可以把每一个点理解为一个像素,而把每一个字的字形理解为一幅图像。 事实上这个汉字屏不仅可以显示汉字,也可以显示在 256 像素范围内的任何图形。 用 8 位的 AT89C51 单片机控制, 由于单片机的总线为 8 位,一个字需要拆分为 2 个部分。 一般我们把它拆分为上部和下部,上部由 816 点阵组成,下部也由 816 点阵组成。 汉字显示图 如 德州学院 物理与电子信息学院 2020 届 电子信息科学与技术专业 毕业设计 11 图 36 所示。 图 36 汉字的显示图 在本例中单片机首先显示的是左上角的第一列的上半部分,即第 0 列的 p00~p07 口。 方向为 p00 到 p07 ,显示汉字 “ 大 ” 时, p05 点亮 ,由上往下排列,为 灭, 灭 , p0.2 灭 灭 , 灭 , 亮 , 灭 , 灭。 即二进制 00000100,转换为 16 进制为 04h。 上半部第一列完成后,继续扫描下半部的第一列,为了接线的方便,我们仍设计成由上往下扫描,即从 p27 向 p20 方向扫描,从上图可以看到,这一列全部为不亮,即为 00000000, 16 进制则为 00h。 然后单片机转向上半部第二列,仍为 p05 点亮,为 00000100,即 16 进制 04h。 这一列完成后继续进行下半部分的扫描, p21 点亮,为二进制 00000010,即 16 进制 02h。 依照这个方法,继续进行下面的扫描,一共扫描 32 个 8 位, 可以得出汉字 “ 大 ” 的扫描代码为: 04H,00H,04H,02H,04H,02H,04H,04H, 04H,08H,04H,30H,05H,0C0H,0FEH,00H, 05H,80H,04H,60H,04H,10H,04H,08H, 04H,04H,0CH,06H,04H,04H,00H,00H由这个原理可以看出,无论显示何种字体或图像,都可以用这个方法来分析出它的扫描代码从而显示在屏幕上。 因为本系统所设计的 LED 显示屏只能显示一个或几个汉字,如果想要显示多个汉字,就需要多个 88 点阵模块组成多个 1616 点阵,当然还需要多个列驱动器级联,这样可以显示更多的文字。 通信系统设计 AT89C51 单片机具有全双工串行 UART 通道,支持单片机进行数据的串行传输。 除了单片机要与 PC 机制定通信协议确定发送速率外,还需要解决的问题就是信号电平的问题。 德州学院 物理与电子信息学院 2020 届 电子信息科学与技术专业 毕业设计 12 RS232C 标准 规定了 PC 机发送数据总线 TXD 和接收数据总线 RXD 采用 EIA 电平,即传送数字“ 1”时传输线上的电平在 3V~15V 之间;传送数字“ 0”时,传输线上的电平 +3V~+15V 之间。 但单片机串行口采用正逻辑 TTL 电平,即数字“ 1”时为 +5V,数字“ 0”时为 5V,所以单片机与计算机不能直接相连进行通信,必须将 RS232C 与 TTL 电平进行转换。 在通用的电平转换芯片中 MAX232 系列的芯片以集成度高, +5V 电源工作,只需外接5 个小电容即可完成电平之间的转换,在该显示系统中,操作人员可以通过它改写程序来控制显示屏显 示的汉字等等,电路如图 37 所示。 图 37 通信系统设计电路图 4 系统程序的设计 显示屏软件的主要功能是向屏体提供显示数据,并产生各种控制信号,使屏幕按设计的要求显示文字、图像或其他信息。 根据软件分层次设计的原理,可把显示屏的软件系统分成两大层:第一层是底层的显示驱动程序,第二层是上层的系统应用程序。 显示驱动程序负责向屏体送显示数据,并负责产生行扫描信号和其它控制信号,配合完成 LED 显示屏的扫描显示工作,显示驱动程序由定时器 T0 中断程序实现。 系统应用程序完成系统环境设置 (初始化 )、显示效果处理等工作,由主程序来实现 [11]。 显示驱动程序 显示驱动程序在进入中断后首先要对定时器 T0 重新赋初值,以保证显示屏刷新率的稳定 , 1/ 16 扫描显示屏的刷新率 (帧频 )计算公式如下: 刷新率 (帧频 )=1/16T0 溢出率 德州学院 物理与电子信息学院 2020 届 电子信息科学与技术专业 毕业设计 13 =1/16fosc/12(65536—to) ( 41) 其中 fosc 为晶振频率 [12], to 为定时器 T0 初值 (工作在 16 位定时器模式 )。 然后显示驱动程序查询当前燃亮的行号,从显示缓存区内读取下一行的显示数据,并通过串口发送给移位寄存器。 为消除在切换行显示数据的时候产生拖尾现象,驱动程序先要关闭显示屏,即消隐,等显示数据打入输出锁存器。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。