1、数字化测量课程设计报告 第五组河北科技大学河北科技大学课程设计报告 学生姓名:刘跃华(18) 刘青(19) 张连甲(31) 张朋永(33) 张瑞芳(34) 赵久强(36) 专业班级: 电子信息工程 学年学期: 2014 -2015学年第一学期 指导教师: 于国庆 2014 年 12月 课程设计成绩评定表学生姓名刘跃华学号110701118成绩学生姓名刘青学 号110701119成绩学生姓名张连甲学 号110701131成绩学生姓名张朋永学 号110701133成绩学生姓名张瑞芳学 号110701134成绩学生姓名赵久强学 号110701136成绩专业班级电信111班起止时间2014/12/01
2、2014/12/05设计题目1熟悉系统,输入:“KD2000型LED智能显示系统”并存储显示。2汇编、输入、运行示例程序,了解系统硬件电路及软件编程特点。汉字的旋转与扩缩1在屏上显示2个汉字,然后每个字左旋90度显示3秒,然后右旋90度显示3秒,然后倒置3秒,最后恢复正常。2逐行显示2个汉字,2秒后横向放大两倍,3秒后恢复正常。3显示“回”字并放大缩小5次,恢复正常。指导教师评语 指导教师: 年 月 日目录一、设计题目及要求 4二、硬件电路设计 41.主控制电路基本工作原理 42.扫描板基本工作原理 53.共享RAM电路的工作原理 54.汉卡电路工作原理 55.地址分配 66.键盘 7三、系统
3、的熟悉使用 81BAS功能 82PRG功能 113.屏幕与缓冲区地址对应关系 12四、程序设计与调试 12五、程序分工 15六、心得体会 17一、设计题目及要求在掌握LED智能显示系统工作原理的基础上,能根据小组必做题目和自选题目,熟练的编写并调试各种程序,完成课题设计任务,提高学生的独立设计水平和实际动手能力,培养学生的创新精神。(一)全班必做题目1. 熟悉系统,输入:“KD2000型LED智能显示系统”并存储显示。2. 汇编、输入、运行示例程序,了解系统硬件电路及软件编程特点。(二)小组必做题目第五组:汉字的旋转与扩缩1、在屏上显示2个汉字,然后每个字左旋90度显示3秒,然后右旋90度显示
4、3秒,然后倒置3秒,最后恢复正常。2、逐行显示2个汉字,2秒后横向放大两倍,3秒后恢复正常。3、显示“回”字并放大缩小5次,恢复正常。二、硬件电路设计KD-2000型LED智能显示屏的设计原理:系统框图如图1所示。主要包括四部分:主控制电路(主CPU、汉卡等),显示控制电路(辅CPU等),列驱动显示电路,开关电源。1. 主控制电路基本工作原理主控制电路首先从遥控器或键盘接收数据和指令,然后根据显示内容和显示指令的要求在软件控制下完成下述工作:如果要显示汉字,就从扩展卡27020中提取汉字点阵信息,然后存放在共享RAM 6264中。如果要显示的是88点阵的ASCII码或数字,以及168点阵的控制
5、字符,就从程序存储器27256的高端提取有关的点阵信息,然后存放于共享RAM中。最后,主CPU通过地址切换电路与及时序控制电路,与辅CPU以应答方式进行联络,对共享RAM进行分时操作,完成显示。图1 系统框图由专用的日历时钟芯片MC146818,可产生年、月、日、时、分、秒、星期共7个时标信号。我们可通过软件来获得和修改这些时标,并使之在屏幕上显示出来。2. 扫描板基本工作原理首先由辅CPU将欲显示的数据由串行口送出,然后经并行串行转换芯片CD4094转换成并行数据,输出的数据经过MC1413驱动产生列信号;由P1口输出的行数据经CD4515译码生成行信号,再经达林顿管BD682产生行驱动信号
6、。最后输出行、列选通信号,点亮某一行。如此循环往复,完成扫描过程。3.共享RAM电路的工作原理为了大大减轻主CPU的负担,合理地分配资源,以及便于实现显示电路的高速扫描,该系统设计成双CPU结构,共享一片RAM。电路如图2所示。共享RAM电路主要是通过六片74LS245来完成的,74LS245是三态八总线双向收发器。其中是控制端,低电平时有效,允许传输;高电平时禁止。DIR是方向控制端,为低电平时数据由B传到A,呈高电平时,数据由A传到B。由原理图可以看到:IC1IC3的端不仅接主CPU的T0端,还接74LS74的Q端。IC4IC6的端不仅接显示CPU的INT0端,还接74LS74的端;这样当
7、主CPU控制公共RAM时,Q端为低,IC1IC3开启,IC4IC6关闭。主CPU对RAM可进行读写操作,而辅CPU则不能。当主CPU放弃对共享RAM的操作时,通过GAL对74LS74置位,因而变低,Q变高。封锁IC1IC3,从而辅CPU取得控制权,对共享RAM进行操作;当辅CPU放弃对共享RAM的操作时,通过74LS00发出清零信号,使得74LS74的Q端输出低电平,当主CPU检测到T0为低时,可恢复对共享RAM的控制权。这样就通过数据、地址切换的反复动作,完成了对共享RAM的分时操作。图2 共享RAM电路4.汉卡电路工作原理汉卡电路工作原理图见图3。在扩展电路中,用了373、374、2702
8、0和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单元中的数据的高
9、5位,同时被锁入374中,形成27020的页面地址。因而从27020中读数时只需加片选信号CS2即可。需要指出,6264和27020的端选通信号不同,前者接PSEN信号,后者接读信号。因此把27020作为一个数据存储器,而把6264当作一个程序存储器,充当本系统的仿真RAM。这样可避免27020和6264的地址发生冲突。5.地址分配地址分配实际上是由GAL来完成的。它是一种电擦写、可反复编程、随时修改并且能加密的可编程逻辑器件(PLD)。它既不同于PAL,也不同于EPROM。目前常用的有GAL16V8和GAL20V8。它们具有以下特点:(1)由于GAL采用的是一种高速的电可擦写(E2CMOS)
10、工艺制造,因而比TTL构造的PAL功耗低,速度快;(2)GAL有8个逻辑宏单元(OLMC),使输出任意变化,又很强的带负载能力,驱动电流可达24mA;(3)采用高速编程算法,按行进行编程,整个芯片的写入可在1秒钟内完成。此外,还采取了加密措施。图3 汉卡电路各芯片的地址分配详见附表。附 表名 称IC型号片 选 信 号地 址备 注程序存储器27256A1500000H7FFFH数据存储器6225608000HFFFFH共享RAM6264A15+A14+A1300000H1FFFH主CPU读RAM+PSEN8000H9FFFH辅CPU读RAM辅CPU2764A1500000H1FFFH数据存储器6
11、264A151,A1408000H9FFFH汉卡ROM27020CS2A15+A14+RD2000H3FFFH仿真RAM6264+A14+A13+PSEN8000H9FFFH读操作+A14+WR2000H3FFFH写操作对于主CPU,其程序存储器27256的片选信号为A15,仅当A150时选通,其地址分配为0000H7FFFH。数据存储器62256采用A15做片选信号,仅当A151时选通,其地址分配为8000HFFFFH。对于公共RAM 6264而言,当CPU取得控制权时用A15A14A13做片选信号,其地址分配为0000H1FFFH。对于辅CPU,其程序存储器2764的片选信号为A15,仅当
12、A150时选通,其地址分配为0000H1FFFH,数据存储器6264采用A15和A14做片选信号,仅当A151且A140时选通,其地址分配为8000H9FFFH。对于共享RAM的选通比较复杂,它取决于数据传输转换器IC9的允许端,而()PSEN所以仅当辅CPU的PSEN为低,且A15为高时,选通共享RAM,这表明共享RAM对辅CPU而言,相当于是一个程序存储器,其地址分配为8000H9FFFH。汉卡上的27020先由CS1选通页面地址,再由片选信号CS2决定页内地址。而CS2A15A14RD,因而其地址分配为2000H到3FFFH。6264在读、写操作时,地址分配是不同的。当进行读操作时,用C
13、S2做片选信号,而CS2A14A13PSEN,因而地址分配为8000H9FFFH。进行写操作时,CS2A15A14WR,因而地址分配为2000H3FFFH。6.键盘键盘布置如图4所示,共有30个键。其中,9个双功能键被定义为:在BAS状态下为上挡键,在PRG状态下为下挡键。数字键(0F)。0区表示前128个ASCII码;1区表示后128个ASCII码。 HOM连续:光标移到文件头连续执行程序。END单步:光标移图4 键盘布置图到文件尾单步执行程序。ASC调出:当前输入状态切换为ASCII码输入将程序从备份RAM调到仿真RAM中。汉字存入: 将当前输入状态切换为汉字输入将程序从仿真RAM中存储到
14、备份RAM。PUPXRA:向上翻页检查或修改外部数据存储器。PDNMEM:向下翻页检查或修改程序存储器内容。DELREG:删除检查或修改寄存器的内容。HLPSCR:提示帮助信息用户屏幕。ESC:退出。INS回车:输入状态(插入和替换)的切换回车。:向上移动光标。:向下移动光标。三、 系统的熟悉使用程序流程图如图5所示。上电后,屏上出现主菜单光标在B上闪烁,按、键移动光标,可选择不同的菜单项。图5 程序流程图BAS PRGSET OTH例如:当光标在S上闪烁时,按回车键便会进入系统设置(SET)菜单项。1BAS功能进入BAS功能后,屏上出现BAS菜单:RUN NEWEDI ESC光标在R上闪动,
15、用、键移动光标,按回车键进入该菜单功能。此部分包括四个功能:运行BAS文件(RUN)、清除BAS文件(NEW)、编辑BAS文件(EDI)和退出BAS功能(ESC)。在内存可存储16个BAS文件,文件号分别为0F,BAS文件就是将要显示的文件,并以一定的格式存储起来。在文件中,除了包含要显示的字符和汉字,还有一些控制信息(包括控制码和控制参数),它们动态的存储在内存中的A000HCFFFH共12K的空间内。当系统掉电后,改由备用电源供电,所以存储在内存中的文件不会丢失。(1)清除(新建)BAS文件(NEW)当光标在NEW上闪烁时,按回车键进入该功能,屏幕上提示:文件号。该功能用来清除在内存中已有
16、的文件。假如内存中已有16个文件,如果要建立第17个文件,则需将原来文件中的某一个覆盖。键入文件号,或键入回车使用缺省文件号。屏上提示:文件的所有数据要丢失!屏上提示:确信?按回车键确认,按其他键退出。另外,0号文件保留给系统使用,不能清除。如清除0号文件,屏上会提示:0号文件为系统使用,不能清除。(2)编辑BAS文件(EDI)该功能用来编辑BAS文件。当光标在EDI上闪烁时,键入回车键进入该功能。 屏上提示:文件号 键入文件号或回车使用缺省文件号。此时分两种情况: 屏上提示:空间 Z I然后进入编辑屏幕,此文件中的第一字显示在屏上。 0 0 0 1 I如: 热 0 4 4 0 H其中(如右图
17、) 1 2 3 4 5 6 7 8 16 15 14 13 12 11 10 91、2、3、4区为当前编辑汉字位置,它表明将来显示此汉字时所在的位置,亦即光标。5区为插入开关状态 I插入开,否则覆盖6区表示当前的ASCII码区 00区 11区7、8、9、10区用来显示调出的汉字或字符。11区表示输入状态: C 控制码H 汉字A 字符12区未用。13、14、15、16区表示输入代码区。即可进入编辑。在编辑时各键的功能如下:0F键:数字键,用来输入数据。在输入汉字是用来输入汉字的区位码(如4040代表第40区、第40位的汉字,即“热”字)。在输入字符时,用来输入十六进制的ASCII码,(如ASCI
18、I码值为41H的字符“A”)、键:用来寻找前一个或后一个汉字HELP键:按此键,在屏幕上出现有关编辑时的一些帮助信息。DEL键:如果已经开始输入,此键用来删除错误的数字,否则删除当前的汉字或字符。ESC键:用来退出编辑。按此键后 屏上提示:确信: 回车确认。如果修改文件,就在 屏上提示:存储吗? 回车确认。然后 屏上提示:正在存储存储完毕后退回BAS菜单。INS:是INS和回车键的组合,此键用来进行插入开、关的转换(INS)。或进行确认(回车)0区、1区:用来进行0区、1区的转换。为0区时输入前128个(第1页)ASCII码字符;1区时输入后128个(第2页)ASCII码字符。PUP、PDN:
19、PUP向上翻页。PDN向下翻页。ASC汉字:用来改变输入状态:按下ASC键,屏幕上出现“A”,接收十六进制ASCII码; 按下汉字键,屏幕上出现“H”,接收汉字区位码。HOM、END:HOM键到文件头,END键到文件尾。BAS文件使用仿WPS式文件格式。可以在字符或汉字前边加上控制字符和参数,以达到预期效果,系统给出了以下几个控制字符以及它们所需带的参数(有待扩充):控制码 所需参数 功能 举例 80H 移动光标 把光标移动到参数要 80 02 代表光标到求处 第二个汉字81H 显示时间 在当前光标处固定显示 81 02 固定显示汉字2秒82H 出屏方式 显示时间 清屏方式 以参数要求的出屏方
20、 82 00 01 03以式,显示时间及清屏方式 正常方式出屏显示固定显示 1秒,然后,逐行清屏83H 出屏方式 移动速度 清屏方式 以参数要求的出屏方 83 02 01 04以式,移动速度及清屏 跳字方式出屏每次移方式移动显示 动一点后,逐列清屏出屏方式 清屏方式参数 方式 参数 方式00 正常出屏 00 正常清屏01 逐字出屏 01 从左向右逐字清屏02 跳字出屏 02 从右向左逐字清屏03 逐行出屏 03 逐行清屏04 逐列出屏 04 逐列清屏05 旋转出屏 06 外扩出屏 例如:要输入0号文件如下:我是中国人,我爱中国若要求用移动方式来显示,逐行出屏,逐列清屏,每次移动一点;则在输入文
21、件过程中键入的内容如下:| 83 03 01 04 | 4650 4239 5448 2950 4043 | 0312 | 4650 1614 5448 2590 |第一部分是控制码和参数,按ASC键后键入,第二部分是“我是中国人”的汉字区位码,第三部分是逗号的区位码,第四部分是“我爱中国”的汉字区位码。后三部分是用汉字状态输入。(3)运行BAS文件(RUN):此功能用来运行已存储的BAS文件。当光标在RUN上闪烁时,键入回车,进入RUN功能。 屏上提示:文件号键入文件号或键入回车,使用缺省值后,如果文件不存在 屏上提示:文件不存在!返回菜单,否则 屏上提示:请输入运行次数键入运行次数(0F)
22、(其中0代表无数次,1F代表115次)后便开始运行。运行指定次数后,返回BAS菜单,如运行中可按复位键退出。(4)退出BAS功能(ESC)此功能用来从BAS菜单返回主菜单。2PRG功能在系统中有8K的仿真RAM,同学们可在RAM中运行自己的程序。此功能主要是帮助同学们输入程序、运行程序和调试程序。进入PRG功能后,系统进入仿真调试状态,此时它的作用就相当于功能齐全的51单片机开发系统。屏上提示:P . 此时数字键的功能不变,其他键的第二功能起作用,分别为:上一单元:下一单元USE:用户屏幕,按此键可观察输出REG:用直接寻址方式,检查内部RAM的和寄存器的内容。例如键入E0后,按REG即可查看
23、、修改累加器A的内容。回车:返回监控,即P .状态BRK:设置断点,用断点运行方式执行程序。EXE:全速执行程序XRA: 外部数据存储器检查修改处理MEM:程序存储器检查、修改键STP: 单步执行程序SAV: 将程序存入具有掉电保护功能的RAM中LOD:从掉电保护RAM中读出程序。要注意:仿真RAM的地址为8000H9FFFH。其他单元只能读出,不能修改。即同学们自编的程序首地址都应在8000H9FFFH之间。例如:在8000H开始的程序单元中存入10H,20H操作如下 P .键入 8000 8000键入 MEM 8000 00键入 10 8000 10按键 8001 00键入 20 8001
24、 20键入回车 P .因此,此功能可以象开发系统一样,输入汇编目标程序及一些数据。用ESC退出EDI功能返回PRG菜单。例如在仿真RAM中有了51程序,便可运行它。按EXE键进入RUN后 屏上提示:首地址键入首地址,程序控制由系统内部转移到仿真RAM中,从首地址开始执行用户程序。用户的程序一定要正确,而且要求在程序的最后加一条LJMP RETURN指令,以便于让控制转回到系统内部。3.屏幕与缓冲区地址对应关系由硬件部分可知,本系统采用双CPU工作,主CPU负责处理通信,人机对话及实时显示等任务。辅CPU则专门负责扫描显示。主、辅CPU共享一片作为显示缓冲区的6264(RAM)。在主CPU处理好
25、共享RAM的数据后,便将RAM出让给辅CPU,辅CPU将共享RAM的内容原封不动地映像到显示屏,内存单元与显示屏点阵对应关系如下(对主CPU而言)内 0000 0001 0002 0003 0004 0005 0006 0007存 0100 0101 0102 0103 0104 0105 0106 0107单 元 地 0800 0801 0802 0803 0804 0805 0806 0807址 (H) 0F00 0F01 0F02 0F03 0F04 0F05 0F06 0F07 第一个汉字 第二个汉字 第三个汉字 第四个汉字四、 程序设计与调试(1)NEW 1 号文件输入如下代码:【8
26、3 03 01 04】【4B 44 32 30 30 30】【4845】【4C 45 44】【5439 3660 4751 4231 4721 4159】【】用于将ASCII 、控制码 和区位码分开,代码中不不输入,保存后,运行结果如下:移动显示:KD2000型LED智能显示系统,完成要求。(2) 1.在屏上显示2个汉字,然后每个字左旋90度显示3秒,然后右旋90度显示3秒,然后倒置3秒,最后恢复正常。主程序代码如下:ORG 8100HLCALL 9F39HLCALL 9F3CHMOV R6,#89HLCALL DISPLCALL DELAYMOV R6,#8AHLCALL DISPLCALL
27、 DELAYMOV R6,#8BHLCALL DISPLCALL DELAYMOV R6,#8CHLCALL DISPLCALL DELAYMOV R6,#89HLCALL DISPLJMP 8200HORG 8150HDISP:MOV DPH,R6MOV DPL,#0LCALL LP1MOV DPL,#32MOV DPH,R6LCALL LP2RET2.逐行显示2个汉字,2秒后横向放大两倍,3秒后恢复正常。主程序代码如下:ORG 8200H/*2*/LCALL 9F39HLCALL 9F3CHMOV DPTR,#HAN2LCALL LP3LCALL DELAYLCALL 9F39HLCALL
28、 9F3CHMOV DPTR,#HAN22LCALL LP4LCALL DELAYLCALL 9F39HLCALL 9F3CHMOV DPTR,#HAN2LCALL LP3LJMP 8300H3.显示“回”字并放大缩小5次,恢复正常。主程序代码如下:ORG 8300H/*3*/LCALL 9F39HLCALL 9F3CHMOV R6,#5MAIN:MOV DPTR,#huiLCALL LP1LCALL DELAYMOV DPTR,#hui1LCALL LP1LCALL DELAYDJNZ R6,MAINJNB 01H,$CLR 01HLJMP 9F30HORG 8400HMAIN1:LCALL
29、 LP1MOV A,DPLADD A,#20HMOV DPL,ALCALL LP2LCALL DELAYRET一般显示程序:ORG 8500HLP1:MOV R1,#0MOV R0,#0MOV R4,#0MOV R5,#16MOV P2,R4LOOP1:MOV A,R1MOVC A,A+DPTRMOVX R0,AINC R0INC R1MOV A,R0CJNE A,#2,LOOP1MOV R0,#0INC R4MOV P2,R4DJNZ R5,LOOP1LCALL 9F42HRETORG 8550HLP2:MOV R1,#0MOV R0,#2MOV R4,#0MOV R5,#16MOV P2,R4LOOP2:MOV A,R1MOVC A,A+DPTRMOVX R0,AINC R0INC R1MOV A,R0CJNE A,#4,LOOP2MOV R0,#2INC R4MOV P2,R4DJNZ R5,LOOP2LCALL 9F42HRET
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1