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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

51单片机点阵设计江海东.docx

1、51单片机点阵设计江海东 班级:电信3班姓名:江海东学号:2220083421一实验目的用TOP-23088DH-U 8x8LED点阵块设计制作一个816点阵汉字显示器,通过51单片机作为控制系统,由8255的A口为段数据口向两块点阵提供数据,B口提供扫描信息,通过74LS154译码后进行扫描。同时C口接3个开关,形成控制功能选择。二设计要求1、能显示168的汉字,显示“老师”,“大连”等。2、通过按键控制可以改变显示的汉字,图形和符号。3、通过按键控制可以实现汉字静态显示“老师”以及左移显示“大连”。4、可以实现简单的图形的从外向内周期显示以及从内向外周期显示。5、增加了驱动电路,提高了现实

2、亮度。6、增加了现实图形:点阵从内向外周期显示后又相反显示,显示正弦波形(左移),显示正弦波形(右移)。三实验元器件需要器件名称 数量 8051单片机(实验箱集成) 1 8255(实验箱集成) 1 TOP-23088DH-U 8x8LED 2 74LS154 1 74LS245 1面包板 3导线 若干开关(实验箱集成) 5四.原理分析(1)TOP-23088DH-U 8x8LED点阵电路原理图及其使用说明 有标记的一侧63121141524正面图,脚线分布 813115167109说明:TOP-23088DH-U 8x8LED点阵属于共阴极点阵其中 1至8控制行行为阳极低电平0有效9至16 控

3、制列列为阴极高电平1有效要点亮某盏小灯时,应先把小灯所位置的行置于低电平。然后控制列的高电平编程时按“高位往低位”的顺序编写代码如果,当你所选购的8x8LED点阵型号是别的型号,而你又没有得到相关电路图时,可以自己用数字万用表去检测。方法如下:1以有标记的那一端在上,建立坐标系。2将数字万用表调到测试二极管的那端,如后将红笔固定在某一引脚上,然后将黑笔分别与其他引脚相接。观察哪一行或者那一列的小灯是否被点亮,然后记下坐标。如果小灯没亮,则将黑笔与红笔换位,再重复测量。3然后重复上述步骤2。之后整理所得的数据,即可得到该8x8LED点阵的电路图了。点阵模块图如下: 如上图所示,本实验通过列扫描方

4、式,扫描同时给行线送显示数据。当扫描到某列,则该列选通,其他列截止,选通瞬间送显示数据,则所对应的二极管亮。显示的基本原理:点阵依靠循环点亮每一列(或行),快速循环形成一屏图像,而每一屏快速交替,可进一步形成动画的效果。 (2)同时,74LS245的管脚图如下图 (3) 74LS154管脚图如下图:五实验方案(1)方案论证控制模块整个系统由8051、74LS154,8255组成,其中,8051,8255,以及开关都集成在实验箱上。并且集成了时钟等必须器件。74LS154是4线转16线译码器,4线端接8255的PB.0-PB.3口接收列扫描信息,16线端低电平有效,控制点阵的16列74LS245

5、是对列的驱动,8255的PA.0-PA.7用于将行扫描数据进行高速串-并转换,实验箱内部便可提供较大电流总够控制点阵的8行,这样,点阵的128个点中被选通的就亮。显示模块由2块TOP-23088DH-U 8x8LED点阵组成(2)流程图Y NY NY NY NY N(3)硬件连接(4)软件部分编程思路为:先对相关变量进行初始化,循环扫描点亮16列LED,一帧图像扫描完毕后,列指针向右移动一位,再扫描下一帧图像。依此类推,列指针共向右移动16位,这样主观上就感觉向左滚动,移动一个汉字(列指针右移16位)后,字指针指向下一个汉字,这样就能在显示屏上看到汉字滚动。(5)实验程序ORG 0000HLJ

6、MP STARTORG 3000HSTART: MOV DPTR,#8003H MOV A,#81H MOVX DPTR,A MOV R6,#2 MOV R7,#10H MOV DPTR,#8002H MOVX A,DPTR JNB ACC.0,L1 JNB ACC.1,L2 JNB ACC.2,L3 JNB ACC.3,L41 JNB ACC.4,L51L41: LJMP L4L51: LJMP L5 SJMP STARTL1: MOV R0,#00H MOV R1,#00HLOOP1: MOV A,R1 MOV DPTR,#8001H MOVX DPTR,A MOV DPTR,#TAB1

7、MOV A,R0 MOVC A,A+DPTR MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY INC R0 INC R1 DJNZ R7,LOOP1 MOV R7,#10H LJMP STARTL2: MOV R4,#00H MOV A,R4 MOV R0,ALOOP2: MOV R1,#00HKK2: MOV A,R1 MOV DPTR,#8001H MOVX DPTR,A MOV DPTR,#TAB2 MOV A,R0 MOVC A,A+DPTR MOV DPTR,#8000H MOVX DPTR,A INC R0 INC R1 LCALL DELAY LC

8、ALL DELAY DJNZ R7,KK2 MOV A,R4 MOV R0,A MOV R7,#10H DJNZ R6,LOOP2 LCALL DELAY LCALL DELAY INC R4 MOV A,R4 MOV R0,A ; MOV R7,#10H MOV R6,#02H CJNE R4, #16,LOOP2 LJMP STARTL3: MOV R4,#00H MOV R5,#08H MOV A,R4 MOV R0,A MOV R1,#00HLOOP3: MOV A,R1 MOV DPTR,#8001H MOVX DPTR,A MOV DPTR,#TAB3 MOV A,R0 MOVC

9、A,A+DPTR MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY LCALL DELAY INC R0 INC R1 DJNZ R7,LOOP3 MOV R7,#10H MOV A,R4 MOV R0,A DJNZ R6,LOOP3 MOV R6,#2 MOV A,#16 ADD A,R4 MOV R4,A MOV R0,A DJNZ R5,LOOP3 LJMP STARTL4: MOV R4,#00H MOV R5,#08H MOV A,R4 MOV R0,A MOV R1,#00HLOOP4: MOV A,R1 MOV DPTR,#8001H MOVX DP

10、TR,A MOV DPTR,#TAB4 MOV A,R0 MOVC A,A+DPTR MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY LCALL DELAY INC R0 INC R1 DJNZ R7,LOOP4 MOV R7,#10H MOV A,R4 MOV R0,A DJNZ R6,LOOP4 MOV R6,#2 MOV A,#16 ADD A,R4 MOV R4,A MOV R0,A DJNZ R5,LOOP4L6: MOV R4,#00H MOV R5,#08H MOV A,R4 MOV R0,A MOV R1,#00HLOOP6: MOV A,R1

11、MOV DPTR,#8001H MOVX DPTR,A MOV DPTR,#TAB6 MOV A,R0 MOVC A,A+DPTR MOV DPTR,#8000H MOVX DPTR,A LCALL DELAY LCALL DELAY INC R0 INC R1 DJNZ R7,LOOP6 MOV R7,#10H MOV A,R4 MOV R0,A DJNZ R6,LOOP6 MOV R6,#2 MOV A,#16 ADD A,R4 MOV R4,A MOV R0,A DJNZ R5,LOOP6 LJMP STARTL5: MOV R4,#00H MOV A,R4 MOV R0,ALOOP5:

12、 MOV R1,#00HKK5: MOV A,R1 MOV DPTR,#8001H MOVX DPTR,A MOV DPTR,#TAB5 MOV A,R0 MOVC A,A+DPTR MOV DPTR,#8000H MOVX DPTR,A INC R0 INC R1 LCALL DELAY DJNZ R7,KK5 MOV A,R4 MOV R0,A MOV R7,#10H DJNZ R6,LOOP5 LCALL DELAY INC R4 MOV A,R4 MOV R0,A ; MOV R7,#10H MOV R6,#02H CJNE R4, #16,LOOP5 LJMP STARTDELAY:

13、 MOV R2,#0FHPP: MOV R3,#0FH DJNZ R3,$ DJNZ R2,PP RETTAB1:DB 88H,4AH,2AH,0FFH,0CAH,0AEH,88H,0C0H,18H,0FFH,00H,3CH,05H,0FFH,05H,3CHTAB2:DB 44H,24H,14H,0FH,14H,24H,44H,00H,8BH,0F6H,0AAH,0AEH,0ABH,0FEH,0AAH,0AAH DB 44H,24H,14H,0FH,14H,24H,44H,00H,8BH,0F6H,0AAH,0AEH,0ABH,0FEH,0AAH,0AAHTAB3: DB 0FFH,81H,8

14、1H,81H,81H,81H,81H,0FFH,00H,00H,00H,00H,00H,00H,00H,00H DB 00H,7EH,42H,42H,42H,42H,7EH,00H, 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,3CH,24H,24H,3CH,00H,00H, 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,18H,18H,00H,00H,00H, 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H, 00H,

15、00H,00H,18H,18H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H, 00H,00H,3CH,24H,24H,3CH,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H, 00H,7EH,42H,42H,42H,42H,7EH,00H DB 00H,00H,00H,00H,00H,00H,00H,00H, 0FFH,81H,81H,81H,81H,81H,81H,0FFHTAB4: DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00

16、H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H, 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H, 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H, 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,18H,18H,00H,00H,00H, 00H,00H,00H,18H,18H,00H,00H,00H DB 00H,00H,3CH,24H,24H

17、,3CH,00H,00H, 00H,00H,3CH,24H,24H,3CH,00H,00H DB 00H,7EH,42H,42H,42H,42H,7EH,00H, 00H,7EH,42H,42H,42H,42H,7EH,00H DB 0FFH,81H,81H,81H,81H,81H,81H,0FFH, 0FFH,81H,81H,81H,81H,81H,81H,0FFHTAB6: DB 0FFH,81H,81H,81H,81H,81H,81H,0FFH, 0FFH,81H,81H,81H,81H,81H,81H,0FFH DB 00H,7EH,42H,42H,42H,42H,7EH,00H, 0

18、0H,7EH,42H,42H,42H,42H,7EH,00H DB 00H,00H,3CH,24H,24H,3CH,00H,00H, 00H,00H,3CH,24H,24H,3CH,00H,00H DB 00H,00H,00H,18H,18H,00H,00H,00H, 00H,00H,00H,18H,18H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H, 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H, 00H,00H,00H,00H,00H,00H,00H,0

19、0H DB 00H,00H,00H,00H,00H,00H,00H,00H, 00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H, 00H,00H,00H,00H,00H,00H,00H,00HTAB5: DB 01H,02H,04H,08H,10H,20H,40H,80H,80H,40H,20H,10H,08H,04H,02H,01H DB 01H,02H,04H,08H,10H,20H,40H,80H,80H,40H,20H,10H,08H,04H,02H,01HEND六.实际制作与调试(1)实际制作使用ke

20、il先对软件程序进行编译测试并进行proteus仿真,调试成功后开始硬件部分。再编一段小程序用来测试硬件,发现LED有显示,即可向下进行,在这个环节上,所编程序应将字型表先全设为0FFH,因为只有让LED全点亮才能测试出所有线路,LED,8051和8255能否正常工作、点阵的极性及是否有坏点。在制作过程中,由于LED管脚并不是与每一行每一列一一对应的,所以上网站找到了关于该点阵的资料。之后在用仪器测试74LS154,74LS245是否正常,然后按照之前设计好的线路连接硬件线路,电路连接需要仔细。(2)调试过程先通过韦弗的软件将程序下载到实验箱中,初始为黑屏,因为没有按键被按下。之后通过按键进行

21、控制,看显示是否正确,若点阵全都不亮,则首先要仔细检查程序,很可能是程序出了问题,因为之前已经对硬件进行测试了,若确定程序没有问题,则很可能是连线出现了断线,或者是连线连错了,点阵实验的线较多,所以需要在实验之前对每根线路进行检测,检测的方法是使用万用表检测是否出现短路现象。由于线较多,所以很容易接连错了,也有可能是前面对LED的能否正常工作没有测试到位导致部分电路问题被遗漏。若测试时就只有几个点不亮,这时就能确定点阵极性及那些点是坏点。(3)实物图七实验总结 1.实验过程中的问题与分析:(1)这次实验管教连线比较多,而且比较密集,一定要细心。(2)点阵的每个管脚行与列要先通过测试后才能确定,

22、或者是在网上寻找资料确定管脚,由于管脚并不是按顺序的,所以不能随便连接(3)最好事先写一个测试程序,加一个延时判断一下。(4)程序关键之处在于串口发送列数据的延时控制,否则很难观测到扫描图像。同时,行数据的延时控制也很重要,这决定整个画面是否闪烁。(5)为了控制汉字滚动速度,有时需对一帧图像扫描数次后才将列指针移位。(6)为了是提高显示图形的亮度,加了一块74LS245芯片对行进行驱动。(7)连接好硬件后,通过对各元件的测试,加深了对实验原理以及各元件的工作原理的理解。(8)通过对实验程序的修改增加显示图形的变化,进一步加深了对试验程序的理解。2实验心得:通过本次单片机课设,更加加深了对单片机

23、硬件系统和8X8点阵、74LS245和74LS154等元件工作原理的理解;同时通过设计过程中的查询资料,初步掌握了keil uvision3和proteu以及8X8字模提取等软件的应用,进一步熟练掌握了伟福单片机仿真软件的应用;同时实际接触了各个功能芯片以及点阵实物,对各元器件有了比较形象的认识,了解了点阵的每个管脚的查询方法;同时学会了实现点阵静态显示、循环移动显示、周期显示以及各种变化图形的程序设计思路;此外,通过实验过程中出现的问题和解决问题的过程,提高了分析问题,了解问题本质,进而解决问题的能力。总而言之,通过本次单片机课设,收获很大。8参考资料1陈堂敏.刘焕平主编.单片机原理与应用.北京:北京理工大学出版社,2007.2沈美明.温动蝉编著.IBM-PC汇编语言程序设计.北京:清华大学出版社,1994.3张仰森等编.微型计算机常用软硬件技术速查手册.北京:北京希望电脑公司,1994.4江修汗等编.计算机控制原理与应用.西安:西安电子科技大学出版社,1999.

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

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