1.14k likes | 1.36k Views
硬件综合实验 ( 第一讲 ). 厦门大学软件学院 曾文华 2006 年 6 月 12 日. 第一部分 TDN86/88 十六位微机教学实验系统介绍. TDN86/88 系统概述. 西安唐都科教仪器公司制造 TDN86/88 十六位微机教学实验系统 +PC 微机(图 1-1 ) 实验系统 =8088 系统单元 + 接口实验单元 实验系统硬件构成(表 1-1 、图 1-2 ) 集成操作软件 PC 示波器功能. TDN86/88 系统概述(续). 两种实验方式:单元电路跨接方式、实验元件零连线方式 系统扩展功能:表 1-2 系统实验项目
E N D
硬件综合实验(第一讲) 厦门大学软件学院 曾文华 2006年6月12日
第一部分 TDN86/88十六位微机教学实验系统介绍
TDN86/88系统概述 • 西安唐都科教仪器公司制造 • TDN86/88十六位微机教学实验系统+PC微机(图1-1) • 实验系统=8088系统单元+接口实验单元 • 实验系统硬件构成(表1-1、图1-2) • 集成操作软件 • PC示波器功能
TDN86/88系统概述(续) • 两种实验方式:单元电路跨接方式、实验元件零连线方式 • 系统扩展功能:表1-2 • 系统实验项目 (1)、8259A中断控制器实验 (2)、8255并行接口实验 (3)、8253定时/计数器实验 (4)、8237DMA传送实验 (5)、8251串行通讯接口实验 (6)、串行通讯应用实验 (7)、A/D转换实验 (8)、D/A转换实验 (9)、存储器扩展实验 (10)、键盘与显示器实验 (11)、步进电机控制实验 (12)、计算机控制综合应用实验
27512 62256
TDN86/88系统的主要配置 • 表2-1
系统扩展选件 • 表2-2
扩展实验系统的安装 • 图2-3
系统总线 • 表3-1 • XD0-XD7:数据总线 • XA0-XA19:地址总线 • OPCLK:时钟信号线(1.193MHz) • PCLK:时钟信号线(2.386MHz) • ALE:地址锁存信号线 • IOY7:I/O接口待扩展信号线(片选信号) • IOY0:I/O接口待扩展信号线(片选信号) • XIOW:I/O写信号线 • XIOR:I/O读信号线 • XMER:存储器读信号线 • XMEW:存储器写信号线 • HOLD:总线请求信号线(DMA用) • HLDA:总线请求应答信号线(DMA用) • RESET:复位信号线 • MY4-MY7:存储器待扩展信号线(片选信号)
集成操作软件 • 运行/计算机硬件基础实验/目录下的MD86.EXE文件 • 图4-1:集成操作软件引导界面 • 图4-2:集成软件操作界面
MD86.EXE的常用命令 • F5(Load):从PC机(当前目录)中装入可执行文件,如A9-1.EXE • CS:IP=0000H:2000H • U2000 • U • G=2000
DEBUG调试命令 • A:进入小汇编 从CS:IP=0000H:2000H开始(表4-4) • B:断点设置 可以设置10个断点(表4-5) • D:显示一段地址单元中的数据 • E:编辑指定地址单元中的数据 • G:运行程序 • M:数据块搬移 • R:寄存器或片内RAM区显示与修改 • T:单步运行指定的程序 • U:反汇编
实验目的 • 掌握TDN86/88教学实验系统的基本操作
实验设备 • TDN86/88十六位微机教学实验系统 • PC微机
实验内容 1、系统认识实验 • 从3500H内存单元开始建立0~15共16个数据 • 程序:A1-1.ASM • 编辑、汇编、连接 -> A1-1.EXE • 将A1-1.EXE装入TDN86/88实验系统的内存 F5命令(CS:IP=0000H:2000H) • 运行程序: (1)、单步:T=0000:2000 (2)、连续:G=0000:2000 (3)、断点:设置断点(B命令)、断点方式的连续运行(GB) • 检查结果:D=0000:3500
STACK SEGMENT STACK DW 64 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE START: MOV DI,3500H ; 从3500H开始 MOV CX,0010H ; 16个数据 MOV AX,0000H SAHF ; 00H -> AH A1: MOV [DI],AL INC DI INC AX DAA LOOP A1 A2: JMP A2 CODE ENDS END START
实验内容(续) 2、系统操作练习 • 将内存3500H单元开始的0~15共16个数据传递到3600H单元开始的数据区中 • 程序:A1-2.ASM • 编辑、汇编、连接 -> A1-2.EXE • 将A1-2.EXE装入TDN86/88实验系统的内存 F5(CS:IP=0000H:2000H) • 送数据( 0~15 )到3500H开始的单元(E命令) • 运行程序: • 单步:T=0000:2000 • 连续:G=0000:2000 • 断点:设置断点(B命令)、断点方式的连续运行(GB) • 检查结果:D=0000:3600
STACK SEGMENT STACK DW 64 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE START: MOV SI,3500H MOV DI,3600H MOV CX,0008H ;每次传送2个字节数据 A1: MOV AX,[SI] MOV [DI],AX INC SI INC SI INC DI INC DI DEC CX JNZ A1 A2: JMP A2 CODE ENDS END START
实验目的 • 掌握TDN86/88教学实验系统的中断特性 • 掌握8259中断控制器的工作原理 • 掌握8259中断控制器的应用编程 • 掌握8259级联方式的使用方法 • 学习在接口实验单元上构造连接实验电路的方法
实验设备 • TDN86/88十六位微机教学实验系统 • PC微机
实验内容 1、实验系统中的8259A芯片 • 图9-4 • 实验系统初始化后,0号(IR0)、4号(IR4)中断源分别提供给实时时钟、与PC联机的串口通讯(中断矢量见下表)
实时 时钟
实验内容(续) 2、接口实验单元中的级联实验用8259A芯片 • 图9-5 3、接口实验单元中的R-S触发器 • 图9-6
微动开关 负脉冲输出 正脉冲输出
实验内容(续) 4、8259A实验之一:单片方式、单个中断源 • 图9-7 • 程序:A9-1.ASM(功能:每次响应外部中断----按下单脉冲按钮----,显示“7”,10次后程序停止) • 编辑、汇编、连接 -> A9-1.EXE • 将A9-1.EXE装入TDN86/88实验系统的内存 F5(CS:IP=0000H:2000H) • INT10H中断调用 (1)、AH=00、AL=01:清屏 (2)、AH=01、AL=数据的ASCII:写一个数据到显示器上 相当于2号功能 (3)、AH=06、DS:BX=字符串首地址(字符串尾用00H填充):显示一字符串 相当于9号功能
STACK SEGMENT STACK DW 64 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE START: PUSH DS MOV AX,0000H MOV DS,AX MOV AX,OFFSET IRQ7 ADD AX,2000H MOV SI,003CH MOV [SI],AX MOV AX,0000H MOV SI,003EH MOV [SI],AX CLI POP DS 送中断向量(0000H:IRQ7+2000H)到中断向量表中
IN AL,21H AND AL,7FH ; 01111111=7FH ,IR7 OUT 21H,AL ; 中断允许 MOV CX,000AH;10次结束 A1: CMP CX,0000H JNZ A2 IN AL,21H OR AL,80H ; 10000000=80H ,IR7 OUT 21H,AL ; 中断屏蔽 STI HLT A2: STI JMP A1
IRQ7: MOV AX,0137H ;中断服务子程序 INT 10H ;显示’7 ’ MOV AX,0120H INT 10H;显示空格 DEC CX MOV AL,20H OUT 20H,AL CLI IRET CODE ENDS END START
实验内容(续) 5、8259A实验之二:单片方式、两个中断源 • 图9-8 • 程序:A9-2.ASM(功能:主程序显示“MAIN”,按下单脉冲按钮KK1+和KK2+分别显示“6”和“7”,并且KK1+(IR6)可以终止KK2+(IR7),即高级别的中断请求可以终止低级别的中断请求) • 13H=00010011 -> ICW1(书上P214) • 08H -> ICW2 (IR0的中断号为8号) • 09H -> ICW4 (书上P217) • 3DH=00111101 -> OCW1 (奇地址21H) 3FH • 编辑、汇编、连接 -> A9-1.EXE • 将A9-1.EXE装入TDN86/88实验系统的内存 F5(CS:IP=0000H:2000H)