找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 10281|回复: 1
收起左侧

单片机+74HC154驱动的16×16点阵滚动显示屏设计报告

[复制链接]
ID:267736 发表于 2018-1-21 21:48 | 显示全部楼层 |阅读模式
目录

1 选题背景              1
2 方案论证              1
2.1 课设要求              1
2.2 方案论证              1
3 16×16点阵LED显示器滚动显示电路驱动过程              2
3.1 系统框图              2
3.2 硬件电路              2
3.2.1 晶振电路设计              2
3.2.2 复位电路设计              3
3.2.3 74HC154译码电路设计              3
3.2.4 整体原理设计              4
3.3 驱动程序设计              5
3.3.1 程序框图简介              5
3.3.2 程序分析              6
4 结果分析              10
4.1 程序调试与仿真              10
4.2 仿真结果              10
5 设计总结              10
参考文献              12

1 选题背景
LED显示屏可以显示变化的数字、文字、图形图像;不仅可以用于室内环境还可以用于室外环境,具有投影仪、电视墙、液晶显示屏无法比拟的优点。
LED点阵显示屏以亮度高、工作电压低、功耗小、小型化、寿命长、耐冲击和性能稳定的优点迅速成长为平板显示的主流产品,在信息显示领域得到了广泛的应用。LED的发展前景极为广阔,目前正朝着更高亮度、更高耐气候性、更高的发光密度、更高的发光均匀性、可靠性、全色化方向发展。LED显示屏的应用涉及社会经济的许多领域,主要包括:证券交易、金融信息显示、机场航班动态信息显示、港口、车站旅客引导信息显示、体育场馆信息显示、道路交通信息显示、调度指挥中心信息显示、邮政、电信、商场购物中心等服务领域的业务宣传及信息显示、广告媒体新产品等。
2 方案论证2.1 课设要求
熟悉51系列(兼容)单片机软件开发系统Keil C51集成开发环境(u Vison系列编译器)和Proteus电路分析与实物仿真软件。                     
了解点阵LED显示器结构及字符字模(字符代码),熟悉点阵LED显示器驱动的基本原理。设计16×16点阵LED显示器的驱动电路,并编写程序实现在16×16点阵LED显示器上的字符滚动显示。16×16点阵LED显示器可由4块8×8点阵LED显示器构成。可采用单片机并行端口、移位寄存器、译码器或锁存器等4种驱动方式中的组合实现对16×16点阵LED显示器的驱动。                                                              电路方面主要包括以下3部分。(a)设计单片机的最小系统(包括复位电路和外接的晶振电路),并确定相关元器件参数。(b)采用动态驱动的方式,设计单片机并行端口、移位寄存器、译码器或锁存器等与16×16点阵LED显示器的驱动电路,主要包括控制点阵LED行和列的连线。(c)采用移位寄存器、译码器或锁存器驱动点阵LED显示器时,设计单片机与移位寄存器、译码器或锁存器间的控制连线。
编写16×16点阵LED显示器字符(串)滚动显示程序,实现数字(0—9)或英文字符(A—G)的滚动显示。
2.2 方案论证
搜集题目的有关资料,并参照目前通用的设计思想和设计方法拟定几套设计方案进行分析比较。最终选定了以PC机为上位机,单片机为核心控制器件,外加译码电路和驱动电路的设计方案。以设计方案为指导思想选择合适的器件来实现这一思想,选择器件时要从功能和电气特性两方面来选择和论证。经过对比选择选定AT89C51单片机为核心控制器件,由74HC154为译码电路器件。论文列出了详细的器件参数和在系统中的连接使用方法[1]。
3 16×16点阵LED显示器滚动显示电路驱动过程
3.1 系统框图
本次设计采用包括为单片机提供时钟信号的晶振电路,进行复位操作的复位电路行控制电路,单片机电路,74HC154译码驱动电路,LED点阵显示电路。如图3-1所示。
(见附件)
图3-1 系统框图
3.2 硬件电路
3.2.1 晶振电路设计
外界晶振电路是单片机的心脏,它控制着单片机的工作节奏,其典型值为 12MHZ。XTAL1、XTAL2 引脚外界晶振和电容组成振荡器。振荡器产生的时钟频率主要由晶振频率决定,C1 和 C2 的作用有两个:其一是使振荡器起振,其二是对振荡器的频率ƒ起微调作用(C1、 C2 变大,ƒ变小),其典型值为 30pF,振荡器在加电以后月 10ms 开始起振,XTAL2 输出 3V 左右的正弦波,振荡器产生的时钟送入单片机内部[2],如图3-1所示。

图3-1 晶振电路
3.2.2 复位电路设计
本次设计采用上电复位电路,对于 AT89C51 的上电复位电路,只要在 RST 复位输入引脚上接一电容至 Vcc 端,下接一个电阻到地即可。对于 CMOS 型单片机,由于在 RST 端内部有一个下拉电阻,故可将外部电阻去掉,而将外接电容减至 1μF。上电复位的工作过程是在加电时,复位电路通过电 容加给 RST 端一个短暂的高电平信号,此高电平信号随着 Vcc 对电容的充电过程而逐渐回落,即 RST 端的高电平持续时间取决于电容的充电时间。为了保证系统能够可靠地复位,RST 端的高电平信号必须维持足够长的时间。上电时,Vcc的上升时间约为 10ms,而振荡器的起振时间取决于振荡频率,如图3-2所示。
图3-2 复位电路
3.2.3 74HC154译码电路设计
74HC154是一款高速CMOS器件,74HC154引脚兼容低功耗肖特基TTL(LSTTL)系列。
    74HC154译码器可接受4位高有效二进制地址输入,并提供16个互斥的低有效输出。74HC154的两个输入使能门电路可用于译码器选通,以消除输出端上的通常译码“假信号”,也可用于译码器扩展。该使能门电路包含两个“逻辑与”输入,必须置为低以便使能输出端。任选一个使能输入端作为数据输入,74HC154可充当一个1-16的多路分配器。当其余的使能输入端置低时,地址输出将会跟随应用的状态。如图3-3所示。
图3-3 74HC154译码电路
3.2.4 整体原理设计
原理图如图3-4所示。

图3-4  原理图
电路设计需要的元器件包括电阻,电容,单片机,译码器,移位寄存器,LED点阵等。具体元器件规格数量见表3-1所示。
表3-1 元器件清单
元器件型号
规格参数
数量
电阻
10kΩ
1个
电容
30uF
1个
电容
30pF
2个
晶振
11.0592MHz
1个
单片机
AT89C51
1个
VCC
5V
5个
GND
接地
3个
按键
四角直插
1个
8x8点阵LED
RED
4个
74HC154

1个
3.3 驱动程序设计
3.3.1 程序框图简介
程序主要有头文件,端口定义,定义所用的函数,字模函数,具体函数编写包括主函数。根据电路图原理,主体流程图如图3-6所示。
(见附件)
图3-6 程序框图
3.3.2 程序分析
16×16点阵LED显示器基于74HC154译码驱动的C语言程序分析。

4 结果分析
4.1 程序调试与仿真
完成硬件设计和软件程序编写后,将keil uvison4软件中编辑好的程序输出文件载入protues软件中的单片机AT89C51中进行仿真。按照显示的结果进行程序的调试,显示的时间通过延时函数改变。调试结束后可以验证该设计的硬件方案和软件方案的正确性。首先没有出现错误显示且显示的汉字稳定清晰,说明了电路原理的合理,所选元件也是正确的;其次显示的内容也与所编程序相符合,说明软件方案也是可行的。
4.2 仿真结果
运行程序,在16×16点阵显示屏上依次显示A-G七个字符,并且循环显示。运行结果如图4-1,图4-2所示。


图4-1  显示字符B                            图4-2  显示字符E              
5 设计总结
经过一段时间的工作,终于完成了基于51单片机的LED显示系统的设计,项目所要求的功能全部达到。通过这次设计收获颇多,不仅是所作题目涉及到的软硬件知识还有更为重要的实际经验和过程中所发现的问题。
从设计之初就确定了参照大屏幕显示屏的实现方法和实际情况设计一款小屏幕的LED点阵显示屏。在查阅了大量的大屏幕显示屏资料后确定了题目的设计方案。在实现这一设计的过程中所遇到的问题和困难给我留下了宝贵的经验和深刻教训。这些经验和教训是:
(1)设计之前应该进行大量的资料收集和分析,确定一个清晰的设计思路;
(2)器件选择时要详细阅读器件使用手册,不但要考虑器件的功能实现还要考虑器件在整个系统中的兼容性;
(3)软件的编写不但要实现功能还要不断的优化、简练、易读。
参 考 文 献
  • 张义和.例说51单片机(C语言版).人民邮电出版社.2008:21-22
  • 何宏.单片机原理及其应用.清华大学出版社.2012:7-8

单片机源程序如下:
  1. #include <reg51.h>
  2. #define  u8                unsigned char    //定义无符号字符型
  3. #define  u16  unsigned int      //定义无符号整型
  4. #define  SPEED   18      
  5. u8  code table1[]={             //定义低八位数组
  6. /*--  文字:     --*/
  7. /*--  宋体12;  此字体下对应的点阵为:宽x高=8x16   --*/
  8. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  9. …………
  10. …………限于本文篇幅 余下代码请从51黑下载附件…………
  11. /*--  文字:     --*/
  12. /*--  宋体12;  此字体下对应的点阵为:宽x高=8x16   --*/
  13. 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
  14.             
  15. };
  16. u8 i,j,m=0;
  17. u16 z;                         //定义字符
  18. void delay(u16);
  19. void main()
  20. {
  21.               P0=0x00;
  22.               P2=0x00;
  23.               P3=0xff;                     //端口初始化
  24.               while(1)
  25.               {
  26.               for(i=0;i<120;i++)                                             //确定扫描起点
  27.               {
  28.                             for(z=0;z<SPEED;z++)      //确定显示字符的速度
  29.                             {
  30.                                           for(j=0;j<16;j++)                //确定每个列所显示的内容
  31.                                           {
  32.                                                         m=i+j;
  33.                                                         P3=j;
  34.                                                         delay(1);                     //延时程序                           
  35.                                                         P0=table1[m];   //P0口输出数组
  36.                                                         P2=table2[m] ;  //P2口输出数组
  37.                                                         delay(1);       //延时程序
  38.                                                         P0=0x00;
  39.                                                         P2=0x00;
  40.                                           }
  41.                             }
  42.               }
  43. ……………………

  44. …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
22.png
所有资料51hei提供下载:
http://www.51hei.com/bbs/dpj-105747-1.html




回复

使用道具 举报

ID:550522 发表于 2019-5-31 08:55 | 显示全部楼层
你有原理图和pcb吗
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表