安徽工业大学微机原理与接口技术实验报告下.doc
《安徽工业大学微机原理与接口技术实验报告下.doc》由会员分享,可在线阅读,更多相关《安徽工业大学微机原理与接口技术实验报告下.doc(13页珍藏版)》请在课桌文档上搜索。
1、-微机原理与接口技术实验报告下实验三 8253、8255、8259综合实验18253计数器实验要求:计数器1方式0计数,计满3个数产生中断,中断5次后完毕。实验线路见图6-6:图6-6 8253计数器实验电路图实验程序:INTPORT1 EQU 0FF80H ;8259A的偶地址入口INTPORT2 EQU 0FF81H ;8259A的偶地址入口INTQ3 EQU INTREEUP3;INTREEUP3地址TCONTR0 EQU 0043H ;8253端口地址TCON1 EQU 0041H ;8253端口地址PA EQU 0FF20H ;字位口PB EQU 0FF21H ;字形口PC EQU
2、0FF22H ;键入口code segment assume cs:code ORG 12D0H ;源地址START: JMP START0 ;跳转到START0BUF DB ?,?,?,?,?,? ;六字节缓冲区intt db ? ;一字节的缓冲区data1 db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0c6h db 0a1h,86h,8eh,0ffh,0ch,89h,0deh,0c7h,8ch,0f3h,0bfh,8FH;七段码定义START0:CLD;置方向位 CALL BUF1 ;调用子程序BUF1CALL WRINT
3、VER ;WRITE INTRRUPTMOV AL,13H ;写ICW1,边沿触发,单片,需要ICW4MOV D*,INTPORT1OUT D*,ALMOV AL,08H;ICW2,中断类型号高5位MOV D*,INTPORT2OUT D*,ALMOV AL,09H;写ICW4,BUF位在缓冲方式下工作,8086/8088系统OUT D*,ALMOV AL,0F7HOUT D*,ALMOV intt,01H;TIME=1MOV D*,TCONTR0;指向控制口MOV AL,51H ;8253控制字,通道1,方式0,只读/写低字节,BCD码计数OUT D*,AL;送控制字MOV D*,TCON1
4、;指向控制口MOV AL,03;计数值低字节OUT D*,AL;送控制字MOV D*,0FF23H;指向8255A控制口MOV AL,80;A口方式0,输出,C口上半部输出,B口方式,输出,C口下半部输出OUT D*,AL;送控制字STI; 开中断WATING: CALL DISP ;DISP 825359JMP WATINGWRINTVER:MOV A*,0H MOV ES,A* MOV DI,002CH;目的地址 LEA A*,INTQ3;INTQ3的偏移地址 STOSW;存字 MOV A*,0000h;清零 STOSW RET;中断返回INTREEUP3: push a*;入栈 push
5、 b* push c* push d* MOV D*,TCON1;指向控制口MOV AL,03;计数值低字节OUT D*,ALMOV AL,INTT CALL CONVERS MOV B*,OFFSET BUF MOV AL,10H MOV C*,05H;置循环数INTRE0: MOV B*,AL;将Al中的值存在B*中 INC B*;B*加1 LOOP INTRE0;循环 ADD INTT,01H;循环数是五次 CMP INTT,06H JNA INTRE2 CALL BUF2 ;DISP:goodINTRE1: CALL DISP JMP INTRE1CONVERS: AND AL,0FH
6、;显示次数 MOV B*,offset buf MOV B*+5,AL RETINTRE2: MOV AL,20H MOV D*,INTPORT1 OUT D*,AL pop d* pop c* pop b*pop a* IRET;软中断返回DISP: MOV AL,0FFH ;00HMOV D*,PA;清零OUT D*,ALMOV CL,0DFH ;20H MOV B*,OFFSET BUFDIS1: MOV D*,PC OUT D*,AL MOV AL,B* MOV AH,00HPUSH B*MOV B*,OFFSET DATA1 ADD B*,A* MOV AL,B*POP B*MOV
7、D*,PBOUT D*,ALMOV AL,CLMOV D*,PAOUT D*,ALPUSH C*DIS2:MOV C*,00A0H LOOP $ POP C*CMP CL,0FEH ;01HJZ L*1INC B*ROR CL,1 ;SHR CL,1JMP DIS1L*1: MOV AL,0FFHMOV D*,PBOUT D*,ALRETBUF1: MOV BUF,08H MOV BUF+1,02H MOV BUF+2,05HMOV BUF+3,03H MOV BUF+4,05H MOV BUF+5,09H RETBUF2: MOV BUF,09H MOV BUF+1,00H MOV BUF+
8、2,00H MOV BUF+3,0dH MOV BUF+4,10H MOV BUF+5,10H RETCODE ENDSEND START思考:如果计数器0方式0计数,计满5个数产生中断,中断3次后完毕。硬件软件如何修改?硬件修改:将连接在CLK1,GATE1,OUT1的连线改接到CLK0,GATE0,OUT0上。程序修改:将程序对应局部做如下修改1、TCON1 EQU 0041H改为TCON1 EQU 0040H 2、将8253控制字由MOV AL,51H改为 MOV AL,11H 3、计数值低字节将MOV AL,02改为MOV AL,04 4、将CMP INTT,06H改为CMP INTT
9、,04H;2、8253定时器实验要求:用8253定时器1通道定时,每隔1秒使PA口的指示灯的状态右移一位。主程序反复游走显示8253A。8253定时器实验线路见图6-7:图6-7 8253计数器实验电路图实验程序:CODE SEGMENT ;ASSUME CS:CODEINTPORT1 EQU0FF80H;8259A的偶地址入口INTPORT2 EQU0FF81H;8259A的奇地址入口INTQ3 EQUINTREEUP3TCONTR0 EQU 0043H;8253端口地址TCON1 EQU0041H;8253端口地址IOCONPT EQU0FF2BH;8255A的端口地址IOBPT EQU0
10、FF29H;8255A的端口地址IOAPT EQU 0FF28H;8255A的端口地址PA EQU 0FF20H ;字位口PB EQU 0FF21H ;字形口PC EQU 0FF22H ;键入口 ORG 12D0H;源地址START: JMP START0BUF DB ?,?,?,?,?,?;6字节缓冲区intt db ? ;1字节缓冲区WEIKONG DB ? ;1字节缓冲区data1 db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0c6h db 0a1h,86h,8eh,0ffh,0ch,89h,0deh,0c7h,8ch,
11、0f3h,0bfh,8FHSTART0:CLD;置方向位 CALL BUF1CALL WRINTVER ;WRITE INTRRUPTMOV AL,13H;写ICW1,边沿触发,单片,需要ICW4MOV D*,INTPORT1OUT D*,ALMOV AL,08H;ICW2,中断类型号高5位MOV D*,INTPORT2OUT D*,ALMOV AL,09H;写ICW4,BUF位在缓冲方式下工作,8086/8088系统OUT D*,ALMOV AL,0F7HOUT D*,ALMOV intt,50 ;软件计数501秒=20ms*50MOV D*,TCONTR0MOV AL,74H;通道1,先读
12、/写低字节,再读/写高字节,方式2,二进制数OUT D*,ALMOV D*,TCON1 ;计数器1定时20msMOV A*,40000OUT D*,AL MOV AL,AH;读入计数值的高字节 OUT D*,ALMOV D*,0FF2BHMOV AL,82H;A口方式0,输出,C口上半部输出,B口方式,输入,C口下半部输出OUT D*,AL MOV WEIKONG, 0FEH ;初始PA0对应位亮 MOV AL, WEIKONG MOV D*, 0FF29H OUT D*,ALSTI ;开中断WATING: CALL DISP ;DISP 8253-AJMP WATINGWRINTVER:MO
13、V A*,0H MOV ES,A* MOV DI,002CH;目的地址 LEA A*,INTQ3;INTQ3的偏移地址 STOSW MOV A*,0000h STOSW RETINTREEUP3: DEC INTT;INTT减1 JNZ INTRE2 MOV INTT, 50 ROL WEIKONG, 1 MOV D*, IOAPT MOV AL, WEIKONG OUT D*,ALINTRE2: MOV AL,20H MOV D*,INTPORT1 OUT D*,AL IRET;软中断返回DISP: MOV AL,0FFH ;00HMOV D*,PAOUT D*,ALMOV CL,0DFH
14、;20H MOV B*,OFFSET BUFDIS1: MOV D*,PC OUT D*,AL MOV AL,B* MOV AH,00HPUSH B*MOV B*,OFFSET DATA1 ADD B*,A* MOV AL,B*POP B*MOV D*,PBOUT D*,ALMOV AL,CLMOV D*,PAOUT D*,ALPUSH C*DIS2:MOV C*,0000H LOOP $ POP C*CMP CL,0FEH ;01HJZ L*1;相等转L*1INC B*ROR CL,1 ;循环右移一位,指示灯又移变亮JMP DIS1L*1: MOV AL,0FFH;指示灯全灭MOV D*,P
15、BOUT D*,ALRETBUF1: MOV BUF,08H MOV BUF+1,02H MOV BUF+2,05H MOV BUF+3,03H MOV BUF+4,17H MOV BUF+5,0AH RETCODE ENDS END START思考:硬件修改:将连接在CLK1,GATE1,OUT1的连线改接到CLK0,GATE0,OUT0上。接在PB口的线与接在PA口的线互换。软件修改:按照下面对相应局部修改1、TCON1 EQU 0041H改为TCON1 EQU 0040H2、将MOV AL,74H改为MOV AL,34H;3、将MOV AL,82H改为MOV AL,90H4、将MOV W
16、EIKONG, 0FEH 改为MOV WEIKONG, 07FH5、将MOV INTT, 50改为MOV INTT, 1006、将MOV AL, WEIKONG改为MOV AL, WEIKONG 7、将ROL WEIKONG, 1改为ROR WEIKONG, 18、将ROR CL,1 改为ROL CL,19、将MOV BUF+5,0AH改为MOV BUF+5,0BH五、本次实验总结实验过程中把学过的计算机编译原理以及操作系统的知识强化,能够把课堂上学的知识通过自己设计的程序表示出来,加深了对理论知识的理解。实验五 A/D转换实验一、实验目的了解模/数转换根本原理,掌握ADC0809的使用方法;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 安徽 工业大学 微机 原理 接口 技术 实验 报告

链接地址:https://www.desk33.com/p-9986.html