资源描述:
《设计一个电子秒表计时器》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、计算机硬件技术基础课程设计任务书河北工业大学计算机硬件技术基础(MCS-51单片机原理及应用)课程设计报告学院材料学院设计人模具C072徐瑞雪075211成绩____模具C072赵帆075214能环C074刘胜男075206一.题目:设计一个电子秒表计时器二.总体设计1.所能实现的功能:1)计时,计时数值最大为99分59秒99;2)停止或继续;清零。2.总体设计方案:用LED数码管显示计时的时间,显示的时间应有百分之一秒位、十分之一秒位、秒个位、秒十位、分个位、分十位;利用单片机的外中断,某键为低时产生中断开始计时,再一次为低时产生中断停止计时;另一键为低时
2、产生中断使时间清0。三.硬件系统设计1.所需设备:DICE-5013S实验系统一个,并行接口8155一个,PC微机(P4)一台。2.接线设计:1)将P1.2接到按钮一开关上,作为STOP中断;2)外部中断0的引脚INT0接到另一按钮开关,作为CLEAR中断。四.软件系统设计1.软件功能模块设计及流程图先利用计时中断产生百分之一秒基时,将百分之一秒位、十分之一秒位、秒个位、秒十位、分个位、分十位分别存于片内RAM地址79H,7AH,7BH,7CH,7DH,7EH中,再由主程序显示程序将其显示在LED显示器上;开始/继续通过STOP中断对P1.2进行取反,然后在
3、计时中断中对输入口P1.2的位进行判断来实现;清零通过在清零中断中设置各位初值来实现。开始设置系统初值显示有清零中断?有计时中断?有停止中断?处理计时中断中毒中断中断处理停止中断处理清零中断主流程图:YNYNYN6计算机硬件技术基础课程设计任务书计时中断程序流程图:设置计时初值P1.2为1百分之一秒加一存位1/100秒为100?秒加一分加一存位存位秒为60?分为100?各位重新清零中断返回NYNYNY6计算机硬件技术基础课程设计任务书2.电路图五.程序清单和注释ORG0000HAJMPMAINORG0003HAJMPCLEAR;清零中断ORG000BHAJM
4、PT0V;计时中断ORG0013HAJMPSTOP;停止中断MAIN:MOVTMOD,#01H;T/C0工作方式为方式1MOVIE,#87HMOVTL0,#78H;置T/C0初值(216-10000/2=EC78H)MOVTH0,#0ECHSETBTR0;开启各个中断SETBIT0SETBIT1MOVR2,#00H;1/100秒置初值MOVR3,#00H;秒置初值MOVR4,#00H;分置初值MOV79H,#00H;1/100秒位置初值MOV7AH,#00H;1/10秒位置初值MOV7BH,#00H;秒位置初值MOV7CH,#00H;十秒位置初值MOV7DH
5、,#00H;分位置初值MOV7EH,#00H;十分位置初值SETBP1.26计算机硬件技术基础课程设计任务书DISP:MOVSP,#5FH;显示程序MOVA,#03HMOVDPTR,#0FF20H;设置8155初始化,A口、B口输出,C口输入MOVX@DPTR,ADISP1:MOVR5,#01H;置字位码初值MOVR0,#79H;置显示缓冲区指针初值MOVA,R5LD0:MOVDPTR,#0FF21H;字位码送8155A口MOVX@DPTR,A;位码送位选端MOVDPTR,#0FF22H;B口地址送DPTRMOVA,@R0;待选地址偏移量送AADDA,#0E
6、H;对A进行地址修正MOVCA,@A+PC;查字形码表MOVX@DPTR,A;断码送B口,1字节ACALLDLAY;延时1ms,2字节INCR0;显示缓冲区地址加1,1字节MOVA,R5;位码送A,1字节JBACC.5,LD1;若显示一遍则返回,3字节RLA;位码左移一位,1字节MOVR5,A;送回R5,1字节AJMPLD0;显示下一个数码,2字节LD1:SJMPDISP1;跳转到DJSP1,2字节DB0C0H,0F9H,0A4H,0B0H,99H,92HDB82H,0F8H,80H,90H,88H,83H,0C6HDB0A1H,86H,8EH,0FFH,0
7、CH,89HDB0C8H,0C1H,7FH,0BFHDLAY:MOVR7,#02H;延时子程序,延时1msDL1:MOVR6,#0FFHDL2:DJNZR6,DL2DJNZR7,DL1RETT0V:MOVTL0,#78HMOVTH0,#0ECHPUSHACCJNBP1.2,NEXT;P1.2为0则返回不计时INCR2MOVA,R2MOVB,#10DIVABMOV79H,B;存1/100秒位MOV7AH,A;存1/10秒位CJNER2,#100,NEXT;1/100秒到100则秒加一6计算机硬件技术基础课程设计任务书MOVR2,#00HMOV79H,#00HM
8、OV7AH,#00HINCR3;加1秒MOVA,R3