




已阅读5页,还剩20页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
兰州大学重点主干课程建设配套教材微型计算机原理、接口应用技术实验李柏年 汤书森 马义德 张在峰 编著兰州大学信息科学与工程学院2004年1月实验一 接口基础及总线信号检测一、实验目的1、 学习通过62芯总线、驱动器、译码器等在PC外扩展新的接口芯片。2、 学习编制对可编程接口实现控制的程序设计方法。二、试验设备硬件:PC兼容机微机实验仪示波器LED 4只74LS74或74LS175集成电路1片软件:操作系统MS-DOS或WINDOWS MASM.EXE LINK.EXE三、实验内容1、 编辑、汇编、链接、调试汇编程序。熟练掌握DEBUG调试程序的各条命令和使用。2、 联接74LS175 4D触发器作为简单接口,检测部分总线信号在指令运行时的状态,用LED显示。3、 DEBUG程序单步执行,软、硬件结合,观察、检测指令运行时总线中相应信号的状态。用示波器检测。四、编程提示1、 总线信号IOR、IOW、MEMR、MEMW、READY,接口芯片片选信号CS都随指令运行而产生,程序中必须有输入、输出、存储器寄存器传送、寄存器存储器传送指令。2、 本实验使用8253计数器/定时器,端口地址为200H、201H、202H、203H,对应COUNT0、COUNT1、COUNT2、控制端口。五、参考程序DATA SEGMENT TS1 DB 程序开始运行,请注意观察总线信号状态。, 0DH, 0AH, $ TS2 DB 程序运行结束。请检查实验记录。, 0DH, 0AH, $DATA ENDSCODE SEGMENT ASSUME CS:CODE, DS:DATASTART:MOV AX, DATA MOV DS, AX LEA DX, TS1 MOV AH, 9 INT 21H MOV DX, 203H MOV AL, 01010110B OUT DX, AL MOV DX, 201H MOV AL, 0FFH OUT DX, AL IN AL, DX MOV SI, 1226H MOV BX, SI MOV DI, BX LEA DX, TS2 MOV AH, 9 INT 21H MOV AH, 4CH INT 21HCODE ENDS END START六、实验步骤1、用编辑程序EDIT编辑源程序CEDIT文件名.ASM (文件名由用户自定)注意:编辑结束时一定要将建立的源程序存盘后再退出EDIT。2、用宏汇编程序MASM汇编源程序产生目标程序CMASM 文件名.ASM汇编完成后若不提示错误,顺序进行第3步操作,否则重复12步并记录分析错误原因。3、用链接程序LINKCLINK 文件名.OBJ(扩展名.OBJ可省略)4、用调试程序DEBUG调试程序CDEBUG 文件名.EXE 注意观察调试过程中的各种现象并记录5、 确联结硬件,经指导教师检查电路连接无误,接通实验仪电源开关,运行程序。使用DEBUG单步运行,观察、记录执行输入、输出、存储器寄存器传送、寄存器存储器传送指令时,总线信号IOR、IOW、MEMR、MEMW、READY,接口芯片片选信号CS的现象和状态。(建议画出波形图)6、运行调试好的可执行程序与用DEBUG单步调试执行指令时,总线信号IOR、IOW、MEMR、MEMW、READY,接口芯片片选信号CS的反映有何不同?请回答。实验二 8253计时器/定时器一、实验目的1 进一步学会通过62芯总线、驱动器、译码器等,在PC机外扩展新的接口芯片。2 掌握8253计数器的编程原理,用示波器或发光二极管LED观察不同模式下的波形或频率关系。二、试验设备硬件:PC兼容机微机实验仪示波器 LED3只软件:操作系统MS-DOS MASM.EXE LINK.EXE三、试验内容1. 用8253构成一个方波发生器和分频器,完成如图连接。1、把8253的CLKO与实验仪Q0Q3端输出的20KHZ2.5KHZ频率相连接。2、将OUT0与CLK1相连接,OUT1与CLK2相连接,OUT0、OUT1、OUT2分别连接LED阳极。3、GATE0、GATE1、GATE2接5V。4、片选CS插孔接200H207H。可选用D触发器和LED检测CS信号状态。接线方式见实验一。2.完成编程,将计数器0、1设为模式3(方波),计时器2设为模式2(分频),计数器0的输出脉冲作为计数器1的时钟输入,计数器1的输出脉冲作为计数器2的时钟输入。修改程序中的计数初值参数以改变方波宽度和分频信号周期,用LED观察计数器0、1和2的输出频率关系,并画出频率关系图波形。记数初值 =F入/ F 出= T入 / T出四、编程提示1、8253控制端口地址为 203H 计数器0地址为 200H 计数器1地址为 201H 计数器2地址为 202H2、8253的控制字如下:3、程序框图五、参考程序清单DATA SEGMENTTS DB 注意观察现象并记录输出波形关系,OAH,ODH,$DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXLEA DX,TSMOV AH,9INT 21H MOV DX,203H MOV AL,36H OUT DX,AL MOV DX,200H MOV AL,FFHOUT DX, ALOUT DX,AL MOV DX,203H MOV AL, 56H OUT DX, AL MOV DX, 201H MOV AL, 8 OUT DX, ALMOV DX,203HMOV AL,94HOUT DX,ALMOV DX,202HMOV AL,6OUT DX,AL MOV AH, 4CH INT 21HCODE ENDS END START六、试验步骤1、用编辑程序EDIT编辑源程序CEDIT文件名.ASM (文件名由用户自定)注意:编辑结束时一定要将建立的源程序存盘后再退出EDIT。2、用宏汇编程序MASM汇编源程序产生目标程序CMASM 文件名.ASM汇编完成后若不提示错误,顺序进行第3步操作,否则重复12步并记录分析错误原因。3、用链接程序LINKCLINK 文件名.OBJ(扩展名.OBJ可省略)4、用调试程序DEBUG调试程序CDEBUG 文件名.EXE 注意观察调试过程中的各种现象并记录5、经指导教师检查电路连接无误,接通实验仪电源开关,运行程序。使用DEBUG单步运行,观察、记录每个计数器写入工作方式控制字,写入记数初值后OUT端的现象和状态。计数器0 计数器1 计数器2工作方式 记数初值 输出F或T 工作方式 初值 输出F或T 工作方式 初值 输出F或T执行指令 OUT0 OUT1 OUT26、讨论及改进1、请改变源程序中工作方式控制字和记数初值并观察分析运行结果。2、LED观察与CRT观察有什么不同?为什么?3、试用一对红外发射、接收管和8253计数器设计生产线实物记数装置,采集的数据传送到CPU处理。4、提出对本实验的改进意见。实验三 8255并行接口(小键盘控制)实验一、 实验目的1、 学习在PC机系统中扩展I/O接口的方法。掌握8255并行接口编程原理,体会可编程接口的设计灵活性、方便性。2、 了解非编码键盘的结构特点,学习扫描读取键盘键值,与键名对应在CRT显示的编程方法及硬件结构。二、实验设备硬件:PC兼容机微机实验仪软件同实验一三、 实验内容1、用8255并行接口控制一个16键的小键盘(用行扫描法或反转法均可),按图连接线路:1、用导线将PA0PA7连接到插孔RL0RL7,控制键盘行数据。2、用导线将PB0、PB1连接到插孔Y0、Y1,控制键盘列数据。拔掉K10上的所有短路套。3、片选CS连接218H21FH。2、编写程序,当运行程序时,大键盘交出控制权,在小键盘按键后,微机屏幕显示读到的键名。当小键盘压下“F”后,返回DOS,大键盘恢复控制权。四、 编程提示1、 识别键盘上的闭合键,通常用行扫描法或反转法。行扫描法使键盘上某一行线为低电平,其余行为高电平。然后读取列值,若列值中有某列为低电平,则表明行、列交叉点处的键被压下,由列值+行值=键值,与存储在缓冲区的键值表比较判断后,再找出对应键名的字符显示在微机屏幕或返回DOS;否则扫描下一行,直到扫完全部行线为止。行反转法将行线接一并行口,工作在输出方式。列线接另一并行口,工作在输入方式。程序使CPU由输出口往各行线全部送出低电平,再读入列线的值。若此时有某一键被按下,则必定会使某一列线值为0。然后程序再对两个并行口进行方式设置,使行线工作在输入方式,列线工作于输出方式,并且将刚才读到的列线值从列线所接的并行口输出,再读取行线的输入值,那么,在闭合键所在的行线上由于有键压下,其行值肯定为0。因此,当一个键被按下时,必定可以读取一对唯一的键值(列值+行值)。2、 编程时各个键的键名可由用户定义,各个键对应的键值代码(列值+行值)由接口排列确定。行与列的交叉点数即是键的个数,键名与键值军存放在数据段的键表中,程序通过查表来确定具体按下的是那一个键。五、 参考程序清单(反转法)DATA SEGMENT TABLE DW 0101H,0102H,0104H,0108H,0110H,0120H,0140H,0180H DW 0201H,0202H,0204H,0208H,0210H,0220H,0240H,0280H CHAR DB 89ABCDEF01234567 TS DB 按下小键盘上任意键,在CRT上显示,按F 键 ,程序推出 ,0DH,0AH,$DATA ENDSCODE SEGMENT ASSUME CS:CODE, DS:DATAMAIN PROC FARSTART:MOV AX, DATA MOV DS, AX LEA DX, TS MOV AH, 9 INT 21H KY:CALL KEY CMP DL,F JNZ KY MOV AH,4CH INT 21H RETMAIN ENDPKEY PROC NEARINI: MOV DX, 21BH MOV AL, 82H OUT DX, ALWAIT1:MOV DX, 218H MOV AL, 0 OUT DX,AL MOV DX, 219H IN AL, DX MOV AH, AL AND AL, 03H CMP AL, 03H JZ WAIT1 MOV AL, AH MOV AH, 0 PUSH AX PUSH AX MOV CX, 1000HDLY: LOOP DLY MOV DX, 21BH MOV AL, 90H OUT DX, AL MOV DX, 219H POP AX MOV DX, 218H IN AL, DX POP BX MOV AH, BL NOT AL MOV SI, OFFSET TABLE MOV DI, OFFSET CHAR MOV CX, 16 SKIP: CMP AX, SI JZ DISP DEC CX JZ KST ADD SI, 2 INC DI JMP SKIPDISP:MOV DL, DI MOV AH,2 INT 21H PUSH DX MOV DX,21BH MOV AL, 82H OUT DX, ALWAIT2:MOV DX,218H MOV AL, 0 OUT DX, AL MOV DX, 219H IN AL, DX AND AL, 03H CMP AL, 03H JNZ WAIT2 POP DX RET KEY ENDPCODE ENDS END START六、 实验步骤1、 编辑、汇编、链接、调试源程序。2、 正确连接电路,经指导教师检查确认无误后方可接通电源。3、 运行程序,用LED分别测量PA0PA7,PB0PB1的状态。观察、记录实验现象。小键盘: 无键按下时 有键按下时PA0PA7 PB0PB1 键名 PA0PA7 PB0PB1大键盘:4、 讨论及改进1、用LED测量PA0PA7,有什么现象,为什么?2、用LED测量PB0、PB1有键压下与无键压下的状态有何区别?为什么?3、当小键盘有效时,大键盘可否使用?在大键盘按下16次以上,CRT有什么现象,请记录。4、用A口8位和B口2位可控制16位键。若选用8255 接口A组12位,B组12位共可控制多少位键?8255可否控制104标准键盘?5、注释源程序各模块。实验四 8259A中断控制器实验一、实验目的1、掌握8259A中断控制器工作原理,熟悉实验中涉及到8259A 中的中断屏蔽寄存器IMR和中断服务寄存器ISR等的用法。3、 掌握外部中断源的引入,学会中断处理程序的编写。二、实验设备硬件:PC兼容机微机实验仪软件同实验一三、 实验内容1、 使用正、负单脉冲作为外中断源,可随机产生中断请求(也可用8253计数器产生定时外部中断请求),中断请求通过PC/XT 62芯总线的IRQ2端输入到机内8259 ,由8259 向总线发出INTR信号,总线响应后,给出INTA响应信号。转入中断服务程序。2、 编写程序,要求每次主机响应外部中断IRQ2时,启动8255并行接口,由PC74采集输入推键开关组的4位信号,从PC30输出到4只LED显示。每次中断请求前选定推键开关组合,中断响应后,LED显示组合开关状态。中断十次后,程序退出。四、 编程提示1、 本实验使用PC机内的8259A芯片,主机启动时已将8259A中断控制寄存器前5位初始化为00001,因此,IRQ2的中断号为00001010B=0AH,IRQ5的中断号为00001101B=0DH。主机把IRQ2保留给用户使用,其它外中断由系统时钟、键盘等占用。所以,编程时避开系统已使用的中断请求号。只需将IMR寄存器中对应IRQ2的位清零(使ICW3=11111011B),解除IRQ2的中断屏蔽,允许IRQ2中断即可。2、 PC机内8259A初始化为普通结束方式,当外中断结束时,必须使用中断结束命令清除中断服务寄存器ISR中的对应位。(MOV AL,20H OUT 20H,AL OCW2=00100000B)。3、程序退出时,关闭IRQ2中断,把IMR中对应位置1(使ICW3=11111111B),将其屏蔽,禁止中断。3、 PC机系统内8259A端口地址:偶地址 20H,奇地址 21H。五、 参考程序清单DATA SEGMENT TS1 DB 组合推键开关设置编码,按下单脉冲键,观察LED显示,注意上升沿或下降沿触发,0DH,0AH,$ TS2 DB 并行接口8255 C口采集数据并显示,请观察、记录。,$DATA ENDSCODE SEGMENT ASSUME CS:CODE, DS:DATASTART:MOV AX,CS MOV DS,AX LEA DX,INTPROG MOV AH,25H MOV AL, 0AH INT 21H CLI MOV DX, 20H IN AL, DX AND AL, 11111011B OUT DX, AL MOV CX,10 MOV SI, 0041H STI MOV AX,DATA MOV DS,AX LEA DX, TS1 MOV AH, 9 INT 21HYY: NOP JMP YYINTPROG:PUSH DSMOV AX,DATA MOV DS,AXLES DX,TS2MOV AH, 9INT 21HMOV CX, 05HMOV DL, 20HMOV AH, 2XH0: INT 21HLOOP XH0MOV DX, SIMOV AH, 2INT 21HMOV DL, 0DHINT 21HMOV DL, 0AHINT 21HMOV DX,21BHMOV AL, 88HOUT DX, ALMOV DX,21AHIN AL, DXMOV CL, 4ROR AL, CLNOT ALOUT DX, ALMOV DX,20HMOV AL, 20HOUT DX, ALDEC BXJNZ CONTINUEMOV DX, 21HIN AL, DXOR AL, 04OUT DX, ALSTIMOV AH,4CHINT 21H CONTINUE:INC SIIRET CODE ENDSEND START 六、实验步骤1、编辑、汇编、链接、调试源程序。2、正确连接电路,经指导教师检查确认无误后方可接通电源。3、运行程序,CRT显示提示后,对组合推键选择编码,按下PLUS按钮,观察CRT的显示和LED显示的PC30的编码,分析INTR信号上升沿还是下降沿有效。观察、记录实验现象。如何检测?4、 注意观察8259A 中断控制器的中断请求寄存器IRR是否有寄存中断请求的功能?如何证实?实验五 存储器直接传送DMA一、实验目的1、 学习DMA工作原理及DMA控制器8237A5的使用方法。2、 掌握在PC 环境下通过编程实现DMA数据传送,了解DMA工作时序。二、实验设备硬件:PC兼容机微机实验仪软件同实验一三、实验内容1、 编写程序,将PC机内存60000H61FFFH的内容用DMA读方式送到实验仪的62256外扩存储器中,然后再用DMA写方式写回到7000071FFFH区域。2、 用74LS154集成4D触发器检测DREQ、DACK信号状态。3、 用DEBUG调试程序对内存60000H61FFFH区域填充数据,DMA操作后,读出70000H71FFFH区域的数据检查、核对,传送后的数据有无差错。四、实验说明1、 本实验利用PC机内DMA控制器,必须遵守PC机的某些约定条件:DMA控制器8237A在PC机系统内部,4个DMA通道中,通道0用于RAM 刷新(刷新请求信号由系统中8253计数器通道1产生,每隔15.13微秒产生一次),通道1保留给用户使用,通道2做软驱数据传送,通道3用于硬盘数据传送。8237A寻址范围00H0FH,通道1对应的页面地址为83H。PC机BIOS处始化时,控制寄存器设为00H,即DREQ高电平有效,DACK低电平有效,固定优先级,普通时序及不扩展写方式。四个通道都遵守此约定,建议不必再设定控制寄存器内容,避免系统设置紊乱。2、使用DMA,应注意:1、保证通道0的RAM刷新正常运行,否则会死机。对DMA的三种传输模式,PC机环境下只支持单字节传输方式,其它两种都因占用总线时间过长,使RAM得不到及时刷新而导致死机。系统设置固定优先级方式,也是为保证动态RAM刷新的优先。由于ROMBIOS已将通道0已用于动态RAM刷新,用户不得改动,所以,尽管通道0和1具有内存到内存的DMA传送功能,但PC机不支持内存到内存的DMA传送。2、软件请求方式是与块传输模式相对应的。为不影响RAM刷新,建议用直接传送方式。当传送多字节时,要用一段循环程序实现。2、 短路套JP0,JP1,JP2,JP3,JP4跳接到DMA侧(左侧),K11、K12拨到DMA侧,HALT键兼作DMA按键使用。3、 总线信号DREQ1、DACK1分别联接到D触发器的S端和R端,Q端联接LED。五、 程序清单DATA SEGMENT TS1 DB 按下DMA(HALT)键,请求将内存源数据区中32KB数据直接传送到外扩存储器62256(当作外设)中,观察LED显示的DREQ1、DACK1信号。,0DH,0AH,$TS2 DB 按下DMA(HALT)键,请求将外扩存储器62256(当作外设)中32KB数据直接传送到内存目标区中,观察LED显示的DREQ1、DACK1信号。,0DH,0AH,$TS3 DB DMA直接传送完成,请进入DEBUG用D命令检查内存目标区中的32KB数据正确否。,0DH,0AH,$DATA ENDSSTACK SEGMENTSTA DW 50 DUP (?)TOP EQU LENGTH STASTACK ENDSCODE SEGMENT ASSUME CS;CODE, DS:DATA, SS:STACK, ES:DATASTART:MOV AX, DATA MOV DS, AX MOV AX, STACK MOV SS, AX MOV SP, TOP MOV AL, 5 OUT 0AH, AL ;设置通道1屏蔽字 OUT 0CH, AL ;清除先后触发器 MOV AL, 01001001B OUT 0BH, AL ;设方式字为单字节读传输 MOV BX, 0000H MOV AL, BL OUT 02H, ALMOV AL, BHOUT 02H, ALMOV AL, 06HOUT 83H, AL ;起始地址为6000H:0MOV AL, 0FFHOUT 03H, ALMOV AL, 07FHOUT 03H, AL ;传送字节数为7FFFH(32KB)MOV AL, 01HOUT 0AH, ALLEA DX, TS1MOV AH, 9INT 21HPUSH AXPOP AX WAIT0: IN AL, 08HAND AL, 02HJZ WAIT0MOV AL, 05HOUT 0AH, AL ;设置通道1屏蔽字OUT 0CH, AL ;清除先后触发器MOV AL, 01000101BOUT 0BH, AL ;设置方式字为单字节写传输MOV AL, BLOUT 02H, ALOUT 02H, ALMOV AL, 07HOUT 83H, AL ;目的地址为内存7000H:0MOV AL, 0FFHOUT 03H, ALMOV AL, 7FHOUT 03H, AL ;传送字节为7FFFH(32KB)MOV AL, 01OUT 0AH, AL ;除去通道1的屏蔽LEA DX, TS2MOV AH, 9INT 21HPUSH AXPOP AX WAIT1: IN AL, 08HAND AL, 02HJZ WAIT1LEA DX,TS3MOV AH,9 INT 21HMOV AH, 4CHINT 21HCODE ENDS END START六、实验步骤1、编辑、汇编、链接、调试源程序。2、正确连接电路,经指导教师检查确认无误后方可接通电源。3、进入DEBUG,运行D命令检查6000H:00006000H:7FFFH范围的数据,用F命令对该范围填充数据。再用D命令检查该范围是否填充到数据。4、 运行程序,按照程序提示,按下HALT键请求DMA传送,观察DREQ1、DACK1、MEMR、IOW信号的状态。实现内存中数据传送到外部扩充存储器62256中。5、 按照程序提示,再次按下HALT键请求DMA传送,观察DREQ1、DACK1、MEMW、IOR信号的状态。实现外部扩充存储器62256中数据传送到内存中。6、进入DEBUG,运行D命令检查7000H:00007000H:7FFFH范围的数据,与源数据区的数据比较,有无差错,若有差错,请分析原因。实验六 8251可编程串行接口通信实验一、实验目的1、掌握8251芯片结构、工作原理、和初始化编程。2、了解实现串行通信的硬件环境、数据格式的协议,数据交换的协议。3、学习PC机通信的编程方法。二、试验设备硬件:PC兼容机微机实验仪LED4只74LS74或74LS175集成电路1片软件:操作系统MS-DOS MASM.EXE LINK.EXE三、实验内容1、 编辑、汇编、链接、调试汇编程序。通过对8251初始化设定串行传送字符帧格式,波特率因子等数据格式、数据交换协议。2、 使用查询法编程,从键盘输入数据,8251自发自收,观测8251串行传送并将传送数据在CRT显示。四、编程提示1、 8251控制口22AH,数据口228H。初始化时必须先写入方式控制字,然后跟数个工作控制字。一般先写入3个00H,再写入1个40H工作控制字使内部复位有效,就可重新写入方式控制字4EH,再写入工作控制字37H。完成初始化。2、 采用查询法,8251自发自收。键盘键入字符,字符的ASCII码先发送输出,然后接收输入,存储在缓冲区中同时在CRT显示。传送完成后,缓冲区中的数据再显示一次。五、参考程序DATA SEGMENT SBUF DB 32 DUP(?)TS1 DB 请连续键入10个字符。, 0DH, 0AH,$TS2 DB 8251串行输出发送。,0DH, 0AH,$TS3 DB 8251串行输入接收。 0DH, 0AH,$TS4 DB 连续显示传送数据。 0DH, 0AH,$TS5 DB 8251串行传送成功。 0DH, 0AH,$DBUF DB 32 DUP(?)DATA ENDSSTACK SEGMENT PARA STACK STACK DB 500 DUP (?) TOP DW ?STACK ENDSCODE SEGMENT ASSUME CS:CODE ,DS:DATA, SS:STACKMAIN PROC FARSTART: PUSH DS MOV AX, 0 PUSH AX MOV AX, DATA MOV DX, AX LEA DX, TS1 MOV AH, 9 INT 21H LEA SI, SBUF MOV CX, 10SR: MOV AH, 1 INT 21HMOV SI, ALINC SILOOP SRCALL INIT51LEA SI, SBUFLEA DI,DBUFMOV CX, 10M0: MOV DX, 22AHM1: IN AL, DX TEST AL, 01H ;TXRDY=1? JZ M1MOV DX, 228HMOV AL, SIOUT DX, ALINC SILEA DX, TS2MOV AH, 9INT 21HMOV DX, 22AH M2: IN AL, DX TEST AL, 01H ;RXRDY=1? JZ M2 MOV DX, 228HIN AL, DXMOV DI, ALINC DIMOV DL , ALMOV AH, 02HINT 21HCALL KGLEA DX, TS3MOV AH, 9INT 21HLOOP M0LEA DX, TS4MOV AH, 9INT 21HLEA DI, DBUFMOV CX, 10M3: MOV DL, DI MOV AH, 2 INT 21H INC DI LOOP M3 LEA DX, TS5 MOV AH, 9 INT 21HMOV AH, 4CHINT 21HMAIN ENDPINIT51 PROC NEAR MOV CX, 3 M4: MOV DX, 22AH MOV AL, 0 OUT DX, AL LOOP M4 MOV DX, 22AH MOV AL, 40H OUT DX, AL MOV AL, 4EH OUT DX, AL MOV AL, 37H OUT DX, AL RET INIT51 ENDP KG PROC NEAR MOV DL, 20H MOV AH, 2 INT 21H INT 21H RET KG ENDPCODE ENDS END START六、 实验步骤1、编辑、汇编、链接、调试源程序。2、正确连接电路,经指导教师检查确认无误后方可接通电源。3、进入DEBUG,单步跟踪程序,观察运行过程数据端口输出发送和输入接收的数据是否相同,查看运行过程中的状态字内容。实验七 A/D转换实验一、实验目的1、掌握A/D转换器与总线和外设(传感器)的接口方法。2、了解A/D转换器ADC0809转换性能及编程(中断方法)。3、将传感器联接ADC0809的模拟输入端,通过实验,了解计算机如何实现数据采集。二、试验设备硬件:PC兼容机微机实验仪温度、光敏、太阳电池等传感器74LS74或74LS175集成电路1片软件:操作系统MS-DOS MASM.EXE LINK.EXE三、实验内容1、编辑、汇编、链接、调试汇编程序。熟练掌握中断法程序的编程。2、联接传感器与ADC0809模拟输入端,运行程序,用A/D转换实现数据采集。3、 用万用表检测传感器模拟信号值,观测转换数据值,画出A/D转换曲线,确定实测分辨率与理论分辨率的误差。分析相对误差值。4、 转换结束信号EOC联接LED,检测EOC信号的状态。四、编程提示1、 ADC0809芯片的模拟输入信号由可调电位器提供或采用传感器动态提供,电位器两端分别接电源、接地,中心抽头接IN07。端口地址220H,采用中断法时EOC连接IRQ2中断请求端,实验箱的JP04选择连接器,右跳到RAM位置,选择开关K11、K12、右跳到RAM位置。2、 ADC0809芯片的转换时间100S ,由于配套PC机频率较快,为保证正常实现转换,注意启动ADC0809转换后,增加延时模块。五、参考程序DATA SEGMENT TS1 DB A/D转换开始,注意观察、记录。,0DH,0AH, $ TS2 DB 转换结束,计算分辨率,画出转换关系图,分析误差。,0DH,0AH, $ BUF DW 300 DUP(?)DATA ENDSSTACK SEGMENT STA DW 20 DUP(?) TOP EQU LENGTH STASTACK ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACKSTART:MOV AX,DATA MOV DS,AX MOV AX,STACK MOV SS,AX MOV SP,TOP LEA DX,TS1 MOV AH, 9INT 21HMOV CX, 300CONV: MOV DX, 220H MOV AL, 0 OUT DX, AL CALL ADINT MOV AX, SI LEA DI, BUF MOV DI, AL AND AL, 0F0H PUSH CX MOV CL, 4 SHR AL, CL POP CX ADD AL, 30H CMP AL, 39H JBE DISOL ADD AL, 07HDISPL:MOV DL, AL MOV AH, 2 INT 21H MOV AL, DI INC DI AND AL, 0FH ADD AL, 30H CMP AL, 39HJBE DISPHADD AL, 07HDISPH:MOV DL, ALMOV AH, 2INT 21HMOV DL, 20HMOV AH, 2INT 21HINT 21HLOOP CONVLEA DX, TS2MOV AH, 9INT 21HADINT PROC NEAR PUSH AX PUSH BX PUSH CX MOV CX, 0FFFFHDELAY:MOV BX, 2FHDELAY1:DEC BX CMP BX, 0 JNZ DELAY1 LOOP DELAY MOV DX, 220H IN AL, DX MOV SI, AX POP CX POP BX POP AX RETADINT ENDPCODE ENDS END START六、实验步骤1、编辑、汇编、链接、调试源程序。2、正确连接电路,经指导教师检查确认无误后方可接通电源。3、 用万用表测量电位器中心抽头提供的模拟输入IN07电压,从0V起,每0.5V运行一次程序,观察显示器的输出数据并记录。4、 采集传感器输出的模拟信号,运行程序A/D转换,观察记录外界条件变化引起传感器模拟量变化,A/D转换、采集到PC机后,数据的变化。5、 整理数据,在A/D转换关系图上描点,计算、分析误差。实验八 D/A转换实验一、实验目的1、 熟悉D/A转换的基本原理,掌握DAC0832的使用方法及对应的硬件电路。2、 了解双缓冲D/A转换的工作原理。二、试验设备硬件:PC兼容机微机实验仪示波器一台软件:操作系统MS-DOS MASM.EXE LINK.EXE三、实验内容1、编辑、汇编、链接、调试汇编程序。熟练掌握DAC0832双缓冲接口方式的编程。2、编制程序,用键盘输入控制由程序提供的数据D产生锯齿波、三角波、方波、正弦波模拟输出信号A,用示波器检测模拟输出波形。四、编程提示1、 ADC0832的片选CS联接228H22FH,模拟输出端AOUT联接示波器输入信号线。2、 0832工作在双缓冲接口方式下。当A0=0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 书画艺术品交易与委托销售合同范本
- 画室员工考核管理办法
- 2025-2030中国非遗文化数字化传播效果评估与商业化开发边界界定
- 2025-2030中国钢结构施工安全风险与质量控制研究
- 2025-2030中国超高清电视(UHD TV)行业市场发展趋势与前景展望战略研究报告
- 租房合同简版3篇
- 无公害蔬菜订购合同书3篇
- 2026届黑龙江省大庆市第六十一中学物理八年级第一学期期末达标检测试题含解析
- 吉林省长春市157中学2026届物理八上期末质量检测模拟试题含解析
- 湖北省宜昌市宜昌中学2026届物理八年级第一学期期末检测模拟试题含解析
- 成人2型糖尿病口服降糖药联合治疗专家共识解读 2
- 2025-2026学年统编版小学语文五年级上册教学计划及进度表
- 解读《医务人员职业道德准则(2025年版)》(含准则全文)
- 2025年总工会招聘考试工会知识模拟试卷及答案
- 2025年基层卫生人才能力提升培训(乡村医生理论培训考试题及答案)
- 统编版新版三年级上册道德与法治教学计划及进度表
- 2026年高考第一轮复习数学第01讲 导数的概念及其意义、导数的运算(复习课件)
- 涪陵殡葬管理办法
- 2025年工会财务知识竞赛考试题库及参考答案
- 《火力发电企业电力监控系统商用密码应用技术要求》
- 中国刑事警察学院2024研究生考试真题(附答案)
评论
0/150
提交评论