实用标准文档微机原理综合实验报告目录一.8255并行口实验二.8259中断实验(一)三.8253定时/计数器实验四.A/D转换实验五.步进电机实验六.综合实验:十字路口交通灯实验七.实验体会四.8255并行口实验1.实验目的:(1)学习利用并行接口芯片8255构成并行接口电路的基本方法(2)熟悉掌握并行接口芯片8255的基本性能及在时间应用中的硬件连接、初始化编程方法2.实验内容:编写程序,使8255的PB口为输出口,PA口为输入口,从PA口将K0~K7作为一个字节读入,在从PB口输出这一反码字节。3.实验程序:CODESEGMENTASSUMECS:CODESTART:MOVDX,21BH;8255初始化命令字MOVAL,90HOUTDX,ALBG:MOVDX,218H;从PA口读入数据INAL,DXXORAL,FFH;求反MOVDX,219HOUTDX,AL;从PB口输出JMPBGCODEENDSENDSTART4.实验框图5.实验电路图6.实验方法说明通过8255控制字设定PA口为输入口,PB口为数据输出口,读取PA口的数值并通过求反指令将数据取反后,经由PB口输出。8259中断实验(一)1.实验目的:(1)了解PC机的中断结构及8259中断控制器的初始化(2)熟悉8259中断控制器的工作原理和硬件连线方法(3)了解8259的应用和硬件编程方法了解8259中断屏蔽2.实验内容:编写中断实验程序,主程序使8255的PB口为输出口,输出0FFH,L0~L7指示灯全亮,中断服务程序从PB口输出0FFH,L0~L3亮,L4~L7灭,并延时一段时间后返回主程序。3.实验程序INT0EQU220hINT1EQU221hP8255B EQU 219HP8255K EQU 21BHSTACKSEGMENTSTADB50DUP(?)TOP EQU LENGTHSTASTACKENDSCODESEGMENTASSUMECS:CODE,SS:STACKSTART:CLIMOVAX,TOPMOVSP,AXPUSHDSMOVAX,0000H;定义IRQ0中断MOVDS,AXMOVAX,OFFSETIRQ0ADDAX,0000HMOVSI,20HMOV[SI],AXMOVAX,CSMOVSI,22HMOV[SI],AXPOPDSMOVAL,13H;对8259进行初始化ICW1MOVDX,INT0OUTDX,ALMOVAL,8;对8259进行初始化ICW2MOVDX,INT1OUTDX,ALMOVCX,0FFFFHLOOP$MOVAL,9;对8259进行初始化ICW4MOVDX,INT1OUTDX,ALMOVCX,0FFFFHLOOP$MOVDX,INT1MOVAL,0FEH;对8259进行初始化OCW1OUTDX,ALMOVCX,0FFFFHLOOP$MOVDX,INT0;对8259进行初始化OCW2,普通EOI返回MOVAL,20HOUTDX,ALMOVCX,0FFFFHLOOP$STIMOVDX,P8255K;对8255进行初始化MOVAL,90HOUTDX,ALDSP:MOVAL,0FFHMOVDX,P8255BOUTDX,ALJMPDSPIRQ0:STIMOVCX,0FFFFHLOOP$MOVAL,0FHMOVDX,P8255BOUTDX,ALMOVDX,INT0MOVAL,20HOUTDX,ALMOVCX,0FFFFHLOOP$MOVCX,0FFFFHLOOP$IRETCODEENDSENDSTART4.实验框图5.实验电路图6.实验方法说明主程序使8255输出高电平,实现L0~L7指示灯全亮。设置中断IRQ0,实现L0~L3亮,L4~L7灭,并延时一段时间后返回主程序。将中断向量的入口地址写入后,通过对8259初始化命令字的写入,实现中断的调用。六.8259中断实验(二)1.实验目的(1)了解PC机的中断结构及8259中断控制器的初始化(2)熟悉8259中断控制器的工作原理和硬件连线方法(3)了解8259的应用和硬件编程方法(4)了解8259中断屏蔽,以及优先级的判别等特性2.实验内容:编写中断实验程序,主程序使8255的PB口为输出口,输出0FFH,L0~L7指示灯全亮,IR0中断服务程序从PB口输出0FH,L0~L3灯亮,L4~L7灯灭,