预览加载中,请您耐心等待几秒...
1/5
2/5
3/5
4/5
5/5

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

南京航空航天大学电工电子实验中心实验报告课程名称:计算机硬件技术基础实验名称:8254定时/计数器姓名:学号:评定成绩:审阅教师:实验时间:2017.06.06南京航空航天大学实验目的要求1)掌握8254定时/计数器的名种工作方式及编程方法。实验任务按照图3-2-1的要求连线,分别对8254芯片的3个定时/计数器编程,并选择合适的工作方式和初值,以达到如下的效果:1)定时/计数器0,计数脉冲频率为18.432KHz,OUT0分两路输出,一路外接2位LED,使其以亮0.5秒灭0.5秒循环闪亮,另一路作为计数器1的计数脉冲CLK1。2)定时/计数器1,OUT1的输出外接2位LED,使其以亮3秒灭1秒循环闪亮。3)定时/计数器2的计数脉冲来自单次脉冲单元,按压开关产生的脉冲作为计数器2的计数脉冲。OUT2外接2位LED,当按压开关到17次时LED长亮,并将按压开关的剩余次数将在屏幕上显示。实验电路图图3-2-18254定时/计数器电原理图实验代码IOY0EQU3000HTIMER0EQUIOY0+00H*4;8254计数器0端口地址TIMER1EQUIOY0+01H*4;8254计数器1端口地址TIMER2EQUIOY0+02H*4;8254计数器2端口地址TCTLEQUIOY0+03H*4;8254控制寄存器端口地址STACK1SEGMENTSTACKDW256DUP(?)STACK1ENDSDATASEGMENTMES0DB‘Pressed:$’MES1DB‘Pressanykeytoexit!’,0DH,0AH,’$’NUMDB?DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVDX,OFFSETMES1MOVAH,9INT21HMOVDX,TCTLMOVAL,00110110B;计数器0初始化,方式3OUTDX,ALMOVDX,TIMER0MOVAL,00HOUTDX,AL;计数器0初值=4800HMOVAL,48HOUTDX,ALMOVDX,TCTLMOVAL,01010101B;计数器1初始化,方式2OUTDX,ALMOVDX,TIMER1MOVAL,04H;计数器1初值=04HOUTDX,ALMOVDX,TCTLMOVAL,10010001B;计数器2初始化,方式0OUTDX,ALMOVDX,TIMER2MOVAL,0FH;计数器0初值=0FHOUTDX,ALL1:MOVDX,TIMER2INAL,DX;读入计数器2值保存MOVNUM,ALCALLDISPMOVAL,NUM;当按压开关17次时退出CMPAL,0JZQUITMOVDL,0FFHMOVAH,6;判主键盘有无键按下INT21HJZL1;有键按下跳转QUIT:MOVAX,4C00H;结束程序退出INT21HDISPPROC;显示子程序MOVDX,OFFSETMES0MOVAH,9;显示MES0INT21HMOVAL,NUMCMPAL,9;判断是否<=9JLEL2;若是则为'0'-'9',ASCII码加30HADDAL,7;否则为'A'-'F',ASCII码加37HL2:ADDAL,30HMOVDL,ALMOVAH,2;在显示器上显示按压开关的次数INT21HMOVDL,0DHINT21HRETDISPENDPCODEENDSENDSTART实验的运行数据及分析实验达到了以下效果:1)定时/计数器0,计数脉冲频率为18.432KHz,OUT0分两路输出,一路外接2位LED,使其以亮0.5秒灭0.5秒循环闪亮,另一路作为计数器1的计数脉冲CLK1。2)定时/计数器1,OUT1的输出外接2位LED,使其以亮3秒灭1秒循环闪亮。3)定时/计数器2的计数脉冲来自单次脉冲单元,按压开关产生的脉冲作为计数器2的计数脉冲。OUT2外接2位LED,当按压开关到17次时LED长亮,并将按压开关的剩余次数将在屏幕上显示。实验讨论及心得体会通过实验,对8254的工作原理和编程方法都了一定程度的理解,其中,8254的六种工作方式分析起来比较困难,需要认真理解记忆。