文档介绍:黑龙江科技学院
(计算机与信息工程学院)
单片机课程设计
(本科生)
学生姓名王永刚班级计03—2班学号 4号
设计题目点阵LED显示系统
指导教师姓名孔庆臣
成绩
点阵LED显示系统
一功能及意义
点阵显示在当今人民生活中无处不在,大到大屏幕电视,小到活动布告栏等。它的优点是可按需要的大小、形状、单色和彩色来组合。大型的显示屏能显示出各种图案、标语广告、时间、天气预报、比赛成绩等信息,广泛的应用于车站、码头、影剧院、体育场等公共场所。
显示屏可以用大量的发光器件(灯泡、发光二极管等)来控制,控制显示屏上各个发光器件的状态,就能显示出各种文字或图案,各种显示屏的结构和大小不尽相同,但工作原理是一样的,都以一组开关量来控制屏幕显示内容。可以采用动态扫描或静态显示方式,用单片机作为显示屏的控制器,能使显示的信息丰富、操作方便。
利用单片机实现对点阵模块的控制的方法有很多种,当单片机控制口不能满足设计要求时,这时候就需要对单片机扩展外围接口。
利用单片机89C51及8255并行接口电路来实现对点阵显示模块的控制。本系统利用了8255的PA、PB、PC口,及单片机的P1口来对16×16的点阵模块的行列进行控制,采用动态的列扫描,使用行输入字模的数据方式,较完美的实现了文字、图案的切换显示、左右移动完成了设计的基本要求。本系统利用了8255并行接口的动态显示,此设计节省能源,系统稳定。
二硬件电路设计
采用单片机、8255并行接口来实现数据传送及列扫描。利用单片机的P0、P2口对8255进行控制,可扩展三个I/O口:PA、PB、PC口,再加上单片机本身的P1口便可轻松的控制16×16的点阵模块了,PA、PB口进行列扫描,PC、P1口来传送字模数据,通过74LS07来驱动点阵。
在进行软件设计前,要搞清楚点阵模块的详细情况,是共阳的还是共阴的,接法不同则在进行软件设计时候运用的方法也不同,本设计是针对共阴极的接法而言。将单片机的P1口和8255的PC口接在点阵块的阳极上,将8255的PA,PB口接在点阵阴极上。在实现数据传送时,可用按行扫描或者是按列扫描。
原理框图
本系统采用单片机和8255为核心,PA、PB口进行列扫描,PC、P1口来传送字模数据,通过74LS07来驱动点阵,系统框图如图1
LED 16*16 点阵显示模块
PC机
单片机最小系统
8255
7407
7407驱动
列
P1口 PC
图1
单片机最小系统:
对8255的控制是设计中非常重要的一步,对于本系统的设计,要求8255的三个口都设成输出,于是我选择了8255的方式0,它是一种基本的输入输出方式。在这种工作方式下,任一个端口都可由CPU用简单的输入输出指令进行读或写。对于方式的设定是通过8255的D0~D7来控制的: D7:置方式标志,1有效;D6和D5为A口方式选择:00=方式1,01=方式2,1X=方式2;D4:端口A,1=输入,0=输出;D3为端口C(PC7-PC4),1=输入,0=输出;D2:端口B方式选择,0=方式0,1=方式1;D1:端口B,1=输入,0=输出;D0:端口C(PC3~PC0),1=输入,0=输出。
由于这里用来控制点阵, 8255的控制命令字必须为80H,它规定8255在方式0下工作且三个端口均为输出。8255各端口的地址是通过电路的连接来决定的, 8255片选CS接在了74LS138的输出端, 8255各端口地址有很多种选择情况,我们选择的是CS接地,所以8255端口Pa、Pb、Pc口地址分别为0000h,0001h,0002h,控制字寄存器地址为0003h。
点阵显示模块列输入线接至内部LED的阴极端,行输入线接至内部LED的阳极端(若阳极端输入为高电平,阴极端输入低电平,则该LED点亮)。下面以“大”字为例来说明其扫描原理:
每一个字由16行16列的点阵组合显示。由于8255每个口为8位,所以每个字由两部分组成,分为上部和下部,上部由8*16点阵组成, 下部也由8*16点阵组成。
在本例中点阵首先显示的是左上角的第一列的上半部分,首先选中 0列(程序将其置低),即第0列的PC7---PC1口。方向为PC7到-PC1 ,显示汉字“天”时,PC2点灭,由上往下排列,为PC7 灭,PC6 灭, PC5 灭,PC4 灭,PC3 灭,PC2 灭,PC1灭,PC0 灭。即二进制00000000,转换为16进制为 00h.。00H由PC口送出。上半部第一列完成后,继续给下半部的第一列送数,从图可以看到,这一列全部为不亮, 即为00000000,16进制则为00h。此时的字模数据由P1口来送出。第一列全部送完后,延时,清屏,然后再选中1列,仍为PC1点亮,为000