第七组 闪闪的红星 数字化测量课程设计报告终.docx

上传人:b****8 文档编号:30147319 上传时间:2023-08-05 格式:DOCX 页数:27 大小:302.24KB
下载 相关 举报
第七组 闪闪的红星 数字化测量课程设计报告终.docx_第1页
第1页 / 共27页
第七组 闪闪的红星 数字化测量课程设计报告终.docx_第2页
第2页 / 共27页
第七组 闪闪的红星 数字化测量课程设计报告终.docx_第3页
第3页 / 共27页
第七组 闪闪的红星 数字化测量课程设计报告终.docx_第4页
第4页 / 共27页
第七组 闪闪的红星 数字化测量课程设计报告终.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

第七组 闪闪的红星 数字化测量课程设计报告终.docx

《第七组 闪闪的红星 数字化测量课程设计报告终.docx》由会员分享,可在线阅读,更多相关《第七组 闪闪的红星 数字化测量课程设计报告终.docx(27页珍藏版)》请在冰豆网上搜索。

第七组 闪闪的红星 数字化测量课程设计报告终.docx

第七组闪闪的红星数字化测量课程设计报告终

 

河北科技大学

课程设计报告

课设题目:

第七组闪闪的红星

专业班级:

电子信息工程

学年学期:

2012—2013学年第一学期

指导教师:

于国庆睢丙东

2013年1月

小组分工简表

小组设计题目

闪闪的红星

学生姓名

学号

小组长/组员

成绩

小组分工

简明介绍

目录

一、设计题目及要求3

二、硬件电路设计4

1.主控制电路基本工作原理4

2.扫描板基本工作原理5

3.共享RAM电路的工作原理5

4.汉卡电路工作原理6

5.地址分配7

6.显示控制电路的工作原理8

7.键盘9

三、系统的熟悉9

1.BAS功能10

2.PRG功能14

3.屏幕与缓冲区地址对应关系15

四、小组分工16

1.小组成员:

16

2.小组分工:

16

五、程序设计与调试16

1.必做部分代码:

16

2.发挥部分代码:

22

六、心得体会23

 

一、设计题目及要求

在掌握LED智能显示系统工作原理的基础上,能根据小组必做题目和自选题目,熟练的编写并调试各种程序,完成课题设计任务,提高学生的独立设计水平和实际动手能力,培养学生的创新精神。

(一)全班必做题目

1.熟悉系统,输入:

“KD2000型LED智能显示系统”并存储显示。

2.汇编、输入、运行示例程序,了解系统硬件电路及软件编程特点。

(二)小组必做题目

第七组:

闪闪的红星(能旋转360度),要求做到边旋转,变闪烁。

二、硬件电路设计

KD-2000型LED智能显示屏的设计原理:

系统框图如图1所示。

主要包括四部分:

主控制电路(主CPU、汉卡等),显示控制电路(辅CPU等),列驱动显示电路,开关电源。

1.主控制电路基本工作原理

主控制电路首先从遥控器或键盘接收数据和指令,然后根据显示内容和显示指令的要求在软件控制下完成下述工作:

如果要显示汉字,就从扩展卡27020中提取汉字点阵信息,然后存放在共享RAM6264中。

如果要显示的是8×8点阵的ASCII码或数字,以及16×8点阵的控制字符,就从程序存储器27256的高端提取有关的点阵信息,然后存放于共享RAM中。

最后,主CPU通过地址切换电路①与②及时序控制电路,与辅CPU以应答方式进行联络,对共享RAM进行分时操作,完成显示。

图1系统框图

由专用的日历时钟芯片MC146818,可产生年、月、日、时、分、秒、星期共7个时标信号。

我们可通过软件来获得和修改这些时标,并使之在屏幕上显示出来。

2.扫描板基本工作原理

首先由辅CPU将欲显示的数据由串行口送出,然后经并行/串行转换芯片CD4094转换成并行数据,输出的数据经过MC1413驱动产生列信号;由P1口输出的行数据经CD4515译码生成行信号,再经达林顿管BD682产生行驱动信号。

最后输出行、列选通信号,点亮某一行。

如此循环往复,完成扫描过程。

3.共享RAM电路的工作原理

为了大大减轻主CPU的负担,合理地分配资源,以及便于实现显示电路的高速扫描,该系统设计成双CPU结构,共享一片RAM。

电路如图2所示。

共享RAM电路主要是通过六片74LS245来完成的,74LS245是三态八总线双向收发器。

其中

是控制端,低电平时有效,允许传输;高电平时禁止。

DIR是方向控制端,为低电平时数据由B传到A,呈高电平时,数据由A传到B。

由原理图可以看到:

IC1~IC3的

端不仅接主CPU的T0端,还接74LS74的Q端。

IC4~IC6的

端不仅接显示CPU的INT0端,还接74LS74的

端;这样当主CPU控制公共RAM时,Q端为低,IC1~IC3开启,IC4~IC6关闭。

主CPU对RAM可进行读写操作,而辅CPU则不能。

当主CPU放弃对共享RAM的操作时,通过GAL对74LS74置位,因而

变低,Q变高。

封锁IC1~IC3,从而辅CPU取得控制权,对共享RAM进行操作;当辅CPU放弃对共享RAM的操作时,通过74LS00发出清零信号,使得74LS74的Q端输出低电平,当主CPU检测到T0为低时,可恢复对共享RAM的控制权。

这样就通过数据、地址切换的反复动作,完成了对共享RAM的分时操作。

图2共享RAM电路

4.汉卡电路工作原理

汉卡电路工作原理图见图3。

在扩展电路中,用了373、374、27020和6264各一片。

373和374的区别是:

373为八D锁存器,当控制端G为低电平时锁存;374则是八D触发器,在系统时钟下降沿时可以对数据锁存。

本系统所用的字库芯片是27020,它是256Kbit的CMOS超大规模集成电路只读存储器,共有18根地址线,而8031只有16根地址线。

为读取27020内的数据,使用一片374,利用其下降沿锁存的特点来对27020进行分页处理,因为374的时钟端接片选信号CS1,而CS1平时为高电平,有效时为低电平,所以其有效的过程对374来说相当于是一个下降沿,当向4000H单元送数(即片选信号CS1有效)时,由GAL地址分配所决定的写入4000H单元中的数据的高5位,同时被锁入374中,形成27020的页面地址。

因而从27020中读数时只需加片选信号CS2即可。

需要指出,6264和27020的

端选通信号不同,前者接PSEN信号,后者接读信号。

因此把27020作为一个数据存储器,而把6264当作一个程序存储器,充当本系统的仿真RAM。

这样可避免27020和6264的地址发生冲突。

5.地址分配

地址分配实际上是由GAL来完成的。

它是一种电擦写、可反复编程、随时修改并且能加密的可编程逻辑器件(PLD)。

它既不同于PAL,也不同于EPROM。

目前常用的有GAL16V8和GAL20V8。

它们具有以下特点:

(1)由于GAL采用的是一种高速的电可擦写(E2CMOS)工艺制造,因而比TTL构造的PAL功耗低,速度快;

(2)GAL有8个逻辑宏单元(OLMC),使输出任意变化,又很强的带负载能力,驱动电流可达24mA;(3)采用高速编程算法,按行进行编程,整个芯片的写入可在1秒钟内完成。

此外,还采取了加密措施。

图3汉卡电路

各芯片的地址分配详见附表。

附表

名称

IC型号

片选信号

地址

备注

程序存储器

27256

=A15=0

0000H-7FFFH

数据存储器

62256

=0

8000H-FFFFH

共享RAM

6264

=A15+A14+A13=0

0000H-1FFFH

主CPU读RAM

+PSEN

8000H-9FFFH

辅CPU读RAM

辅CPU

2764

=A15=0

0000H-1FFFH

数据存储器

6264

A15=1,A14=0

8000H-9FFFH

汉卡ROM

27020

CS2=A15+A14+

+RD

2000H-3FFFH

仿真RAM

6264

+A14+A13+PSEN

8000H-9FFFH

读操作

+A14+

+WR

2000H-3FFFH

写操作

对于主CPU,其程序存储器27256的片选信号为

=A15,仅当A15=0时选通,其地址分配为0000H~7FFFH。

数据存储器62256采用A15做片选信号,

,仅当A15=1时选通,其地址分配为8000H~FFFFH。

对于公共RAM6264而言,当CPU取得控制权时用A15+A14+A13做片选信号,其地址分配为0000H~1FFFH。

对于辅CPU,其程序存储器2764的片选信号为

=A15,仅当A15=0时选通,其地址分配为0000H~1FFFH,数据存储器6264采用A15和A14做片选信号,仅当A15=1且A14=0时选通,其地址分配为8000H~9FFFH。

对于共享RAM的选通比较复杂,它取决于数据传输转换器IC9的允许端

,而

=(

)=PSEN+

所以仅当辅CPU的PSEN为低,且A15为高时,选通共享RAM,这表明共享RAM对辅CPU而言,相当于是一个程序存储器,其地址分配为8000H~9FFFH。

汉卡上的27020先由CS1选通页面地址,再由片选信号CS2决定页内地址。

而CS2=A15+A14+

+RD,因而其地址分配为2000H到3FFFH。

6264在读、写操作时,地址分配是不同的。

当进行读操作时,用CS2做片选信号,而CS2=

+A14+A13+PSEN,因而地址分配为8000H~9FFFH。

进行写操作时,CS2=A15+A14+

+WR,因而地址分配为2000H~3FFFH。

6.显示控制电路的工作原理

电路如图4所示。

显示控制电路主要完成扫描显示功能。

它采用逐行扫描、列驱动方式。

其主控制器为CPU2,简称辅CPU。

当主CPU接收到从遥控器或者从键盘传来的数据和指令后,就将显示内容从汉卡的汉字库中取出并转化成点阵信息,存放在共享RAM中。

主CPU根据显示指令,对共享RAM中的数据进行操作。

操作完毕后,即向辅CPU发出应答信号。

辅CPU接到应答信号后,就从共享RAM中取出显示数据,从串行口输出的数据经级联的八位串入/并出移位寄存器CD4094,转换成并行数据,再经过七达林顿驱动器MC1413获得列驱动信号。

行码则由P1口输出,经4线/16线译码器CD4515译码后,产生16路行输出信号。

通过达林顿功率管BD682,获得列驱动信号。

行信号送至显示行驱动端,经显示后消隐,然后输出下一行数据并显示下一行内容。

7.键盘

键盘布置如图5所示,共有30个键。

其中,9个双功能键被定义为:

在BAS状态下为上挡键,在PRG状态下为下挡键。

数字键(0~F)。

0区表示前128个ASCII码;1区表示后128个ASCII码。

HOM/连续:

光标移到文件头/连续执行程序。

END/单步:

光标移到文件尾/单步执行程序。

ASC/调出:

当前输入状态切换为ASCII码输入/将程序从备份RAM调到仿真 RAM中。

汉字/存入:

将当前输入状态切换为汉字输入/将程序从仿真 RAM中存储到备份RAM。

PUP/XRA:

向上翻页/检查或修改外部数据存储器。

PDN/MEM:

向下翻页/检查或修改程序存储器内容。

DEL/REG:

删除/检查或修改寄存器的内容。

HLP/SCR:

提示帮助信息/用户屏幕。

ESC:

退出。

INS/回车:

输入状态(插入和替换)的切换/回车。

↑:

向上移动光标。

↓:

向下移动光标。

图5键盘布置图

三、系统的熟悉

程序流程图如图6所示。

上电后,屏上出现主菜单光标在B上闪烁,按↑、↓键移动光标,可选择不同的菜单项。

图6程序流程图

BASPRG

SETOTH

例如:

当光标在S上闪烁时,按回车键便会进入系统设置(SET)菜单项。

1.BAS功能

进入BAS功能后,屏上出现BAS菜单:

RUNNEW

EDIESC

光标在R上闪动,用↑、↓键移动光标,按回车键进入该菜单功能。

此部分包括四个功能:

运行BAS文件(RUN)、清除BAS文件(NEW)、编辑BAS文件(EDI)和退出BAS功能(ESC)。

在内存可存储16个BAS文件,文件号分别为0~F,BAS文件就是将要显示的文件,并以一定的格式存储起来。

在文件中,除了包含要显示的字符和汉字,还有一些控制信息(包括控制码和控制参数),它们动态的存储在内存中的A000H~CFFFH共12K的空间内。

当系统掉电后,改由备用电源供电,所以存储在内存中的文件不会丢失。

(1)清除(新建)BAS文件(NEW)

当光标在NEW上闪烁时,按回车键进入该功能,屏幕上提示:

文件号×。

该功能用来清除在内存中已有的文件。

假如内存中已有16个文件,如果要建立第17个文件,则需将原来文件中的某一个覆盖。

键入文件号,或键入回车使用缺省文件号。

屏上提示:

文件的所有数据要丢失!

屏上提示:

确信?

按回车键确认,按其他键退出。

另外,0号文件保留给系统使用,不能清除。

如清除0号文件,屏上会

提示:

0号文件为系统使用,不能清除。

(2)编辑BAS文件(EDI)

该功能用来编辑BAS文件。

当光标在EDI上闪烁时,键入回车键进入该功能。

屏上提示:

文件号×

键入文件号或回车使用缺省文件号。

此时分两种情况:

屏上提示:

空间××××

然后进入编辑屏幕,此文件中的第一字显示在屏上。

0001I

如:

热0440H

其中(如右图)12345678

161514131211109

1、2、3、4区为当前编辑汉字位置,它表明将来显示此汉字时所在的位置,亦即光标。

5区为插入开关状态I—插入开,否则覆盖

6区表示当前的ASCII码区0-0区1-1区

7、8、9、10区用来显示调出的汉字或字符。

11区表示输入状态:

C控制码H汉字A字符

12区未用。

13、14、15、16区表示输入代码区。

即可进入编辑。

在编辑时各键的功能如下:

0~F键:

数字键,用来输入数据。

在输入汉字是用来输入汉字的区位码(如4040代表第40区、第40位的汉字,即“热”字)。

在输入字符时,用来输入十六进制的ASCII码,(如ASCII码值为41H的字符“A”)

↑、↓键:

用来寻找前一个或后一个汉字

HELP键:

按此键,在屏幕上出现有关编辑时的一些帮助信息。

DEL键:

如果已经开始输入,此键用来删除错误的数字,否则删除当前的汉字或字符。

ESC键:

用来退出编辑。

按此键后

屏上提示:

确信:

回车确认。

如果修改文件,就在

屏上提示:

存储吗?

回车确认。

然后

屏上提示:

正在存储

存储完毕后退回BAS菜单。

INS:

是INS和回车键的组合,此键用来进行插入开、关的转换(INS)。

或进行确认(回车)

0区、1区:

用来进行0区、1区的转换。

为0区时输入前128个(第1页)ASCII码字符;1区时输入后128个(第2页)ASCII码字符。

PUP、PDN:

PUP向上翻页。

PDN向下翻页。

ASC/汉字:

用来改变输入状态:

按下ASC键,屏幕上出现“A”,接收十六进制ASCII码;

按下汉字键,屏幕上出现“H”,接收汉字区位码。

HOM、END:

HOM键到文件头,END键到文件尾。

BAS文件使用仿WPS式文件格式。

可以在字符或汉字前边加上控制字符和参数,以达到预期效果,系统给出了以下几个控制字符以及它们所需带的参数(有待扩充):

控制码所需参数功能举例

①②③

80H移动光标把光标移动到参数要8002代表光标到

求处第二个汉字

81H显示时间在当前光标处固定显示8102固定显示汉字2秒

82H出屏方式显示时间清屏方式以参数要求的出屏方82000103以

式,显示时间及清屏方式正常方式出屏显示

固定显示1秒,然后,逐行清屏

83H出屏方式移动速度清屏方式以参数要求的出屏方83020104以

式,移动速度及清屏跳字方式出屏每次移

方式移动显示动一点后,逐列清屏

出屏方式清屏方式

参数方式参数方式

00正常出屏00正常清屏

01逐字出屏01从左向右逐字清屏

02跳字出屏02从右向左逐字清屏

03逐行出屏03逐行清屏

04逐列出屏04逐列清屏

05旋转出屏……

06外扩出屏……

…………

…………

2.PRG功能

在系统中有8K的仿真RAM,同学们可在RAM中运行自己的程序。

此功能主要是帮助同学们输入程序、运行程序和调试程序。

进入PRG功能后,系统进入仿真调试状态,此时它的作用就相当于功能齐全的51单片机开发系统。

屏上提示:

P.

此时数字键的功能不变,其他键的第二功能起作用,分别为:

↑:

上一单元

↓:

下一单元

USE:

用户屏幕,按此键可观察输出

REG:

用直接寻址方式,检查内部RAM的和寄存器的内容。

例如键入E0后,按REG即可查看、修改累加器A的内容。

回车:

返回监控,即P.状态

BRK:

设置断点,用断点运行方式执行程序。

EXE:

全速执行程序

XRA:

外部数据存储器检查修改处理

MEM:

程序存储器检查、修改键

STP:

单步执行程序

SAV:

将程序存入具有掉电保护功能的RAM中

LOD:

从掉电保护RAM中读出程序。

要注意:

仿真RAM的地址为8000H~9FFFH。

其他单元只能读出,不能修改。

即同学们自编的程序首地址都应在8000H~9FFFH之间。

例如:

在8000H开始的程序单元中存入10H,20H操作如下

P.

键入80008000

键入MEM800000

键入10800010

按键↓800100

键入20800120

键入回车P.

因此,此功能可以象开发系统一样,输入汇编目标程序及一些数据。

用ESC退出EDI功能返回PRG菜单。

例如在仿真RAM中有了51程序,便可运行它。

按EXE键

进入RUN后

屏上提示:

首地址

键入首地址,程序控制由系统内部转移到仿真RAM中,从首地址开始执行用户程序。

用户的程序一定要正确,而且要求在程序的最后加一条LJMPRETURN指令,以便于让控制转回到系统内部。

3.屏幕与缓冲区地址对应关系

由硬件部分可知,本系统采用双CPU工作,主CPU负责处理通信,人机对话及实时显示等任务。

辅CPU则专门负责扫描显示。

主、辅CPU共享一片作为显示缓冲区的6264(RAM)。

在主CPU处理好共享RAM的数据后,便将RAM出让给辅CPU,辅CPU将共享RAM的内容原封不动地映像到显示屏,内存单元与显示屏点阵对应关系如下(对主CPU而言)

内00000001000200030004000500060007

存01000101010201030104010501060107

单……………………

元……………………

地08000801080208030804080508060807

址……………………

(H)……………………

0F000F010F020F030F040F050F060F07

第一个汉字第二个汉字第三个汉字第四个汉字

四、小组分工

1.小组成员:

周士超、赵炎、范雅茹、王亚丽、渠响、赵明来

2.小组分工:

姓名

任务

赵炎、赵明来

LED点阵设计闪闪的红星图案及相应的机器码编译

周士超、范雅茹、王亚丽、渠响

主程序架构及扩展程序编写

五、程序设计与调试

1.必做部分代码:

(1)NEW1号文件输入如下代码:

【83030104】【4B4432303030】【4845】【4C4544】【543936604751423147214159】

【】用于将ASCII、控制码和区位码分开,代码中不不输入,保存后,运行结果如下:

移动显示:

KD2000型LED智能显示系统,完成要求。

(2)小组必做程序代码如下:

主程序

ORG8000H

909000XIANSHI1:

MOVDPTR,#9000H;将点阵表首地址送DPTR

128100LCALLXIANSHI

909100XIANSHI2:

MOVDPTR,#9100H

128100LCALLXIANSHI

909200XIANSHI3:

MOVDPTR,#9200H

128100LCALLXIANSHI

909300XIANSHI4:

MOVDPTR,#9300H

128100LCALLXIANSHI

028000LJMPXIANSHI

显示子程序

ORG8100H

XIANSHI:

81007900MOVR1,#0;存储相对于表首的偏量

81027800MOVR0,#0;做间址寄存器,由P2,R显缓区

81047C00MOVR4,#0;映像P2

81067D10MOVR5,#16;计数器

81088CA0MOVP2,R4

810AE9LOOP1:

MOVA,R1

810B93MOVCA,@A+DPTR

810CF2MOVX@R0,A;取出点阵

810D08INCR0

810E09INCR1

810FE8MOVA,R0

8110B408F7CJNEA,#8,LOOP1

81137800MOVR0,#0

81150CINCR4

81168CA0MOVP2,R4

8118DDF0DJNZR5,LOOP1

811A129F42LCALLCOUMUN

811D128200LCALLdelay1s

812022RET

延时100ms子程序

ORG8160H

7864DELAY100MS:

MOVRO,#100

79FAMOVR1,#250

DBFEDJNZR3,$

DCFADJNZR4,#FAH

22RET

延时1s子程序

ORG8200H

7D0ADELAY1S:

MOVR5,#10

128160LCALLDELAY100MS

DDFBDJNZR5,#FBH

22RET

第一幅图代码

ORG9000H

01

00H,00H,00H,00H,00H,00H,00H,00H

;02:

DB00H,00H,00H,00H,00H,00H,00H,00H

;03:

DB00H,00H,00H,00H,00H,00H,00H,03H

;043:

DB00H,00H,01H,81H,43H,03H,3FH,9FH

;05:

DB00H,00H,00H,02H,84H,80H,0F8H,0F3H

;06:

DB00H,00H,00H,00H,00H,00H,00H,80H

;07

DB00H,00H,00H,00H,00H,00H,00H,00H

08

DB00H,00H,00H,00H,00H,00H,00H,00H

09

DB00H,00H,00H,00H,00H,00H,00H,00H;

10

DB00H,00H,00H,00H,00H,00H,00H,00H

11:

DB00H,00H,00H,00H,00H,00H,00H,00H

12:

DB0FH,07H,47H,8FH,0CH,10H,00H,00H

13:

DBE0H,C0H,C4H,E2H,60H,10H,00H,00H

14:

DB00H,00H,00H,00H,00H,00H,00H,00H

15:

DB00H,00H,00H,00H,00H,00H,00H,00H

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

当前位置:首页 > 考试认证 > 从业资格考试

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

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