ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:442.96KB ,
资源ID:3925169      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3925169.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(8乘88x8点阵汉字显示.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

8乘88x8点阵汉字显示.docx

1、8乘88x8点阵汉字显示单片机课程设计题目:8*8点阵汉字显示器专业班级:*姓名:*学号:*一摘要:用TOP-23088DH-U 8*8点阵块设计制作一个8*16点阵汉字显示器。通过51单片机作为控制系统,由8255的A口为段数据口向两块点阵提供行数据,C口提供扫描列信息,通过74LS154译码后进行扫描,当点阵的行接高电平,列为低电平时,同时选通,则在该点的LED点亮。由于实验箱上所提供的驱动电流太低,不足以点亮二极管,所以在电路中增加一个74LS254芯片,以提供点亮LED所需的驱动电流。同时在P1.0-P1.2口接3个开关,形成按键控制功能选择。点阵模块图如下:如上图所示,本实验通过列扫

2、描方式,扫描同时给行线送显示数据。当扫描到某列,则该列选通,其他列截止,选通瞬间送显示数据,则所对应的二极管亮。点阵依靠循环点亮每一列(或行),快速循环形成一屏图像,而每一屏快速交替,可进一步形成动画的效果。 二设计任务和要求:(1)基本要求:1.能显示8*8的汉字,用两个8*8点阵,显示“大连”。2.通过键盘控制可以改变显示的汉字与图形。3.通过键盘控制,可以实现彩灯控制功能,发光管从内向外周期显示和相反显示。(2)发挥要求:1.增加驱动电路,提高显示亮度。三方案选择和论证:3.1:方案论证:控制模块由8051、74LS154,8255组成,其中,采用51单片机制做一个最小系统,包含有时钟信

3、号电路、复位电路等,154是4线转16线译码器,4线端接8255的PC.0-PC.3口,16线端低电平有效,控制点阵的16列,245是对列的驱动,8255的PA.0-PA.7用于将行扫描数据进行高速串-并转换,实验箱内部便可提供较大电流总够控制点阵的8行,这样,点阵的128个点中被选通的就亮。显示模块由2块88点阵组成,通过相互并联转换成168点阵。3.2:方案选择:(1).实验仪器名称数量8051174LS1541825518X8点阵274LS2451面包板2导线若干万用表1(2).流程图:Y NN YNYN(3).硬件连接四实际操作与调试:(1)实际制作使用keil先对软件程序进行编译测试

4、并进行proteus仿真,调试成功后开始硬件部分。(2).软件调试:编程思路为:先对相关变量进行初始化,循环扫描点亮16列LED,一帧图像扫描完毕后,列指针向右移动一位,再扫描下一帧图像。依此类推,列指针共向右移动16位,这样主观上就感觉向左滚动,移动一个汉字(列指针右移16位)后,字指针指向下一个汉字,这样就能在显示屏上看到汉字滚动。(3).实验程序: ORG 0000h LJMP START ORG 0030HSTART: MOV DPTR,#8003H ;控制口地址 MOV A,#80H;8255初始化,A.B.C口均输出 MOVX DPTR,A MOV P1,#0ffH ;P1口在输入

5、前要先置1 LJMP KEY1;跳到KEY1K2:LCALL KEY2 KEY1: JNB P1.0,K2;当为0时(P1.0未按下),则跳转K2,转判P1.1 MOV R0,#00H ;列号 MOV R1,#00H ;字型码偏移地址 MOV R3,#10H ;计数(扫描16列) A1: MOV DPTR,#8002H ;C口地址 MOV A,R0;将列号给出 MOVX DPTR,A INC R0;加1,为下一列做准备 MOV DPTR,#TAB5 ;取字型码首地址 CLR A ADD A,R1;字型码偏移量 MOVC A,A+DPTR INC R1;为下一个字型码准备 MOV DPTR,#8

6、000H MOVX DPTR,A;字型码从A口输出 LCALL DELAY DJNZ R3,A1;判断16列是否扫描完,未结束则继续扫描 MOV DPTR,#8000H ;清零 MOV A,#00H MOVX DPTR,A LJMP KEY1 RETCLEAR: MOV DPTR,#8000H ;清零 MOV A,#00H MOVX DPTR,A LCALL DELAY1 RETK3:LCALL KEY3 KEY2: JNB P1.1,K3;当为0时(P1.1未按下),则跳转K3,转判P1.2LD1: MOV R5,#7FHCD1: LCALL S1;调用 S1 JNB P1.1,CLEAR;

7、当P1.1未按下(运行过程中中断),则清零 DJNZ R5,CD1LD2: MOV R5,#44H;LD2-LD16均与LD1类似CD2: LCALL S2 JNB P1.1,CLEAR DJNZ R5,CD2LD3: MOV R5,#3FHCD3: LCALL S3 JNB P1.1,CLEAR DJNZ R5,CD3LD4: MOV R5,#34HCD4: LCALL S4 JNB P1.1,CLEAR DJNZ R5,CD4LD5: MOV R5,#2FHCD5: LCALL S5 JNB P1.1,CLEAR DJNZ R5,CD5 LD6: MOV R5,#24HCD6: LCALL

8、 S6 JNB P1.1,CLEAR DJNZ R5,CD6LD7: MOV R5,#1FHCD7: LCALL S7 JNB P1.1,CLEAR DJNZ R5,CD7LD8: MOV R5,#14HCD8: LCALL S8 DJNZ R5,CD8LD9: MOV R5,#7FHCD9: LCALL S16 JNB P1.1,CLEAR DJNZ R5,CD9LD10: MOV R5,#44HCD10: LCALL S15 JNB P1.1,CLEAR DJNZ R5,CD10LD11: MOV R5,#3FHCD11: LCALL S14 JNB P1.1,CLEAR DJNZ R5,

9、CD11LD12: MOV R5,#34HCD12: LCALL S13 JNB P1.1,C1 DJNZ R5,CD12LD13: MOV R5,#2FHCD13: LCALL S12 JNB P1.1,C2 DJNZ R5,CD13 LD14: MOV R5,#24HCD14: LCALL S11 JNB P1.1,C3 DJNZ R5,CD14LD15: MOV R5,#1FHCD15: LCALL S10 JNB P1.1,C4 DJNZ R5,CD15LD16: MOV R5,#14HCD16: LCALL S9 DJNZ R5,CD16 LJMP KEY2 RETC1:LCALL

10、CLEARC2:LCALL CLEARC3:LCALL CLEARC4:LCALL CLEARS1: MOV DPTR,#8002H;C口 MOV A,#07H;列号 MOVX DPTR,A MOV A,#00H;字型码 MOV DPTR,#8000H MOVX DPTR,A;字型码从A口输出 LCALL DELAY MOV DPTR,#8002H MOV A,#08H;列号 MOVX DPTR,A MOV A,#0d1H;字型码 MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY RET;SI功能为选通中间两列亮S2: LCALL S1 MOV DPTR,#800

11、2H MOV A,#06H MOVX DPTR,A MOV A,#22H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY MOV DPTR,#8002H MOV A,#09H MOVX DPTR,A MOV A,#6fH MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY RET;S2为让第6和9列亮,S3-S8以此类推S3: LCALL S2 MOV DPTR,#8002H MOV A,#05H MOVX DPTR,A MOV A,#24H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY MOV DP

12、TR,#8002H MOV A,#0AH MOVX DPTR,A MOV A,#55H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY RETS4: LCALL S3 MOV DPTR,#8002H MOV A,#04H MOVX DPTR,A MOV A,#28H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY MOV DPTR,#8002H MOV A,#0BH MOVX DPTR,A MOV A,#75H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY RETS5: LCALL S4 MOV

13、DPTR,#8002H MOV A,#03H MOVX DPTR,A MOV A,#0F0H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY MOV DPTR,#8002H MOV A,#0CH MOVX DPTR,A MOV A,#0d5H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY RETS6: LCALL S5 MOV DPTR,#8002H MOV A,#02H MOVX DPTR,A MOV A,#28H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY MOV DPTR,#8002H

14、MOV A,#0DH MOVX DPTR,A MOV A,#7fH MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY RETS7: LCALL S6 MOV DPTR,#8002H MOV A,#01H MOVX DPTR,A MOV A,#24H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY MOV DPTR,#8002H MOV A,#0EH MOVX DPTR,A MOV A,#55H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY RETS8: LCALL S7 MOV DPTR,#8002

15、H MOV A,#00H MOVX DPTR,A MOV A,#22H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY MOV DPTR,#8002H MOV A,#0FH MOVX DPTR,A MOV A,#55H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY RETS9: LCALL S10 MOV DPTR,#8002H MOV A,#07H MOVX DPTR,A MOV A,#00H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY MOV DPTR,#8002H MOV A,#08H

16、MOVX DPTR,A MOV A,#0d1H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY RET;中间两列亮S10: LCALL S11 MOV DPTR,#8002H MOV A,#06H MOVX DPTR,A MOV A,#22H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY MOV DPTR,#8002H MOV A,#09H MOVX DPTR,A MOV A,#6fH MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY RET;S10-S16以此类推S11: LCALL S12 MO

17、V DPTR,#8002H MOV A,#05H MOVX DPTR,A MOV A,#24H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY MOV DPTR,#8002H MOV A,#0AH MOVX DPTR,A MOV A,#55H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY RETS12: LCALL S13 MOV DPTR,#8002H MOV A,#04H MOVX DPTR,A MOV A,#28H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY MOV DPTR,#8002

18、H MOV A,#0BH MOVX DPTR,A MOV A,#75H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY RETS13: LCALL S14 MOV DPTR,#8002H MOV A,#03H MOVX DPTR,A MOV A,#0F0H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY MOV DPTR,#8002H MOV A,#0CH MOVX DPTR,A MOV A,#0d5H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY RETS14: LCALL S15 MOV DP

19、TR,#8002H MOV A,#02H MOVX DPTR,A MOV A,#28H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY MOV DPTR,#8002H MOV A,#0DH MOVX DPTR,A MOV A,#7fH MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY RETS15: LCALL S16 MOV DPTR,#8002H MOV A,#01H MOVX DPTR,A MOV A,#24H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY MOV DPTR,#8002H MO

20、V A,#0EH MOVX DPTR,A MOV A,#55H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY RETS16: MOV DPTR,#8002H MOV A,#00H MOVX DPTR,A MOV A,#22H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY MOV DPTR,#8002H MOV A,#0FH MOVX DPTR,A MOV A,#55H MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY RETK1:LCALL KEY1 KEY3: JNB P1.2,K1;当为0时(

21、P1.2未按下),则跳转K1,转判P1.0 MOV R0,#00H MOV R1,#00H MOV R3,#10H A3: MOV DPTR,#8002H MOV A,R0 MOVX DPTR,A INC R0 MOV DPTR,#TAB4;KEY3与KEY1类似,只是调用字型码4 CLR A ADD A,R1 MOVC A,A+DPTR INC R1 MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY DJNZ R3,A3 MOV DPTR,#8000H MOV A,#00H MOVX DPTR,A LJMP KEY3 RETDELAY: MOV R7,#0FH

22、D1: MOV R6,#0FHD2: DJNZ R6,D2 DJNZ R7,D1 RETDELAY1: MOV R7,#0FFHD3: MOV R6,#0FFHD4: DJNZ R6,D4 DJNZ R7,D3 RETTAB5: DB 22h,24h,28h,0f0h,28h,24h,22h,00h;大 DB 0d1h,6fh,55h,75h,0d5h,7fh,55h,55h;连TAB4: DB 00h,00h,00h,70h,88h,84h,42h,21h DB 21h,42h,84h,88h,70h,00h,00h,00h;“爱心形状”END(4).硬件调试:将万用表打到二极管端,用红表笔

23、接点阵的某个管脚,黑表笔接另一个管脚,若点亮,则选通。依次测出每个管脚所担任的行和列,其中,低电平选通列,高电平选通行。通过wave的软件将程序下载到实验箱中,初始为黑屏,因为没有按键被按下。之后通过按键进行控制,看显示是否正确,若点阵全都不亮,则首先要仔细检查程序,很可能是程序出了问题,因为之前已经对硬件进行测试了,若确定程序没有问题,则很可能是连线出现了断线,或者是连线连错了,点阵实验的线较多,所以需要在实验之前对每根线路进行检测,检测的方法是使用万用表检测是否出现短路现象。由于线较多,所以很容易接连错了,也有可能是前面对LED的能否正常工作没有测试到位导致部分电路问题被遗漏。若测试时就只

24、有几个点不亮,这时就能确定点阵极性及那些点是坏点。(5).调试中的问题记录:搭线的时候要细心,由于线较多,所以会插错管脚,或接触不良,注意不要带电操作,否则容易烧坏芯片。面包板与线的接触,要注意每根导线均导通,且与面包板接触良好。五发挥部分设计与调试:由于实验箱所能提供的驱动电流太低,所以程序下载后,可能导致LED亮度较暗,或者不亮。因此,我们加入一个74LS245芯片,该芯片是对列的驱动,8255的PA.0-PA.7用于将行扫描数据进行高速串-并转换,实验箱内部便可提供较大电流总够控制点阵的8行,这样,点阵的128个点中被选通的就亮。因此亮度提高。其余部分调试,与基本任务中的调试相同。六实验

25、数据记录与测试结果分析:静态显示“大连”: 静态显示“爱心”(图案): 由内向外显示“大连”: 由外向内显示“大连”: 当点阵的行接高电平,列为低电平时,同时选通,则在该点的LED点亮。通过程序传送,通过51单片机作为控制系统,由8255的A口为段数据口向两块点阵提供行数据,C口提供扫描列信息,通过74LS154译码后进行扫描。七实验总结: 1.实验过程中的问题与分析:(1)程序关键之处在于串口发送列数据的延时控制,否则很难观测到扫描图像。同时,行数据的延时控制也很重要,这决定整个画面是否闪烁。(2)要注意与面包板接触问题,导线与面包板接触良好。(3)为了是提高显示图形的亮度,加了一块74LS245对行进行驱动2收获与感想: 通过此次实验,我学到了许多实验上的知识,如利用单片机进行汉字点阵的扫描显示及控制的基本知识,使我对单片机有了更充分的认识;此外,又学会了部分芯片的使用,懂得了动态电子指示牌实现的原理,培养了兴趣,通过硬件的连接,让我在实验中提高了动手实践,硬件的多次连接让我提高了发现问题和处理问题的能力。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1