16x161.docx

上传人:b****8 文档编号:23912512 上传时间:2023-05-22 格式:DOCX 页数:14 大小:314.55KB
下载 相关 举报
16x161.docx_第1页
第1页 / 共14页
16x161.docx_第2页
第2页 / 共14页
16x161.docx_第3页
第3页 / 共14页
16x161.docx_第4页
第4页 / 共14页
16x161.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

16x161.docx

《16x161.docx》由会员分享,可在线阅读,更多相关《16x161.docx(14页珍藏版)》请在冰豆网上搜索。

16x161.docx

16x161

南京工程学院

 

课程设计任务书

  

  

 

 课程名称:

单片机原理及应用A

 院(系、部、中心):

自动化学院

 专业:

自动化(数控技术应用)

 班级:

数控061

 姓名:

丁嘉

 起止日期:

2008.12.17~2008.12.21

 指导教师:

孙来业

 

目录

一、设计任务(要求)

二、总体方案

三、原理框图

四、系统模块详细设计与调试

五、设计总结

六、参考文献

七、附件材料

一、设计任务

运用<<单片机原理及应用A>>课程等知识,根据题目要求进行软硬件系统的设计和调试,从而加深对本课程知识点的理解,使学生综合应用知识能力、设计能力、调试能力及报告撰写能力等显著提高。

了解16x16点阵电路的原理、掌握点阵显示器的控制方法。

利用实验仪上的16x16LED点阵显示器,编写显示英文、汉字字符程序。

例如:

显示英文“NJIT”和中文“南京工程学院”。

最好能移动显示。

 

二、总体方案

16x16点阵需要32个驱动,分别为16个列驱动及16个行驱动。

每个行与每个列可以选中一个发光管,共有256个发光管,采用动态驱动方式。

每次显示一行,10ms后再显示下一行。

点阵图案按如下格式排列:

 

 

对应的点阵表:

000H,000H,000H,024H,0FEH,02FH,001H,024H

092H,024H,090H,026H,090H,025H,090H,024H

0FEH,0FCH,090H,024H,090H,025H,090H,026H

090H,024H,000H,024H,0FFH,027H,000H,000H

在实验时可以使用查表的方法来显示汉字。

设片选信号16*16CS占用0B000H地址开始的地址段,则低行低八位地址RLCK=0B002H,行高八位地址RHCK=0B003H,列低八位地址CLCK=0B00H,列高八位地址CHCK=0B001H,在显示汉字的时候是逐行(列)进行循环扫描的,因此为了使汉字实现移动,在每次循环扫描时扫描到的代码进行增加,这样就可以实现汉字移动。

 

三、原理框图

 

四、系统模块详细设计与调试

程序主要分为几个部分分别是清屏段,然后显示段,最后实现汉字移动段以及用汉字代码做的表格。

其中重点设计的是显示段的程序,采用的方法是用列先扫描,然后行扫描来确定哪列的哪些点点亮。

而且列扫描也分为低八位和高八位两段。

根据设计的流程图和总体的设计方案,对于每段程序进行详细的设计。

清屏也可以看作是对于点阵内所有点进行初始化,防止出现乱码的现象。

主要依靠的程序有

MOVDPTR,#LIE1

MOVX@DPTR,A

MOVDPTR,#LIE2

MOVX@DPTR,A

MOVDPTR,#HANG1

MOVXDPTR,A

MOVDPTR,#HANG2

MOVX@DPTR,A

有了初始化程序以后就要设计重点的部分,也就是显示部分。

对此首先尝试了如何使一个点亮起来,由于16*16点阵是需要16个行驱动和16个列驱动,因此只有在行和列都有信号使点亮点才可以亮。

有了这一步后实现显示整个汉字的思路变可如下,首先可以给某一列附个值来确定开启哪一行,然后再确定这一行中开启哪几个点。

比如说要显示上面“南”字的最下面一行中的2点,可以用以下方法实现,首先给LCQ0一个值为0FEH,这样就开启了LRQ0这一行,然后再再这行中想办法让这一行中的那两个点亮就可以了。

当然在确定是哪列驱动的时候哈分列低八位和列高八位。

这样扫描完成之后便可以显示一个汉字了。

如果要显示几个汉字的话,只要将他们的代码都放在最后,然后逐个利用上面的方法扫描。

接下来要使汉字移动起来,使用的思路是在查表取代码的时候每次加2,这样可以得到也就是每次向右移动了一列,加如适当的延时就可以了,而且在6个汉字全部移动显示完之后可以循环显示。

最后这些思路都有了之后要画表格把6个汉字的代码写出来。

初步的把程序写出来之后要进行调试工作,这部分内容也是实验最关键的部分。

调试过程也分好几个部分。

首先根据设计好的程序,把程序输入到电脑中,保存好之后进行编译,根据提示的信息改正编译发生的错误,然后是硬件上的调试,接好线后全速执行,看能否得到最终的结果,若不能得到则要检查程序,可以利用单步执行,或者设置段点的方法一步步调试程序,得到最终结果。

以下是我在实验过程中调试程序的主要过程。

首先我选择了显示一个汉字的一段程序,因为这段程序对了实验就完成了一半,而且只用这段程序的话相对比较简单容易发现问题。

在编译的时候没发现什么大的问题,但是执行之后效果不行,虽然能大致分辨出什么字,但有些点不该亮的亮了,该亮的没亮。

首先想到的是代码写错了,经过检查确认代码没有错误。

然后想到了程序前面的清屏部分,但是经过思考这部分也是没问题,把问题锁定在显示这部分有问题,然后利用单部执行。

发现了错误的原因是由于在每列执行完之后,在进行下列的扫描时没清屏。

添加了一段清屏的内容之后单个字可以显示出来。

然后要显示多个字,首先想到的方法是把几段单个字的程序连起来,中间加入延时来实现,可是这样的话即使可行程序也会太长了,因此用了其他的方法。

就是执行完一个字的代码之后让执行下个字的代码。

这就是完整的程序了,把这些程序输入到电脑中,进行调试。

K1:

MOVDPTR,#LIE2

MOVA,R1

MOVX@DPTR,A

RLA

MOVR1,A

MOVDPTR,#LIE1

MOVA,#0FFH

MOVX@DPTR,A

MOVA,R0

MOVDPTR,#TAB

MOVCA,@A+DPTR

INCR0

MOVDPTR,#HANG2

MOVX@DPTR,A

CALLDELAY

MOVA,R0

MOVDPTR,#TAB

MOVCA,@A+DPTR

MOVDPTR,#HANG1

MOVX@DPTR,A

CALLDELAY

MOVDPTR,#HANG1

MOVA,#00H

MOVX@DPTR,A

MOVDPTR,#HANG2

MOVX@DPTR,A

INCR0

CJNER1,#0FEH,K1

MOVR1,#0FEH

以上程序是显示列低八位的程序。

CJNER1,#0FEH,K2

INCR4

CJNER4,#05H,K0

DECR4

INCR5

INCR5

CJNER5,#192,ZZ

SJMPNEXT

ZZ:

LJMPK

NEXT:

LJMPSTART

以上部分是实现汉字移动的部分

在调试中出现问题是在最后一个汉字显示完之后会有乱码,然后在到第一个汉字,根据分析产生的原因是在执行到最后一个汉字高八位的时候后面没有代码了。

解决的方法是多加一个第一个汉字的代码。

 

五、设计总结

课程设计是对于一门课程综合知识的运用过程,并且可以是理论联系实际,解决一些实际的问题。

在本课程的课程设计过程中,我获得了很多新的知识,并且对于许多知道的知识用来解决实际问题的能力也得到了提升。

了解最多的是关于16*16点阵电路的原理,并且知道了怎么来控制点阵显示器。

在实验过程中要学会请教别人,自己不懂或者是在某段程序上不如别人完美的地方要仔细研究。

每个人的思路都是不同的,各自有不同的优缺点,大家共同讨论才能共同进步。

当然许多问题自己能解决应当自己解决,课程设计过程中会遇到很多问题,解决这些问题同样是很大的收获。

自己解决问题也是一种能力的体现,学会自己查找资料,虽然可能比直接问其他同学要更多的时间,但是也会收获到更多的知识。

 

六、参考文献

《单片机原理及应用实验指导书》,屈波等编,2008年

《单片机原理及应用》,赵德安等编,机械工业出版社,2004

《单片机原理及应用》,雷晓平等编著,机械工业出版社,2007

 

七、附件材料

1程序硬件图

见下页

连线

连接孔1

连接孔2

1

16*16--CS

CS3

2实验设备

LAB6000微控制器实验系统

PC机一台

实验导线

3实物图片见下页

4程序清单

LIE1EQU0B001H

LIE2EQU0B000H

HANG1EQU0B003H

HANG2EQU0B002H

ORG0000H

AJMPSTART

DELAY:

MOVR7,#0

DELAY1:

DJNZR7,DELAY1

RET

START:

MOVR5,#00H

K:

MOVR6,#00H

MOVR4,#00H

MOVR3,#00H

MOVDPTR,#LIE1

MOVX@DPTR,A

MOVDPTR,#LIE2

MOVX@DPTR,A

MOVDPTR,#HANG1

MOVX@DPTR,A

MOVDPTR,#HANG2

MOVX@DPTR,A

K0:

MOVA,R5

MOVR0,A

MOVR1,#0FEH

K1:

MOVDPTR,#LIE2

MOVA,R1

MOVX@DPTR,A

RLA

MOVR1,A

MOVDPTR,#LIE1

MOVA,#0FFH

MOVX@DPTR,A

MOVA,R0

MOVDPTR,#TAB

MOVCA,@A+DPTR

INCR0

MOVDPTR,#HANG2

MOVX@DPTR,A

CALLDELAY

MOVA,R0

MOVDPTR,#TAB

MOVCA,@A+DPTR

MOVDPTR,#HANG1

MOVX@DPTR,A

CALLDELAY

MOVDPTR,#HANG1

MOVA,#00H

MOVX@DPTR,A

MOVDPTR,#HANG2

MOVX@DPTR,A

INCR0

CJNER1,#0FEH,K1

MOVR1,#0FEH

K2:

MOVDPTR,#LIE1

MOVA,R1

MOVX@DPTR,A

RLA

MOVR1,A

MOVDPTR,#LIE2

MOVA,#0FFH

MOVX@DPTR,A

MOVA,R0

MOVDPTR,#TAB

MOVCA,@A+DPTR

INCR0

MOVDPTR,#HANG2

MOVX@DPTR,A

CALLDELAY

MOVDPTR,#TAB

MOVA,R0

MOVCA,@A+DPTR

MOVDPTR,#HANG1

MOVX@DPTR,A

CALLDELAY

MOVDPTR,#HANG1

MOVA,#00H

MOVX@DPTR,A

MOVDPTR,#HANG2

MOVX@DPTR,A

INCR0

CJNER1,#0FEH,K2

INCR4

CJNER4,#05H,K0

DECR4

INCR5

INCR5

CJNER5,#192,ZZ

SJMPNEXT

ZZ:

LJMPK

NEXT:

LJMPSTART

TAB:

DB000H,000H,000H,024H,0FEH,02FH,001H,024H

DB092H,024H,090H,026H,090H,025H,090H,024H

DB0FEH,0FCH,090H,024H,090H,025H,090H,026H

DB090H,024H,000H,024H,0FFH,027H,000H,000H;南

DB000H,000H,008H,020H,010H,020H,020H,020H

DB060H02FH,000H,029H,000H,029H,0FEH,069H

DB001H,029H,002H,029H,000H,02FH,040H,020H

DB020H,020H,010H,020H,008H,020H,000H,000H;京

DB004H,000H,004H,000H,004H,010H,004H,010H

DB004H,010H,004H,010H,004H,010H,004H,010H

DB0FCH,01FH,004H,010H,004H,010H,004H,010H

DB004H,010H,004H,010H,004H,000H,004H,000H;工

DB000H,000H,002H,000H,022H,07DH,022H,045H

DB022H,045H,0FEH,045H,022H,045H,022H,045H

DB022H,07DH,002H,000H,080H,002H,000H,043H

DB0FEH,03FH,000H,013H,080H,00AH,000H,000H;程

DB000H,000H,000H,000H,040H,010H,040H,018H

DB040H,050H,040H,034H,040H,016H,040H,015H

DB0FEH,034H,041H,054H,042H,014H,040H,034H

DB040H,054H,040H,010H,040H,008H,000H,000H;学

DB006H,020H,002H,030H,002H,022H,006H,02AH

DB0f8H,02AH,000H,06BH,0F8H,02BH,006H,02AH

DB002H,02AH,002H,012H,006H,020H,000H,054H

DB000H,04BH,000H,041H,0FEH,07FH,000H,000H;院

DB000H,000H,000H,024H,0FEH,02FH,001H,024H

DB092H,024H,090H,026H,090H,025H,090H,024H

DB0FEH,0FCH,090H,024H,090H,025H,090H,026H

DB090H,024H,000H,024H,0FFH,027H,000H,000H;南

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

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

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