




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、微型计算机系统原理及应用实实验验指指导导书书丽水学院工程与设计学院丽水学院工程与设计学院 20142014 年年 1010 月月目目 录录实验一、DEBUG 程序的使用 .1实验二、汇编语言程序的汇编与调试.4实验三、系统功能调用程序设计.7实验四、模块化程序设计.11实验五、DAIS-2CPU+实验台的使用 .16实验六、8253 定时计数器实验.20实验七、8255 并行接口实验.25实验八、8251 串行接口实验.31.1.实验一、实验一、DEBUG 程序的使用程序的使用一、实验目的一、实验目的熟悉指令系统,掌握常用指令的功能。熟悉 DEBUG 程序的使用,掌握汇编语言程序段的上机调试方
2、法。二、实验原理二、实验原理1、DEBUG 程序简介程序简介DEBUG 是 DOS 操作系统和 WINDOWS 操作系统都提供的程序动态调试系统程序。利用DEBUG 可以汇编、反汇编机器指令,查看、修改内存数据,并可将内存的数据或指令代码保存为磁盘文件。DEBUG 采用字符界面,可在 MSDOS 方式键入:DEBUG 来启动该系统程序。进入 DEBUG 状态后,出现提示符“” ,表示可以使用 DEBUG 的分命令调试程序了。DEBUG 的分命令及功能如表 1-1 所示。表 1-1 DEBUG 分命令命令功能命令格式说明反汇编U起始地址一次将 32 字节的指令代码翻译成相应的助记符汇编A起始地址
3、将输入的指令助记符翻译成机器码并存入存储器中,默认的段为代码段显示寄存器内容R寄存器显示或修改寄存器的内容显示存储单元内容D起始地址 结束地址或L 字节数用十六进制和 ASCII 码两种形式显示内存单元内容,默认的段为数据段修改存储单元内容E 地址 内容项表逐个修改存储单元内容或将内容项表的内容存入存储器中运行程序G=起始地址 断点地址从起始地址开始执行程序到断点处,显示所有寄存器内容及下一条指令的助记符跟踪执行程序T=起始地址 执行步数一次执行指定数量的指令,默认步数为 1 步指定文件名N 文件标识符文件标识符将文件标识符格式化到 CS:5CH 和 CS:6CH 两个文件控制块中写文件W起始
4、地址将内存中从“起始地址”开始,长度由 BX、CX决定(32 位二进制)的内容写入由 N 命令指定的磁盘文件中读文件L起始地址将磁盘上由 N 命令指定的文件读入由“起始地址”开始的存储器中,BX、CX 包含文件的字节数退出 DEBUGQ2、简单程序设计、简单程序设计将起始地址为 1000H 的连续 40 个存储单元依次填入 00H27H 连续整数,参考程序如下:MOV CX,28HMOV SI,1000HMOV AL,00HL1:MOV SI,ALINC SIINC ALDEC CXJNZ L1HLT三、实验环境三、实验环境运行 DOS 或 Windows 系统的微机.2.DEBUG 系统程序
5、四、实验内容四、实验内容1、 程序汇编程序汇编利用 DEBUG 的 A 命令从起始地址 0100H 输入源程序。格式为:A0100 回车。进入 A 命令(汇编状态)后,按照源程序逐条输入指令,其中所有的数字都应是十六进制数(十六进制数的后缀 H 必须省略) ,也不能使用标号,转移指令的目标地址需用直接地址。如果指令错误,将提示 Error,需重新输入。待所有指令输完后,直接按回车,退出 A 命令。利用 U 命令检查输入的程序。格式为:U0100 回车。2、程序运行、程序运行利用 DEBUG 的 D 命令检查起始地址为 100H 的存储单元内容。格式为 D100 回车。利用 DEBUG 的 T
6、命令单步执行程序。格式为 T=0100 回车。T 命令每次执行一条指令,显示寄存器内容和下一条指令的助记符,第一次 T 命令需指明起始地址,后续 T 命令起始地址可缺省。利用 DEBUG 的 G 命令连续执行程序。格式为:G=0100 0110 回车。其中 HLT 指令所在的地址0110H 设为断点地址(HLT 指令不执行) 。重新用 D 命令查看 1000H1027H 存储单元的内容,是否为 00H27H。D1000 1027利用 DEBUG 的 E 命令修改 1000H1027H 存储单元的内容为任意值。格式为:E1000 回车(进入 E 命令后,可按空格键显示下一地址单元,按减号键显示上
7、一地址单元,按回车键退出 E 命令) 。重复使用 D 命令和 G 命令,对比程序运行前后内存单元内容的变化。3、程序保存、程序保存利用 DEBUG 的 N 命令指定文件名。格式为:NC:LX.COM。利用 DEBUG 的 R 命令设定寄存器的内容。格式为:RCX 回车。将 CX 设为文件的字节数0011H,BX 设为 0000H。利用 DEBUG 的 W 命令保存程序内容。利用 Q 命令退出 DEBUG,在操作系统下查看 C:根目录下是否建立了 LX.COM 文件,且文件长度应为 17 字节。4、利用文本编辑程序建立源程序、利用文本编辑程序建立源程序直接用文件编辑程序如 EDIT 程序或记事本
8、程序编辑如下源程序,并保存为 C:LX.TXT 文件。A0100MOV CX,28MOV SI,1000MOV AL,00MOV SI,ALINC SIINC ALDEC CXJNZ 0108HLTNC:LX2.COMRCX0011RBX0000WQ.3.源程序中字型加粗部分为 DEBUG 命令(包括 HLT 指令后的空行) ,连同指令一起保存到 TXT文件中。利用 DEBUG 程序的输入改向,对源程序进行汇编,格式为 DEBUGEj+1两数交换修改指针比较完否?CX-1=0?NN结束图 2-1 冒泡排序流程图666661277777121212125437333318373337183333
9、5418373781185454541881818181.9.三、实验环境三、实验环境运行 DOS 或 Windows 系统的微机一台MASM 汇编程序一套DEBUG 动态调试程序四、实验内容四、实验内容1、程序设计、程序设计从键盘输入最多不超过 50 个字符的字符串,经排序后从屏幕输出。字符串输入与显示用宏指令实现。参考程序:DAT SEGMENTMESS1 DB Input character:,$SBUF DB 51,?,51 DUP($),$MESS2 DB Output character:,$MESS3 DB 0DH,0AH,$DAT ENDSSTAC SEGMENT STACKD
10、W 20 DUP(?)STAC ENDSCODE SEGMENTASSUME CS:CODE,DS:DAT,SS:STACINPUT MACRO BUFLEA DX,BUFMOV AH,0AHINT 21HENDMDISPLY MACRO STRINGLEA DX,STRINGMOV AH,9INT 21HENDMMAIN PROC FARPUSH DSXOR AX,AXPUSH AXMOV AX,DATMOV DS,AXDISPLY MESS1INPUT SBUF;输入字符串(最后一个字节为 0DH)LEA BX,SBUF+2ADD BL,SBUF+1ADC BH,0 ;BX 指向输入的最后
11、一个字符(回车符)MOV BYTE PTR BX,$;将输入的最后一个回车符(0DH)改为$.10.DISPLY MESS3; 回车换行MOV CL,SBUF+1MOV CH,0DEC CXL0:LEA SI,SBUF+2MOV DX,CXL1:MOV AL,SICMP AL,SI+1JNA L2XCHG AL,SI+1MOV SI,ALL2:INC SIDEC DXJNZ L1LOOP L0DISPLY MESS2DISPLY SBUF+2RETMAIN ENDPCODE ENDSEND MAIN2、程序调试运行、程序调试运行源程序经过汇编,形成目标代码文件(.OBJ) 、列表文件(.LST
12、)和交叉参考文件(.XRF) ,目标代码文件经连接,形成可执行程序(.EXE)和内存映象文件(.MAP) ,并用程序 CREF.EXE 将交叉参考文件(.XRF)转换成索引文件(.REF) 。在 DOS 提示符下运行程序,并在 DEBUG 状态检查宏指令的扩展。五、实验报告五、实验报告编写实现从键盘输入字符、并将字符按从大到小顺序排序的源程序,记录 MAP 文件内容及程序运行时的屏幕显示。总结宏指令的使用方法和宏指令与子程序的差别,在主程序中注上宏指令的扩展情况。总结 DOS 中断调用的基本方法。.11.实验四、模块化程序设计实验四、模块化程序设计一、实验目的一、实验目的掌握模块化程序设计的基
13、本过程和基本方法,掌握模块之间参数传递的方法,了解多模块程序段的连接(组合)方式。二、实验原理二、实验原理1、模块化程序设计、模块化程序设计把一个程序分成具有多个明确任务的程序模块,分别编写、调试,然后再把它们连接在一起,形成一个完整的程序,这样的程序设计方法称为模块化程序设计。对于一个较复杂的大程序来讲,模块化程序设计不但降低了程序编写调试的难度,而且不同模块可分配给不同程序员编写调试,模块可重复利用,效率高。模块化程序设计的一般步骤为:把整个程序划分成多个模块,画出层次图;编写调试各个模块;把各个模块连接成完整的程序。模块划分是一个自顶向下(top-down)的程序设计过程。用层次图表示各
14、模块之间的关系,顶层为主模块,调用下一层的子模块,而子模块又可以调用下一层的子模块,如图 3-1 所示。划分模块时,既要考虑模块之间的控制耦合应尽可能简单,一个模块最好只有一个入口和一个出口;又要考虑模块之间的数据的传送量要少;同时还要使各模块的长度适中。2、局部符号与外部符号、局部符号与外部符号在用户程序中使用的符号分为局部符号和外部符号。在本模块中定义,又在本模块中引用的符号称为局部符号,不同模块的局部符号允许重名。在一个模块中定义,而在另一模块中引用的符号称为外部符号。外部符号不允许重名。在一个模块中定义、要提供给其他模块使用的符号,必须用 PUBLIC 定义该符号为外部符号。具体格式为
15、:PUBLIC 符号名,在另一模块中定义而要在本模块中使用的符号必须用 EXTRN 加以说明。具体格式为:EXTRN 符号名:类型,3、程序段的连接方式、程序段的连接方式段定义时的连接方式规定了程序连接时各模块程序段的合并方法。允许使用的连接方式有:PUBLIC 该段连接时将与其他模块中的同名段连接在一起。PRIVATE 该段不与其他模块中的同名段合并。主模块模块 A模块 B模块 C模块 B模块 D模块 E图 3-1 层次图.12.主模块分模块 1分模块 2图 3-3 程序结构COMMON 该段在连接时与其他同名段有相同的起始地址,即产生覆盖。STACK 连接方式同 PUBLIC,用于堆栈段。
16、缺省的连接方式为 PRIVATE。两个模块的地址分配及连接后装入模块的地址分配情况分别如图 3-2 所示。三、实验环境三、实验环境运行 DOS 或 Windows 系统的微机一台MASM 汇编程序一套DEBUG 动态调试程序四、实验内容四、实验内容1、程序设计、程序设计程序分三个模块,主模块为总控模块,调用分模块 1 和分模块 2,完成从键盘输入四门功课的成绩,计算并显示总分。分模块 1 完成成绩的输入,并将 ASCII 码转变成 BCD 码,存于寄存器 AL中(子程序通过 AL 传递结果给主程序) 。分模块 2 完成四门功课总分的计算,并将 BCD 数转变为ASCII 码,保存在变量 TOT
17、AL 中。程序层次结构如图 3-3 所示。为简化程序书写,主程序可使用宏指令和重复汇编伪指令 IRPCENDM。主模块参考程序:NAME MAINPUBLIC CJ,TOTALEXTRN INPUT:FAR, SUM:FARDAT SEGMENT PUBLICMES1 DB CHINESE: ,9,$MES2 DB MATHS: ,9,$MES3 DB PHYSICS: ,9,$MES4 DB CHEMISTRY:,9,$MES5 DB TOTAL: ,9,$CR DB 0DH,0AH,$; 回车换行符CJ DB 4 DUP (?)TOTAL DB 3 DUP (?),$模块 1 数据段连接方
18、式:common模块 1 代码段连接方式:缺省模块 2 数据段连接方式:common模块 2 代码段连接方式:缺省模块 1 代码段装入模块数据段长度同模块 2 数据段模块 2 代码段数据段代码段图 3-2 程序段的地址分配.13.DAT ENDSSTAC SEGMENT STACKDW 100 DUP (?)STAC ENDSCODE SEGMENTASSUME CS:CODE,DS:DAT,SS:STACMAIN PROC FARPUSH DSXOR AX,AXPUSH AXMOV AX,DATMOV DS,AXDISPLY MACRO STR;定义 DISPLAY 宏指令LEA DX,ST
19、RMOV AH,9INT 21HENDMIRPC X,1234;重复汇编伪指令,每次用字符串 1234 中的一个代替 XDISPLY MES&XCALL INPUTMOV CJ+X-1,ALDISPLY CRENDMDISPLY MES5CALL SUM;计算总分的子程序DISPLY TOTAL;显示总分DISPLY CRRETMAIN ENDPCODE ENDSEND MAIN分模块 1 参考程序:NAME INPUTPUBLIC INPUTDAT SEGMENT PUBLICBUF DB 3,?,3 DUP (?)DAT ENDSCODE SEGMENTASSUME DS:DAT,
20、CS:CODEINPUT PROC FARLEA DX,BUF;输入字符串MOV AH,0AH.14.INT 21HMOV BL,BUF+1;取输入的字符个数,将 ASCII 码转换成 BCD 码AND BUF+2,0FHAND BUF+3,0FHCMP BL,1JA L1JZ L2MOV AL,0RETL1:MOV CL,4MOV AL,BUF+2SHL AL,CLOR AL,BUF+3RETL2:MOV AL,BUF+2RETINPUT ENDPCODE ENDSEND分模块 2 参考程序:NAME SUMPUBLIC SUMEXTRN CJ:BYTE,TOTAL:BYTECODE SEG
21、MENTASSUME CS:CODESUM PROC FARMOV AH,0LEA SI,CJ+1MOV CL,3MOV AL,CJAGAIN:ADD AL,SI;计算四门功课的总分DAAJNC NEXTINC AHNEXT: INC SIDEC CLJNZ AGAINOR AH,30H;BCD 码转变成 ASCII 码,存入 TOTAL 变量中MOV TOTAL,AHMOV BL,ALMOV CL,4SHR BL,CLOR BL,30HMOV TOTAL+1,BL.15.AND AL,0FHOR AL,30HMOV TOTAL+2,ALRETSUM ENDPCODE ENDSEND2、程序调
22、试运行、程序调试运行分别对三个模块进行汇编,形成三个目标代码文件(.OBJ) 。将三个目标代码文件连接成一个可执行程序,方法为:LINK 目标代码文件名 1+目标代码文件名 2+目标代码文件名 3在 DOS 提示符下运行程序,并检查程序运行结果。打开连接时生成的内存映象文件(.MAP) ,对照段的连接方式,分析每个模块的程序段的排列方式。将主模块中的 DAT 段及分模块 1 中的 DAT 段的连接方式改成 COMMON,重新汇编、连接、运行,结果如何?根据 MAP 文件分析其原因。将主模块中的 DAT 段及分模块 1 中的 DAT 段的连接方式改成 PRIVATE(缺省方式) ,重新汇编、连接
23、、运行,结果如何?根据 MAP 文件分析其原因。五、实验报告五、实验报告简述模块化程序设计的基本过程和基本方法。记录段的连接方式与对应的 MAP 文件内容,分析代码段、数据段、堆栈段连接方式对程序的影响。在上述实验程序的基础上,增加计算并显示四门功课平均分的指令。.16.实验五、实验五、DAIS-2CPU+实验台的使用实验台的使用一、实验目的一、实验目的熟悉 DAIS-2CPU+实验系统的结构和组成,掌握 Intel8086 集成开发环境的使用。掌握 RAM 中的数据操作二、实验原理二、实验原理1、 实验系统的组成实验系统的组成系统特点Dais & Keil 中英文双平台支持:自主开发
24、的 Dais 集成环境,提供单步、断点、连续等丰富的调试手段。内置双踪虚拟 PC 示波器,通过集成开发环境可在计算机屏幕上显示被测试端的输出波形。同时配备开发应用版和示教综合版集成软件,形成了仿真开发与教学实验相结合的多用途实验型开发系统,充分激发了学生的动手及思维能力,有效提高了实验效率、实验成功率和教学质量;同时支持 Keil 软件,与最优秀的嵌入式集成开发环境实现无缝连接!独创的达爱思 FlashDown 仿真技术,采用专用下载芯片,可实现 P0、P2 总线和 I/O 口全功能。完全自主的多 CPU 兼容技术,对目标处理器的支持从 8051/8751、8088 到 PC 计算机,高度智能
25、的后台监控及 CPU 选择开关令目标 CPU 的切换灵活自如。独创的 ISA 通用插座设计,充分开放,自由设计,使接口实验项目由平面到立体无限延伸,可适配达爱思 ISA 实验扩展卡,亦可由学生自行设计实验模块,培养独立设计与动手能力,直接面向课程设计、毕业设计及电子竞赛。PCI 总线实验支持,强大的 PC 计算机资源与实验装置的完美组合,支持Win9X/2000/NT/XP/2003 及 DOS 操作系统,支持实模式、保护模式下的 I/O 设备、存储器及中断的访问,支持汇编语言及高级语言编程(PCI 卡需要另购) 。高效的 PACK 实验扩展,灵活设计,任意叠加,对创新实验项目 USB1.1/
26、2.0、TCP/IP、CAN-bus 等完美扩展支持。工作模式单片机:分别支持 8051 模式和 8751 模式(采用专用芯片、下载式技术实现 P0、P2 的 I/O 功能)。微机:8086 最小系统和 32 位 PCI 总线扩展方式(PCI 卡需另购) ,采用 PCI9052,实现对实验箱的 I/O、存储器、中断的访问。使学生练习并掌握 WDM 驱动程序的编写,以及用 C/C+、汇编语言实现各个实验程序的设计,支持最新的 Windows 版本!51 单片机:分别支持 8051 模式和 8751 模式(采用专用芯片、下载式技术实现 P0、P2 的 I/O 功能) 。系统组成如图 5-1 所示。
27、 图 5-1 实验系统组成+.17.2、集成软件环境、集成软件环境系统配有 Intel8086 集成开发环境,提供全屏幕编辑、8086 和 8051 汇编与连接、DEBUG 动态调试以及 PC 示波器功能。打开 Windows 开始菜单,启动 Intel8086 集成开发环境,显示程序主窗口,如图 5-2 所示。在程序主窗口中,可以打开全屏幕编辑窗口、寄存器窗口、调试窗口及示波器窗口,可以完成程序的编辑、汇编、连接、调试及运行。图 5-2 Intel8086 集成开发环境主窗口三、实验环境三、实验环境运行 Windows 系统微机一台DAIS-2CPU+实验台一台串行通信电缆一根四、实验内容四
28、、实验内容使用串行通信电缆连接 PC 机和实验台。进入 Intel8086 集成开发环境,在主菜单上选择实验台对应串口号(COM1 或 COM2) ,单击文件菜单的新建命令或新建工具,出现全屏幕文本编辑窗口。1、清零程序实验把 RAM 区内 4000H40FFH 单元的内容清零。参考程序如下:CODE SEGMENT ASSUME CS:CODE,DS:CODE,ES:CODE ORG 3000HS1: MOV BX,4000H MOV Al,00H MOV CX,0010HL1: MOV BX,AX INC BX not al LOOP L1 JMP $CODE ENDS END S1实验步
29、骤LED 环境.18. 在“P”状态下按“0EV/UN”,装载实验所虚的代码程序。 在“P”状态下键入 3000,然后按“STEP”或“EXEC”进入实验项目的调试与运行。PC 环境 在与 PC 联机状态下,编译、连接、装载 PHSE01.ASM,用连续或单步方式运行。运行结果检查 在单步运行时,每走一步可观察其运行结果。 在连续运行状态下,应按“暂停图标”或实验台上的“暂停按钮” ,使系统无条件推出用户运行状态返回监控,然后再用相应的命令键观察与检查 4000-40FFH 中执行程序前后内容的变化。 2、数据区移动程序把 4100H 源 RAM 区首地址内的 16 字节数据传送到 4200H
30、 目标 RAM 区。设计思想:程序要求把内存中一数据区(称为源数据块)传送到另一存储区(称为目的数据块) 。源数据块和目的数据块在存储器中可能有三种情况,如图 5-3:图 5-3对于两个数据分离的情况,如图(a),数据的传送从数据块的首地址开始,或者从数据块的末地址开始均可。但对于有部分重叠的情况,则要加以分析,否则重叠部分会因“搬移”而遭破坏。可以得出如下结论:当源数据首址大于目的块首址时,从数据块首址开始传送数据。当源数据首址小于目的块首址时,从数据块末址开始传送数据。参考程序如下:CODE SEGMENT ASSUME CS:CODE,DS:CODE,ES:CODE ORG 3060HS
31、4: MOV CX,0010H MOV SI,4100H MOV DI,4200H CMP SI,DI JA A42 ADD SI,CX ADD DI,CXA41: DEC SI DEC DI MOV AL,SI MOV DI,AL LOOP A41 JMP $A42: MOV AL,SI MOV DI,AL INC SI INC DI LOOP A42.19. JMP $CODE ENDS END S4实验步骤LED 环境 在“P”状态下按“0EV/UN”,装载实验所虚的代码程序。 在“P”状态下键入 3060,然后按“STEP”或“EXEC”进入实验项目的调试与运行。PC 环境 在与 PC
32、 联机状态下,编译、连接、装载 PHSE04.ASM,用连续或单步方式运行。运行结果检查 在单步运行时,每走一步可观察其运行结果。 在连续运行状态下,应按“暂停图标”或实验台上的“暂停按钮” ,使系统无条件推出用户运行状态返回监控,检查 4100-410FH 中执内容是否和 4200-420FH 中内容完全一致。五、实验报告五、实验报告 DAIS-2CPU+实验系统的基本组成和 Intel8086 集成软件环境的主要功能。 回答程序装入实验台后重新启动 PC 机,实验台中程序是否存在。 假使把 4000H40FFH 中的内容改成 FFh,如何修改程序。.20.S1 S0 L1 L0 M2 M1
33、 M0BCD实验六、实验六、8253 定时计数器实验定时计数器实验一、实验目的一、实验目的掌握 8253 的工作原理及其应用。二、实验原理二、实验原理1、 8253 芯片芯片8253 是可编程定时/计数器接口芯片,内部具有三个独立的 16 位计数器,最高计数速率为2.6MHz。8253 的外部引脚和内部结构如图 6-1 所示。8253 每个通道有六种工作方式,分别是方式 0 至方式 5,通过方式控制字选择,8253 的方式控制字如图 6-2 所示。 2、实验系统中的、实验系统中的 8253实验系统中装有一片 8253,线路图如图 6-3 所示,通道 0 输入 1.19MHz 的时钟,输出送 8
34、259的 IRQ0,作为实时时钟信号。通道 1 输入 1.8432MHz 的时钟,以 12 分频后输出 153.6KHz 方波送8251,作为串行通信的收发时钟。通道 2 以排针形式引出,供用户实验使用,系统中的 8253 的端口地址为 40H43H,地址分配如表 6-1 所示。 表 6-1 8253 端口地址分配表通道选择00选择通道 001选择通道 110选择通道 210选择通道 3计数方式0二进制1二十进制工作方式000方式 0001方式 110方式 211方式 3100方式 4101方式 5操作方式00锁存计数值01读/写计数器低字节10读/写计数器高字节11先读/写计数器低字节再读/
35、写计数器高字节数据总线缓冲器读/写控制逻辑控制寄存器通道0通道1通道2CLK0GATE0OUT0CLK1GATE1OUT1CLK2GATE2OUT2RDWRA0A1CSD7D01234ABCD4321DCBAD08OUT010D17GATE011D26CLK09D35D44D53D62OUT113D71GATE114CLK115CS21RD22WR23OUT217A019GATE216A120CLK2188253图 6-1 8253 内部结构和外部引脚图 6-2 8253 的控制字.21. 图 6-3 8253三、实验环境三、实验环境运行 Windows 系统微机一台Dais-IP2.0 实验
36、台一台示波器一台四、实验内容四、实验内容1、 8253 的的 0 通常工作在方式通常工作在方式 3,产生方波。,产生方波。 程序流程图 6-4 程序流程图 实验电路图 6-5 实验电路图 编程提示8253 芯片介绍8253 是一种可编程定/计数器,有三个十六位计数器,其计数频率范围为 02MHZ,用+5V单电源供电。寄存器地址通道 0 计数器40H通道 1 计数器41H通道 2 计数器42H控制寄存器43H.22.8253 的功能用途:延时中断实时时钟可编程频率发生器数字单稳事件计数器复杂的电机控制器二进制倍频器8253 的六种工作方式:方式 0:计数结束中断方式 3:方波频率发生器方式 1:
37、可编程频率发生方式 4:软件触发的选通信号方式 2:频率发生器方式 5:硬件触发的选通信号8253 的 0 号通道工作在方式 3,产生方波。 定时/计数器8253 方波参考程序CODE SEGMENT ASSUME CS:CODE,DS:CODE,ES:CODE ORG 3490HH9: MOV DX,0FFE3H MOV AL,36H OUT DX,AL MOV DX,0FFE0H MOV AL,00H OUT DX,AL MOV AL,10H OUT DX,AL JMP $CODE ENDS END H9 实验步骤1、实验连线连接 138 译码输入端 A.B.C,其中 A 连 A2,B 连
38、 A3,C 连 A4,138 使能控制输入端G 与总线单元上方的 GS 相连。定时计数单元 CLK0 与分频单元 T2 相连,GATE0 与 5V 相连,8253CS 与译码单元 Y0相连。用 8 芯扁平电缆将 8251 串行通信单元的数据总线插座与数据总线单元任一插座相连。2、LED 环境(1)在“P.”状态下按“0EV/UN” ,装载实验所需的代码程序。(2)在“P.”状态下键入 3490,然后按“EXEC”进入实验项目的运行。3、PC 环境.23.在与 PC 联机状态下,编译、连接、下载 PH88he09.asm,用连续方式运行程序。4、观察运行结果以连续方式运行程序,用示波器观察 OU
39、T0 应有方波输出。5、终止运行按“暂停图标”或实验箱上的“暂停按钮” ,使系统无条件退出该程序的运行返回监控状态。2、 电子发声实验(选做)电子发声实验(选做)8253 通道 2 工作在方式 3(方波发生器) ,CLK2 输入 1.1925MHz 的 OPCLK 信号,根据音阶给8253 送不同的定时初值,OUT2 输出不同频率的方波,送蜂鸣器发声。利用延时程序作音乐节拍,每过一定时间(一拍) ,给 8253 送下一拍的计数初值,实验接线如图 6-6 所示,实验参考程序如下:STACK SEGMENT STACKDW 64 DUP(?)STACK ENDSDATA SEGMENTTABLE
40、DB 33H,33H,3DH,33H,26H,26H,26H,26HDB 2DH,2DH,26H,26H,33H, 33H,33H,33H ;DB 33H,33H,4DH,45H,3DH,3DH,45H,4DHDB 45H,45H,45H,45H,45H,45H,45H,45H ;DB 33H,33H,3DH,33H,26H,26H, 26H,28HDB 2DH,2DH,26H,26H,33H,33H,33H,33H ;DB 33H,33H,45H,3DH,39H, 39H,39H,52HDB 4DH,4DH,4DH,4DH,4DH,4DH,4DH,4DH ;DB 2DH,2DH, 26H,2
41、6H,26H,26H,26H,26HDB 28H,28H,2DH,28H,26H,26H,26H, 26H ;DB 2DH,28H,26H,2DH,2DH,33H,3DH,4DHDB 45H,45H,45H,45H, 45H,45H,45H,45H ;DB 33H,33H,3DH,33H,26H,26H,26H,28HDB 2DH, 2DH,26H,26H,33H,33H,33H,33H ;DB 33H,33H,45H,3DH,39H,39H, 39H,52HDB 4DH,4DH,4DH,4DH,4DH,4DH,4DH,4DH, 00HDATA ENDSCODE SEGMENTASSUME C
42、S:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV BX,OFFSET TABLEMOV AL,BXMOV AH,00HA1:MOV DL,0FHMUL DLPUSH AXMOV AL,0B6HOUT 43H,ALPOP AXOUT 42H,ALMOV AL,AHOUT 42H,ALINC BXMOV AH,00H.24.MOV AL,BXAND AL,0FFHJZ A3MOV CX,77FFHA2:PUSH AXPOP AXLOOP A2JMP A1A3:MOV BX,OFFSET TABLEMOV AL,BXMOV AH,00HJMP A1CODE EN
43、DSEND START实验步骤:按图接线。输入程序,经汇编、连接后装入实验系统。运行程序,观察蜂鸣器发出的音乐声。五、实验报告五、实验报告记录实验过程,分析程序,总结 8253 各种工作方式的作用。OPCLK1.1925MHzCLK2OUT2SPKSPK UNIT8253图 6-6 电子发声实验接线图系统总线.25.实验七、实验七、8255 并行接口实验并行接口实验一、实验目的一、实验目的掌握可编程 I/O 接口芯片 8255 的接口原理使用,熟悉对 8255 初始化编程和输入、输出软件的设计方法。掌握 8255 芯片的内部结构和外部引脚。掌握 8255A 的工作方式和编程原理。二、实验原理二
44、、实验原理1、8255 简介简介8255 是可编程并行接口芯片,一片 8255 提供 A、B、C 三个 8 位并行口,外部引脚如图 7-1 所示。其中 A 口有方式 0、方式 1、方式 2 三种工作方式,B 口有方式 0、方式 1 两种工作方式,C 口既可以用作一个 8 位数据端口,也可以用作两个 4 位数据端口,还可以按位置位或复位(位操作) 。在 A口、B 口工作方式 1 或方式 2 时,C 口的部分甚至全部口线作为 A 口、B 口的联络控制信号。一片 8255 占用四个端口地址,用 A1、A0两根地址线选择。当 A1A0=00 时,选择 A 口当 A1A0=01 时,选择 B 口当 A1
45、A0=10 时,选择 C 口当 A1A0=11 时,选择控制寄存器各端口的工作方式由方式控制字决定,控制字的格式如图 7-2 所示。方式 0 为基本的输入或输出方式;方式 1 为带选通的输入或输出方式;方式 2(仅 A 口允许)为带选通的双向方式。C 口位操作控制字如图 7-3 所示。1 D6 D5 D4 D3 D2 D1 D00:PC3PC0 输出1:PC3PC0 输入0:端口 B 输出1:端口 B 输入0:端口 B 方式 01:端口 B 方式 10:PC7PC4 输出1:PC7PC4 输入0:端口 A 输出1:端口 A 输入00:端口 A 方式001:端口 A 方式11:端口 A 方式 2
46、图 7-2 8255 方式控制字8255APA7PA0PB7PB0PC7PC0D7D0RDWRA1A0CS图 7-1 8255 的外部引脚0 D6 D5 D4 D3 D2 D1 D00:复位1:置位000:PC0001:PC1010:PC2011:PC3100:PC4101:PC5110:PC6111:PC7无关图 7-3 C 口位操作控制字.26.2、实验单元电路、实验单元电路8255 实验单元 Dais 实验台右下角有一片 8255 芯片,其数据线、片选信号线、地址线、读写控制信号等分别与系统总线相连,A、B、C 三个并行口引脚全部以排针形式引出,供实验使用。线路图如图 7-4 所示,端口
47、地址如表 7-1 所示。开关和发光二极管实验单元实验用开关和发光二极管单元电路如图 7-5 所示。三、实验环境三、实验环境运行 Windows 系统微机一台Dais 实验台一台串行通信电缆一根四、实验内容四、实验内容1、8255A.B.C 口波形测试。口波形测试。 程序流程图 7-6 程序流程图 8255A 并行口实验方波参考程序CODE SEGMENT ASSUME CS:CODE,DS:CODE,ES:CODE ORG 32C0HH1: JMP STARTP1PA EQU 0FFD8H端口地址A 口60HB 口61HC 口62H控制寄存器63HRDWRCSA1A0RESET系统总线PA7P
48、A0PB7PB0PC7PC0D7D0图 7-4 Dais 中的 8255表 7-1 8255 端口地址D0D7+5VK0K7+5图 7-5 SW-LED 单元电路.27.PB EQU 0FFD9HPC EQU 0FFDAHPCTL EQU 0FFDBHSTARTP1:MOV DX,PCTL MOV AL,80H OUT DX,AL MOV AL,55HP11: MOV DX,PA OUT DX,AL INC DX OUT DX,AL INC DX OUT DX,AL MOV CX,8000H LOOP $ NOT AL JMP P11CODE ENDS END H1 实验步骤1、LED 环境(
49、1)在“P.”状态下按“0EV/UN” ,装载实验所需的代码程序。(2)在“P.”状态下键入 32C0,然后按“EXEC”进入实验项目的运行。2、PC 环境在与 PC 联机状态下,编译、连接、下载 PH88he01.asm,用连续方式运行程序。3、观察运行结果以连续方式运行程序,用 8255A、B、C 口分别用插针连接 L1-L8,观察发光二极管变化情况,用万用表测量 8255A、B、C 口应有高低电平输出。4、终止运行按“暂停图标”或实验箱上的“暂停按钮” ,使系统无条件退出该程序的运行返回监控状态。2、用、用 8255 PA 作开关量输入口,作开关量输入口,PB 作输出口。作输出口。 程序
50、流程图 7-7 程序流程图 实验电路.28.图 7-8 实验电路图 编程提示(1)8255A 芯片简介8255A 可编程外围接口芯片是 Intel 公司生产的通用并行接口芯片,它具有A、B、C 三个并行接口,用+5V 电源供电,能在以下三种方式下工作: 方式 0:基本输入/输出方式方式 1:选通输入/输出方式方式 2:双向选通工作方式(2)使 8255A 端口 A 工作在方式 0 并作为输入口,读取 K1K8 八个开关量,送 PB 口显示。PB 口工作在方式 0 作为输出口。 8255A 并行口实验PA 输入,PB 输出参考程序CODE SEGMENT ASSUME CS:CODE,DS:CO
51、DE,ES:CODE ORG 32E0HPA EQU 0FFD8HPB EQU 0FFD9HPC EQU 0FFDAHPCTL EQU 0FFDBHH2: MOV DX,PCTL MOV AL,90H OUT DX,ALP2: MOV DX,PA IN AL,DX INC DX OUT DX,AL JMP P2CODE ENDS END H2 实验步骤 按实验电路图连接线路: 8255A 芯片 A 口的 AP0PA7 依次和开关量输入插孔 K1K8 相连。 8255A 芯片 B 口的 AB0PB7 依次接 L1L8 运行实验程序。1、LED 环境 在系统处“P.”状态时按“0EV/UN” ,装
52、载实验所需的代码程序。输入 32E0,按 EXEC 键,拨动 K1K8、L1L8 会跟着亮灭。2、PC 环境在与 PC 联机状态下,编译、连接、下载 PH88he02.asm,用连续方式运行程序。 拨动 K1K8、L1L8 会跟着亮灭。.29.3、 用用 8255 作输出口,控制十二个发光二极管燃灭,模拟交通灯管理。作输出口,控制十二个发光二极管燃灭,模拟交通灯管理。 编程提示(1) 、通过 8255A 控制发光二极管 PB3、PB0、PA5、PA2 对应黄灯,PB1、PA6、PA3、PA0 对应红灯,PB2、PA7、PA4、PA1 对应绿灯,以模拟交通路灯的管理。(2) 、要完成本实验,必须
53、先了解交通路灯的亮灭规律,没有一个十字路口 1、3 为南北方向,2、4 为东西方向,初始状态为四个路口的红灯全亮。之后,1、3 路口的绿灯亮,2、4 路口的红灯亮,1、3 路口方向通车。延时一段时间后,1、3 路口的绿灯熄灭,而 1、3 路口的黄灯开始闪烁,闪烁若干次以后,1、3 路口红灯亮,而同时 2、4 路口的绿灯亮,2、4 路口方向通车,延时一段时间后,2、4 路口的绿灯熄灭,而黄灯开始闪烁,闪烁若干次以后,再切换到 1、3 路口方向,之后,重复上述过程。(3) 、程序中设定好 8255A 的工作模式,及三个端口均工作在方式 0,并处于输出状态。(4) 、各发光二极管共阳极,使其点亮应使
54、 8255A 相应端口的位清 0,逻辑 1 熄灭。 程序流程图 7-9 程序流程图 实验电路.30.图 7-10 实验电路图实验步骤按实验电路图连接线路: 8255APA0-L15 PA1-L14 PA2-L13 PA3-L11 PA4-L10 PA5-L9 PA6-L7 PA6-L6 PB0-L5PB1-L3 PB2-L2 PB3-L1运行实验程序:1、LED 环境 在系统处“P.”状态时按“0EV/UN” ,装载实验所需的代码程序。输入 32F0,按 EXEC 键,L1L12 发光二极管模拟交通灯显示。2、PC 环境在与 PC 联机状态下,编译、连接、下载 PH88he03.asm,用连续
55、方式运行程序。L1L12 发光二极管模拟交通灯显示。3、观察运行结果 以连续方式运行程序,观察发光二极管变化情况,记录初始态以及变化状态。五、实验报告五、实验报告复习 8255 的工作方式及控制字,仔细分析实验参考程序的指令功能。分析实验电路图,写出实验步骤。如果利用 8255A 口输出数据到 LED 数码显示器,使循环显示 09 十个数字,该如何连线,实验程序如何修改?实验台实验台 LED 数码显示单元电路图数码显示单元电路图74LS0774LS07X1adpX2X3X4+5V+5VY1Y201237654.31.实验八、实验八、8251 串行接口实验串行接口实验一、实验目的一、实验目的熟悉
56、串行通信的基本概念掌握 8251 串行接口芯片的工作方式及其应用。二、实验原理二、实验原理1、8251A 串行接口芯片串行接口芯片8251A 是串行通信接口芯片,主要功能为:允许同步或异步通信,同步通信波特率为 064K,异步通信波特率为 019.2K。同步通信时,允许内同步,也允许外同步,允许单同步字符或双同步字符。异步通信时,字符长度为 58 位,停止位为 12 位,允许奇偶校验或不带校验,具有奇偶错误、溢出错误和帧错误检测能力。8251A 的内部结构如图 8-1 所示,其方式控制字、命令控制字和状态字格式如图 8-2 所示。8251 通过 C/D 信号选择内部命令寄存器和数据寄存器,当
57、C/D 与地址线 A0 相连时,一片8251A 占用两个端口地址,其中奇地址为控制端口,偶地址为数据端口。8251A 的方式控制字和命令控制字是由写入的先后顺序决定的,复位后第一次写入的控制字为方式控制字,以后写入的为操作控制字。如果要改变 8251A 的工作方式,需通过外部 RESET 信号或复位命令字实施对 8251A 的复位操作。 00无效011 位停止位101.5 位停止位异步112 位停止位002 个同步字符,内同步,SYNDET 输出012 个同步字符,外同步,SYNDET 输入101 个同步字符,内同步,SYNDET 输出同步111 个同步字符,外同步,SYNDET 输入数据总线
58、缓冲读写控制逻辑调制/解调控制RESETCLKC/DRDWRCSD7D0发送缓冲器发送移位寄存器发送控制电路接收缓冲器接收移位寄存器接收控制电路RxDTxDRxRDYRxCSYNDETTxRDYTxEMPTYTxCDSRDTRCTSRTS图 8-1 8251A 内部结构.32.图 8-2 8251A 控制字格式2、实验系统中的、实验系统中的 8251实验系统中的 8251,如图 8-3、图 8-4 所示。8251A 的端口地址见表 8-1。TxDGNDRxDDSRCTSRTS图 8-3 实验单元中的 8251DTREH IR RTSER SBRK RxE DTR TxEN1:允许发送1:DTR
59、 有效1:允许接收1:发送断缺字符0:正常工作1:清除错误标志1:RTS 有效1:内部复位1:进入同步字符搜索方式(b) 8251A 操作控制字DSR SYNDET/BRKDET FE OE PE TxEMPTY RxRDY TxRDY为 1 时,相应引脚信号有效(c) 8251A 状态字S2 S1 EP PEN L2 L1 B2 B100:同步方式01:异步方式(1)10:异步方式(16)11:异步方式(64)00:5 位01:6 位10:7 位11:8 位0:不带奇偶校验01:奇校验11:偶校验(a) 8251A 方式控制字.33.表 8-1 8251 端口地址分配芯片端口地址数据C0H系
60、统 8251控制C1H数据80H实验单元 8251控制81H三、实验环境三、实验环境运行 Windows 系统微机一台Dais-IP2.0 实验台一台示波器一台四、实验内容四、实验内容1、利用本实验系统内的、利用本实验系统内的 8251 接口芯片,采用自发自收的方法,实现数据收发通信实验。发送的数接口芯片,采用自发自收的方法,实现数据收发通信实验。发送的数据为据为 4000H 开始的开始的 16 个源个源 RAM 区单元内容,接收到的数据放在区单元内容,接收到的数据放在 5000H 开始的开始的 RAM 单元中,核单元中,核对接收的数据是否和发送的数据一致。对接收的数据是否和发送的数据一致。 编程提示数据发送
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 城市更新中的区域经济发展与空间布局
- 陕西中考真题道法及答案
- 建筑智能照明控制系统方案
- 多重教育课件
- 建筑设备维护与保养方案
- 乙烯生产线项目施工方案
- 施工技术方案与创新设计
- 照明设施维护与管理优化方案
- 2025辽宁锦州医科大学开展“锦医英才计划”教学名师遴选工作考前自测高频考点模拟试题附答案详解(完整版)
- 2025海南文昌市人民医院编外工作人员招聘(9号)模拟试卷及答案详解(必刷)
- 【宜家家居物流运作问题与优化建议探析11000字(论文)】
- HG T 3690-2022 工业用钢骨架聚乙烯塑料复合管
- 财务报表分析方法与技巧
- 口腔疾病治疗质量控制课件
- 《直播营销与运营》PPT商品选择与规划
- 贵州福贵康护理院装修改造工程环评报告
- 贵阳区域分析
- 常见秋冬季传染病预防
- CRM-客户关系管理系统毕业论文
- 质量源于设计-QbD课件
- 仓储物流安全隐患排查表-附带法规依据
评论
0/150
提交评论