单片机课程设计点阵实现汉字显示系统的设计课程设计报告._第1页
单片机课程设计点阵实现汉字显示系统的设计课程设计报告._第2页
单片机课程设计点阵实现汉字显示系统的设计课程设计报告._第3页
单片机课程设计点阵实现汉字显示系统的设计课程设计报告._第4页
单片机课程设计点阵实现汉字显示系统的设计课程设计报告._第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、( 点阵实现汉字显示系统的设计 )课程设计说明书一、设计内容及要求利用点阵实现汉字、数字、字母等显示,并实现滚动显示。二、设计原始资料单片机原理及应用教程 范立南 2006年 1月单片机原理及应用教程 刘瑞新 2003年07月 三、设计完成后提交的文件和图表1计算说明书部分1)方案论证报告打印版或手写版2)程序流程图3)具体程序 2图纸部分:具体电路原理图打印版四、进程安排教学内容 学时 地点资料查阅与学习讨论 1天 单片机实验室分散设计 5天 单片机实验室编写报告 3天 单片机实验室成果验收 1天 单片机实验室 五、主要参考资料电子设计自动化技术基础马建国、孟宪元编 清华大学出版

2、2004年4月 实用电子系统设计基础 姜威 2008年1月 单片机系统的PROTEUS设计与仿真 张靖武 2007年4月 答辩小组成绩总成绩目录目录6摘要71.系统方案(方案论证)81.2 51系列单片机简介81.3 LED点阵介绍11 1.4 74HC595介绍12 2.理论分析与计算132.1LED显示方式132.2 程序流程图142.3颜色变换163.电路与程序设计163.1源程序163.2 PROTEUS仿真224.结果分析245.总结(经验教训)25参考文献26摘要LED点阵显示屏在银行、车站、医院、街头、公交车等随处可见。LED点阵模块以发光二极管为像素单元,将发光二极管芯阵列组合

3、后封装而成。具有亮度高、功耗低、引脚少、视角大、寿命长、耐湿、耐冷热、耐腐蚀等特点。本文详细介绍了基于51单片机的LED显示屏控制系统的显示原理,对8*16点阵汉字、字母、数字进行显示,显示屏由2个8*8的LED点阵模块组成一个8*16点阵LED。系统仿真利用PORTEUS仿真软件和KEIL软件的联调对LED点阵显示屏系统进行调试,最终在试验台进行测试。本次设计使用双色共阴极LED点阵,系统使用74HC595芯片,使串行输出转换成并行输出,驱动矩阵LED。最终在点阵屏上能滚动显示汉字字母数字。因使用的是双色点阵,该系统还能通过按键控制显示屏的颜色。关键字:AT89C51 双色点阵屏 PROTE

4、US仿真 74HC5951.系统方案(方案论证) 1.1设计框图及介绍 LED点阵总体框图如图1.1所示,点阵电路大体上可以分成微机本身的硬件、显示驱动电路、控制信号电路三部分。控制电路部分包括一个51CUP和一些外围电路。在整个电路当中此控制电路部分相当于一个上位机,它负责控制整个电路以及相应的程序的运行、与PC机的串行通讯、以及给屏体电路部分发送命令。点阵显示屏体、以及它的行和列的各个驱动电路。由于两部分的电路在制板时可以放到一起,所以可以将其字库放到控制电路部分使用串行通讯方式来与屏体电路部分进行数据和命令的传送。单 片 机行驱动器LED 显 示 点 阵列 驱 动 器 图1.1 点阵显示

5、的总体框图1.2 51系列单片机简介单片机(Microcontroller,又称微处理器)是在一块硅片上集成了各种部件的微型机,这些部件包括中央处理器CPU、数据存储器RAM、程序存储器ROM、定时器/计数器和多种I/O接口电路。8051单片机的基本结构见图1.2。 图1.2 8051单片机的基本结构8051是MCS-51系列单片机的一个产品。MCS-51系列单片机是Intel公司推出的通用型单片机,8051单片机系列指的是MCS-51系列和其他公司的8051衍生产品。这些衍生品是在基本型基础上增强了各种功能的产品。这些产品给8位单片机注入了新的活力,给它的开发应用开拓了更广泛的前景。8051

6、系列的内部结构可以划分为CPU、存储器、并行口、串行口、定时器/计数器、中断逻辑几部分。(1)中央处理器8051的中央处理器由运算器和控制逻辑构成,其中包括若干特殊功能寄存器(SFR)。算术逻辑单元ALU能对数据进行加、减、乘、除等算术运算;“与”、“或”、“异或”等逻辑运算以及位操作运算。ALU只能进行运算,运算的操作数可以事先存放到累加器ACC或寄存器TMP中,运算结果可以送回ACC或通用寄存器或存储单元中,累加器ACC也可以写为A。B寄存器在乘法指令中用来存放一个乘数,在除法指令中用来存放除数,运算后B中为部分运算结果。程序状态字PSW是个8位寄存器,用来寄存本次运算的特征信息,用到其中

7、七位。PSW的格式如下所示,其各位的含义是:CY:进位标志。有进位/错位时CY=1,否则CY=0。 AC:半进位标志。当D3位向D4位产生进位/错位时,AC=1,否则AC=0,常用于十进制调整运算中。F0:用户可设定的标志位,可置位/复位,也可供测试。RS1、RS0:四个通用寄存器组选择位,该两位的四种组合状态用来选择03寄存器组。OV:溢出标志。当带符号数运算结果超出-128+127范围时OV=1,否则OV=0。当无符号数乘法结果超过255时,或当无符号数除法的除数为0时OV=1,否则OV=0。P:奇偶校验标志。每条指令执行完,若A中1的个数为奇数时P=1,否则P=0,即偶校验方式。控制逻辑

8、主要包括定时和控制逻辑、指令寄存器 、译码器以及地址指针DPTR和程序寄存器PC等。单片机是程序控制式计算机,即它的运行过程是在程序控制下逐条执行程序指令的过程:从程序存储器中取出指令送指令存储器IR,然后指令译码器ID进行译码,译码产生一系列符合定时要求的微操作信号,用以控制单片机的各部分动作。8051的控制器在单片机内部协调各功能部件之间的数据传送、数据运算等操作,并对单片机发出若干控制信息。这些控制信息的使用专门的控制线,诸如PSEN、ALE、EA以及RST,也有一些是和P3口的某些端子合用,如WR和RD就是P3.6和P3.7,他们的具体功能在介绍8051引脚是一起叙述。(2)存储器组织

9、8051单片机的存储器结构特点之一是将程序存储器和数据存储器分开,并有各自的寻址机构和寻址方式,这种结构称为哈佛结构单片机。这种结构与通用微机的存储器结构不同,一般微机只有一个存储器逻辑空间,可随意安排ROM或RAM,访存时用同一种指令,这种结构称为普林斯顿型。8051单片机在物理上有四个存储空间:片内程序存储器和片外程序存储器、片内数据存储器和片外数据存储器。8051片内有256K数据存储器RAM和4KB的程序存储器ROM。除此之外,还可以在片外扩展RAM和ROM,并且各有64KB的寻址范围。也就是最多可以在外部扩展2*64KB存储器。8051的存储器组织结构如图2.3所示。图 1.3 80

10、51存储器组织结构64K字节的程序存储器(ROM)空间中,有4K字节地址区对于片内ROM和片外ROM是公用的,这4K字节地址是0000HFFFH。而1000HFFFFH地址区为外部ROM专用。CPU的控制器专门提供一个控制信号EA用来区分内部ROM和外部ROM的公用地址区:当EA接高电平时,单片机从片内ROM的4K字节存储器区取指令,而当指令地址超过0FFFH后,就自动的转向片外ROM取指令。当EA接低电平时,CPU只从片外ROM取指令。程序存储器的某些单元是保留给系统使用的:0000H0002H单元是所有执行程序的入口地址,复位以后,CPU总是丛0000H单元开始执行程序。0003H002A

11、H单元均匀地分为五段,用做五个中断服务程序的入口。用户程序不应进入上述区域。8051的RAM虽然字节数不很多,但却起着十分重要的作用。256个字节被分为两个区域:00H7FH时真正的RAM区,可以读写各种数据。而80HFFH是专门用于特殊功能寄存器(SFR)的区域。对于8051安排了21个特殊功能寄存器,每个寄存器为8位,所以实际上128个字节并没有全部利用。内部RAM的各个单元,都可以通过直接地址来寻找,对于工作寄存器,则一般都直接用R0R7,对特殊功能寄存器,也是直接使用其名字较为方便。8051内部特殊功能寄存器都是可以位寻址的,并可用“寄存器名.位”来表示,如ACC.0,B.7等。1.3

12、 LED点阵介绍8×8单色点阵共需要64个发光二极管组成,且每个二极管是放置在行线与列线的叉点上。对于点阵型LED显示可以采用共阴极或共阳极,本系统采用共阳极,其硬件电路如图1.1所示。当行上有一正选通信号时,列选端八位数据为0的发光二极管便导通点亮。这样只需要将图形或文字的显示编码作为列信号跟对应的行信号进行逐次扫描,就可以逐行点亮点阵。只要扫描速度大于24Hz,由于扫描时间很快,人眼的视觉有暂留效应,就可以看到显示的是完整的图形或文字。8×8点阵LED结构下图1.5所示。 图1.4 8×8点阵外观及引脚图 图1.5 8*8 LED点阵结构 1.4 74HC59

13、5介绍    图1.6 74HC59574HC595是硅结构的CMOS器件, 兼容低电压TTL电路,遵守JEDEC标准。 74HC595是具有8位移位寄存器和一个存储器,三态输出功能。 移位寄存器和存储器是分别的时钟。 数据在SHcp的上升沿输入,在STcp的上升沿进入的存储寄存器中去。如果两个时钟连在一起,则移位寄存器总是比存储寄存器早一个脉冲。 移位寄存器有一个串行移位输入(Ds),和一个串行输出(Q7),和一个异步的低电平复位,存储寄存器有一个并行8位的,具备三态的总线输出,当使能OE时(为低电平),存储寄存器的数据输出到总线。 8位串行输入/输出或者并行输出移位寄存

14、器,具有高阻关断状态。三态。 特点8位串行输入 /8位串行或并行输出 存储状态寄存器,三种状态 输出寄存器可以直接清除 100MHz的移位频率 输出能力并行输出,总线驱动; 串行输出;标准中等规模集成电路 595移位寄存器有一个串行移位输入(Ds),和一个串行输出(Q7),和一个异步的低电平复位,存储寄存器有一个并行8位的,具备三态的总线输出,当使能OE时(为低电平),存储寄存器的数据输出到总线。 参考数据CPD决定动态的能耗, PDCPD×VCC×f1+(CL×VCC2×f0) F1输入频率,CL输出电容 f0输出频率(MHz) Vcc=电源电压 引脚

15、说明符号 引脚 描述 Q0Q7 15, 1, 7 并行数据输出 GND 8 地 Q7 9 串行数据输出 MR 10 主复位(低电平) SHCP 11 移位寄存器时钟输入 STCP 12 存储寄存器时钟输入 OE 13 输出有效(低电平) DS 14 串行数据输入 VCC 16 电源 功能表 输入 输出 功能 SHCP STCP OE MR DS Q7 Qn × × L × L NC MR为低电平时仅仅影响移位寄存器 × L L × L L 空移位寄存器到输出寄存器 × × H L × L Z 清空移位寄存器,并行输

16、出为高阻状态 × L H H Q6 NC 逻辑高电平移入移位寄存器状态0,包含所有的移位寄存器状态 移入,例如,以前的状态6(内部Q6”)出现在串行输出位。 × L H × NC Qn 移位寄存器的内容到达保持寄存器并从并口输出 L H × Q6 Qn 移位寄存器内容移入,先前的移位寄存器的内容到达保持寄存器并出。 注释H高电平状态 L低电平状态 上升沿 下降沿 Z高阻 NC无变化 ×无效 当MR为高电平,OE为低电平时,数据在SHCP上升沿进入移位寄存器,在STCP上升沿输出到并行端口。 2.理论分析与计算2.1LED显示方式汉字显示屏用于显

17、示汉字、字符及图像信息,在公共汽车、银行、医院及户外广告等地方都有广泛的应用。下面是简单的汉字显示屏的制作,由单片机控制汉字的显示内容。使用了两块8×8的LED点阵发光管的模块,组成了一个8×16的LED点阵显示屏。在这里仅做了四个汉字四个字母和十个数字的显示,在实际的使用中可以根据这个原理自行的扩展显示的内容,下面是介绍汉字显示的原理。 LED驱动显示采用动态扫描方法,动态扫描方式是逐列轮流点亮,描驱动以8×16点阵为例,把所有同一行的发光管的阳极连在一起,把所有同一列的发光管的阴极连在一起(共阳的接法),先送出对应第1列发光管亮灭的数据并锁存,然后选通第1列使

18、其燃亮一定的时间,然后熄灭;再送出第2列的数据并锁存,然后选通第2列使其燃亮相同的时间,然后熄灭;.第16列之后,又重新燃亮第1列,反复轮回。当这样轮回的速度足够快(每秒24次以上),由于人眼的视觉暂留现象,就能看到显示屏上稳定的图形。该方法能驱动较多的LED,控制方式较灵活,而且节省单片机的资源。显示数据传输采用串行传输的方法,控制电路可以只用一根信号线,将行列数据一位一位传往行列驱动器,在硬件方面无疑是十分经济的。LED点阵显示模块进行的方法有两种:(1)水平方向(X方向)扫描,即逐列扫描的方式(简称列扫描方式):此时用一个P口输出列码决定哪一列能亮(相当于位码),输出行码(列数据),决定

19、该行上那哪个LED亮(相当于段码)。能亮的列从左到右扫描完16列(相当于位码循环移动16次)即显示出一个完整的图像。(2)竖直方向(Y方向)扫描,即逐行扫描方式(简称行扫描方式):此时用一个P口输出决定哪一行能亮(相当于位码),输出列码(行数据,行数据为将列数据的点阵旋转90度的数据)决定该行上哪些LED灯亮(相当于段码)。能亮的行从上向下扫描完8行(相当于位码循环移位8次)即显示一帧完整的图像。本设计应用的是第一种的扫描方法,即水平方向(X方向)扫描。每一个字由8行8列的点阵形成显示,即每个字均由64个点阵来表示,我们可以把每一个点理解为一个像素。一般我们使用的8×8的点阵宋体字库

20、,即所谓的8×8,是每一个汉字在纵横各8点的区域内显示的。事实上这个汉字屏不仅可以显示汉字,也可以显示在64像素范围内的任何图形。2.2 程序流程图开始每屏显示4次? 字码表初址赋值 N取码指针Y DPTR加1取当前列显示字码第一个字节检测颜色更换按键是否按下18个字符显示完? YY N选择显示颜色默认红色显示 N取码指针加1置位595输出行列码显示内容 延时16列显示完? YN 2.3颜色变换由下图2.1可知点阵的行和列由5个595芯片驱动,通过列码选通是红色LED点亮还是绿色LED点亮。第一个595控制第一个8*8中红色LED,第二个595控制第一个8*8中绿色LED第三个595

21、控制第二个8*8中红色LED,第四个595控制第二个8*8中绿色LED,第五个595控制两个点阵的行。本系统可通过调用不同的送码子程序控制点阵的颜色 图2.1行列控制电路图3.电路与程序设计3.1源程序;-; 8X16双色LED点阵流动显示; 逐列扫描;-ORG0000HAJMP MAINORG0030HMAIN: MOV DPTR,#TAB;字码表初址赋值MOV 18H,#16 ;列数MOV19H,#144;移动18个字符,共144列CM:MOVR5,#4;每屏反复显示4次MOVR3,#16C1:MOVR1,#0FEH ;列控制码 MOV R4,#0FFH MOVR2,#0;取字指针C8:

22、CJNE R3,#8,BB ;前后八列之间的列控制码转换MOV R4,#0FEHMOV R1,#0FFHBB:MOVA,R2MOVC A,A+DPTR;取当前列的显示字码的一个字节CJNE R3,#9,LP ;前后八列之间的列控制码选择LP : JNC CC ;后八列列控制码JNB P3.0,M2 ;选择显示模式JNB P3.1,M3JNB P3.2,M4LCALL SONG2SJMP DDDM2: LCALL SONG4 SJMP DDDM3:LCALL SONG6SJMP DDDM4:LCALL SONG8SJMP DDDCC: ;前八列列控制码 JNB P3.0,M21 JNB P3.1

23、,M31JNB P3.2,M41LCALL SONG1SJMP DDDM21:LCALL SONG3SJMP DDDM31:LCALL SONG5SJMP DDDM41:LCALL SONG7DDD: INC R2 CLR P2.2 SETB P2.2 ACALL DMS;显示1MS DEC R3 DJNZ 18H,C8;未显示16 列,继续MOV18H,#16L:MOVR3,#16DJNZ R5,C1;未显示4次,继续INCDPTR;一屏反复显示4次完,字码表初值加1DJNZ 19H,CM;144列未移动完,继续AJMP MAIN;144列显示完,返回,重新从“ 中文 ”开始显示;-; 延时

24、子程序;-DMS: MOV R6,#8 ;延时子程序L1:MOVR7,#60L2:DJNZ R7,L2DJNZ R6,L1RET ;-; 送信号子程序;-SLM: MOV C,ACC.7;送信号子程序 MOV P2.0,C CLR P2.1 SETB P2.1 RL A DJNZ 20H,SLMMOV 20H,#08H RET;-; 红色显示;-SONG1: ;红色显示 前面八列送信号子程序 MOV 21H,#03H MOV 20H,#08H LCALL SLM ;送行控制码 LOOP:MOV A,R4 ;送列控制码 LCALL SLM DJNZ 21H,LOOPMOV A,R1 ;送列控制码

25、 LCALL SLM MOV A,R1 RL A MOV R1,A RETSONG2: ; 后面八列送信号子程序 MOV 21H,#02H MOV 20H,#08H LCALL SLM ;送行控制码MOV A,R1 LCALL SLM MOV A,R4 ;送列控制码 LCALL SLM MOV A,R4 RL A MOV R4,ALOOP1:MOV A,R1 ;送列控制码 LCALL SLM DJNZ 21H,LOOP1 RET;-; 绿色显示;-SONG3: ;绿色显示 前八列送信号子程序 MOV 21H,#02H MOV 20H,#08H LCALL SLM LOOP2:MOV A,R4

26、;送列控制码 LCALL SLM DJNZ 21H,LOOP2 MOV A,R1 ;送列控制码 LCALL SLM MOV A,R1 RL A MOV R1,AMOV A,R4 ;送列控制码 LCALL SLM RETSONG4: ; 后八列送信号子程序 MOV 21H,#03H MOV 20H,#08H LCALL SLM ;送行控制码 MOV A,R4 ;送列控制码 LCALL SLMMOV A,R4 RL A MOV R4,A LOOP3: MOV A,R1 ;送列控制码 LCALL SLM DJNZ 21H,LOOP3 RET;-; 左红右绿显示;-SONG5: ; 后八列送信号子程序

27、 MOV 21H,#03H MOV 20H,#08H LCALL SLM ;送行控制码 LOOP4: MOV A,R4 ;送列控制码 LCALL SLM DJNZ 21H,LOOP4 MOV A,R1 ;送列控制码 LCALL SLM MOV A,R1 RL A MOV R1,A RETSONG6: ; 后八列送信号子程序 MOV 21H,#03H MOV 20H,#08H LCALL SLM ;送行控制码 MOV A,R4 ;送列控制码 LCALL SLM MOV A,R4 RL A MOV R4,ALOOP5:MOV A,R1 ;送列控制码 LCALL SLM DJNZ 21H,LOOP5

28、 RET;-; 橙黄色显示;-SONG7: ; 后八列送信号子程序 MOV 21H,#02H MOV 20H,#08H LCALL SLM ;送行控制码 LOOP6: MOV A,R4 ;送列控制码 LCALL SLM DJNZ 21H,LOOP6 MOV 21H,#02HLOOP7: MOV A,R1 ;送列控制码 LCALL SLM DJNZ 21H,LOOP7 MOV A,R1 RL A MOV R1,A RETSONG8: ; 后八列送信号子程序 MOV 21H,#02H MOV 20H,#08H LCALL SLM ;送行控制码 LOOP8: MOV A,R4 ;送列控制码 LCAL

29、L SLM DJNZ 21H,LOOP8 MOV 21H,#02H MOV A,R4 RL A MOV R4,ALOOP9:MOV A,R1 ;送列控制码 LCALL SLM DJNZ 21H,LOOP9 RET;-; 字码表;-TAB:DB 3CH,24H,24H,0FFH,24H,24H,3CH,0H; 中 DB 4H,84H,4CH,36H,34H,4CH,84H,84H;文DB 0H,0FFH,0D5H,0FDH,0F5H,0D5H,0FFH,0H ;国DB 0H,6H,2H,0A6H,5FH,0F6H,62H,96H;家DB 0H,0H,0FFH,80H,80H,80H,0H,0H;

30、LDB 0H,7EH,81H,81H,81H,7EH,0H,0H;ODB 0H,3FH,40H,80H,40H,3FH,0H,0H;VDB 0H,0FFH,89H,89H,89H,81H,0H,0H;EDB 0H,0H,7CH,82H,82H,7CH,0H,0H;0 DB 0H,0H,82H,0FFH,80H,0H,0H,0H ;1DB 0H,0H,0C6H,0A1H,91H,8EH,0H,0H ;2DB 0H,0H,46H,81H,91H,6EH,0H,0H;3DB 20H,30H,28H,24H,0FFH,20H,20H,0H ;4DB 0H,0H,4FH,89H,89H,71H,0H,0

31、H;5DB0H,0H,7EH,89H,89H,72H,0H,0H;6DB0H,1H,1H,0F9H,5H,3H,1H,0H;7DB0H,66H,99H,91H,99H,66H,0H,0H;8DB0H,4EH,91H,91H,91H,7EH,0H,0H;9DB 3CH,24H,24H,0FFH,24H,24H,3CH,0H; 中 DB 4H,84H,4CH,36H,34H,4CH,84H,84H;文END;程序的基本原理:P2.0口送行列扫描码;显示完一列,列控制码左移,显示第2列。一直到16 列显示完,;即显示了一屏。重新从116列,反复显示4次,以免字符一闪而过。;接着显示下屏,下一屏的取字

32、指针的地址加1,(INC DPTR)即该屏第1 列是上屏的第2 列,;也就是相当于左移一列。直到18个字符全部显示后,再从新开始。这样,就实现了移动显示。3.2 PROTEUS仿真由于Proteus元件库中没有双色点阵块,Proteus仿真时由红绿两块点阵块代替双色点阵,Proteus仿真时单片机需要加载程序,加载程序为.HEX文件。本设计利用Keil Vision4, 在新建Keil项目时选择AT89C52单片机作为CPU,将源程序导入,在“Options For Target”对话窗口中,选中“Output”选项中的“Create HEX File”,编译链接后就可以生成.HEX文件。在Proteus ISIS中,选中AT89C51并单击鼠标左键,对AT89C51进行设置,设置单片机时钟频率为12MHz,按照正确的文件路径加载.HEX文件。对单片机设置完毕后就可以开始仿真了。仿真过程中如有硬件问题可在Proteus ISIS中直接修改,如有软件问题可在Keil Vision2中直接修改,通过Keil与Proteus的联合调试就可以得到满意的结果。利用Proteus实现了对点阵式LED滚动汉字显示屏的仿真,说明程序和电路图都没有问题。 图3.1PROTEUS仿真电路图 图3

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论