《实验五 定时计数器实验幻灯片.ppt》由会员分享,可在线阅读,更多相关《实验五 定时计数器实验幻灯片.ppt(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、实验五实验五 定时计定时计数器实验数器实验第1页,共14页,编辑于2022年,星期五内容内容2:利用内部定时计数器:利用内部定时计数器T1,按计数器模式工作于方式,按计数器模式工作于方式1,对,对P3.5(T1)引脚进行计数,将其数值按二进制数在引脚进行计数,将其数值按二进制数在P1口驱口驱动动LED灯上显示出来。灯上显示出来。第2页,共14页,编辑于2022年,星期五四、实验说明四、实验说明实现定时一般有三种方法:实现定时一般有三种方法:1 1、利用软件实现(延时程序)、利用软件实现(延时程序);优点:简单,控制方便;缺点:优点:简单,控制方便;缺点:CPUCPU效率低。效率低。2 2、硬件
2、实现,专门设计一个单稳态定时器:、硬件实现,专门设计一个单稳态定时器:优点:优点:CPUCPU效率高;缺点:修改参数麻烦。效率高;缺点:修改参数麻烦。3 3、利用计数器实现、利用计数器实现8051内部设有两个内部设有两个16位的定时器位的定时器/计数器,可用软件控制。计数器,可用软件控制。定时器定时器:对机器周期计数,对机器周期计数,每过一个机器周期,计数器内容加每过一个机器周期,计数器内容加1;计算机一般利用第三种方法实现计算机一般利用第三种方法实现第3页,共14页,编辑于2022年,星期五计数器:计数器:对外来脉冲进行计数,对外来脉冲进行计数,T0 T0、T1T1引脚上从高电平到低电平跳变
3、时,计数器内容加引脚上从高电平到低电平跳变时,计数器内容加1 1。外来脉冲外来脉冲T0机器周期机器周期片内计数器片内计数器单片机单片机第4页,共14页,编辑于2022年,星期五内内部部定定时时器器/计计数数器器的的编编程程主主要要是是定定时时时时间间常常数数的的设设置置和和有有关关控控制制寄寄存存器器的的设设置置。内内部部定定时时器器/计计数数器器在在单单片片机机中中主主要要有有定定时时和和计计数数两两种种功功能能。本本实实验验使使用用的的是是定定时时功能。功能。与与定定时时器器有有关关的的寄寄存存器器有有工工作作方方式式寄寄存存器器TMODTMOD和和控控制制寄寄存存器器TCONTCON。T
4、MODTMOD用用于于设设置置定定时时器器计计数数器器的的工工作作方方式式0-30-3,并并确确定定用用于于定定时时还还是是用用于于计计数数。TCONTCON主主要要功功能能是是为为定定时时器器在在溢溢出出时时设设定标志位,并控制定时器的运行或停止等。定标志位,并控制定时器的运行或停止等。内内部部计计数数器器用用作作定定时时器器时时,是是对对机机器器周周期期计计数数。每每个个机机器器周周期期的的长长度度是是1212个个振振荡荡器器周周期期。因因为为实实验验系系统统的的晶晶振振是是12MHZ12MHZ,本本程程序序定定时时器器工工作作于于方方式式1 1(1616位位方方式式)时时,最大定时时间为
5、:最大定时时间为:2 21616*1s=65536s*1s=65536s再利用软件记数再利用软件记数,当当T0T0中断中断1616次时,所用时间为:次时,所用时间为:65536*16=1048576s1s 65536*16=1048576s1s因因此此在在T0T0中中断断处处理理程程序序中中,要要判判断断中中断断次次数数是是否否到到1616次次,若若不不到到1616次次,则则只只使使中中断断次次数数加加1 1,然后返回,若到了然后返回,若到了1616次,则使输出状态位取反。次,则使输出状态位取反。在在设设置置时时间间常常数数前前要要先先关关对对应应的的中中断断,设设置置完完时时间间常常数数之之
6、后后再再打打开开相相应应的的中断。中断。第5页,共14页,编辑于2022年,星期五 内内部部计计数数器器起起计计数数器器的的作作用用时时,外外部部事事件件计计数数脉脉冲冲由由T0T0(P3.4P3.4)脚脚引引入入定定时时器器T0T0。单单片片机机在在每每个个机机器器周周期期采采样样一一次次输输入入波波形形,因因此此单单片片机机至至少少需需要要两两个个机机器器周周期期才才能能检检测测到到一一次次跳跳变变,这这就就要要求求被被采采样样电电平平至至少少维维持持一一个个完完整整的的机机器器周周期期,以以保保证证电电平平在在变变化化之之前前即即被被采采样样。同同时时这这就就决决定定了了输入波形的频率不
7、能超过机器周期频率。输入波形的频率不能超过机器周期频率。第6页,共14页,编辑于2022年,星期五五、实验步骤五、实验步骤1 1、安安装装好好仿仿真真器器,用用串串行行数数据据通通信信线线连连接接计计算算机机与与仿仿真真器器,把把仿仿真真头头插插到到模块的单片机插座中,打开实验台电源,打开仿真器电源打开电脑。模块的单片机插座中,打开实验台电源,打开仿真器电源打开电脑。2 2、启启动动计计算算机机,打打开开伟伟福福仿仿真真软软件件,进进入入仿仿真真环环境境。首首先先进进行行仿仿真真器器的的设设置置,选选择择仿仿真真器器型型号号、仿仿真真头头型型号号、CPUCPU类类型型。选选择择通通信信端端口口
8、,点点击击测测试试串串行行口口,通信成功便可退出设置,进行仿真。通信成功便可退出设置,进行仿真。3 3、在在编编辑辑窗窗口口输输入入源源程程序序,保保存存,文文件件名名为为T5-1.ASMT5-1.ASM等等。对对T5-1.ASMT5-1.ASM等等源源程序程序进进行行编译编译,编译编译无无误误后,后,执执行程序,行程序,观观察察实验现实验现象,分析象,分析结结果。果。4 4、完成定时计数程序设计。完成定时计数程序设计。5 5、完成定时、完成定时1 1秒程序设计。秒程序设计。第7页,共14页,编辑于2022年,星期五六、内容六、内容1(A)1(A)参考程序:参考程序:(查询方式)定时查询方式)
9、定时20MS20MS ORG OOOOHORG OOOOH LJMP START ;LJMP START ;查询方式查询方式 ORG 4100H ORG 4100HSTART:MOVSTART:MOV TMOD TMOD,#10H;设置工作方式;设置工作方式1 MOV TH1 MOV TH1,#09EH;置定时初值;置定时初值45536=B1E0H MOV TL1 MOV TL1,#58H#58H SETB TR1 SETB TR1 ;启动定时器启动定时器WAITWAIT:JBC TF1 JBC TF1,NEXT NEXT ;查询查询定定时时器器0 0溢出溢出标标志位是志位是 否否为为1 1,
10、为为1 1就就执执行行NEXTNEXT子程序子程序 SJMP WAIT SJMP WAIT ;为为0 0就不停的就不停的查询查询TF0TF0NEXTNEXT:CPL P1.5 CPL P1.5 MOV TH1 MOV TH1,#09H#09H MOV TL1 MOV TL1,#58H#58H SJMP WAIT SJMP WAIT END END第8页,共14页,编辑于2022年,星期五内容内容1(A)1(A)中断方式(中断方式(20MS20MS定时):定时):ORG 0000H ORG 0000H LJMP START LJMP START ;ORG 000BH ORG 000BH ;定;定
11、时计时计数器数器0 0溢出中断入口地址溢出中断入口地址 LJMP TODS LJMP TODS ORG 4100H ORG 4100HSTART:MOVSTART:MOV TMOD TMOD,#10H#10H;设设置工作方式置工作方式1_1_ MOV TH0 MOV TH0,#09EH_#09EH_ ;置定;置定时时初初值值45536=B1E0H45536=B1E0H MOV TL0 MOV TL0,#58H#58H SETB ET1 SETB ET1 ;开放开放TOTO中断中断 SETB EA SETB EA ;开放开放CPUCPU总总中断中断 SETB TR0 SETB TR0 ;启;启动
12、动定定时时器器 SJMP$SJMP$;等待定;等待定时时器器0 0溢出中断溢出中断TODSTODS:MOV TH0 MOV TH0,#0B1_#0B1_ ;重装定;重装定时时初初值值 MOV TL0 MOV TL0,#0E0_#0E0_ CPL P1.5_ CPL P1.5_ ;取反;取反 RETI RETI ;定;定时时中断返回中断返回 END END第9页,共14页,编辑于2022年,星期五内容内容1(B)1(B)中断方式(中断方式(1 1秒定时):秒定时):ORG 0000H ORG 0000H LJMP START LJMP START ;ORG 000BH ORG 000BH ;定;
13、定时计时计数器数器0 0溢出中断入口地址溢出中断入口地址 LJMP TODS LJMP TODS ORG 4100H ORG 4100HSTART:MOVSTART:MOV TMOD TMOD,#10H#10H;设设置工作方式置工作方式1_1_ MOV TH0 MOV TH0,#9EH_#9EH_ ;置定;置定时时初初值值45536=B1E0H45536=B1E0H MOV TL0 MOV TL0,#58H_#58H_ SETB ET1 SETB ET1 ;开放开放TOTO中断中断 SETB EA SETB EA ;开放开放CPUCPU总总中断中断 MOV R2,#50 MOV R2,#50
14、SETB TR0 SETB TR0 ;启;启动动定定时时器器 SJMP$SJMP$;等待定;等待定时时器器0 0溢出中断溢出中断TODSTODS:MOV TH0 MOV TH0,#0B1_#0B1_ ;重装定;重装定时时初初值值 MOV TL0 MOV TL0,#0E0_#0E0_ DJNZ R2,RTUN DJNZ R2,RTUN CPL P1.5_ CPL P1.5_ ;取反;取反第10页,共14页,编辑于2022年,星期五MOVR2,#50RTUN:RETI;定时中断返回;定时中断返回END第11页,共14页,编辑于2022年,星期五中断方式:计数ORG0000HSJMPMAINORG0
15、00BH;定时器0溢出中断入口地址AJMPJISHU;跳到中断子程序MAIN:MOVA,#00HMOVTMOD#00000101B;设置为工作方式1计数模式MOVTH0,#0FFH;置初值MOVTL0,#0FFHSETBET0;开放T0中断SETBEA;开放(CPU)总中断SETBTR0;启动T1SJMP$;等待中断第12页,共14页,编辑于2022年,星期五JISHU:INCA;A加1CPLA;取反MOVP1,A;送P1输出CPLAMOVTH1,#0FFH;重置计数初值MOVTL0,#0FFHRETI第13页,共14页,编辑于2022年,星期五七、实验报告要求七、实验报告要求1 1、实验内容、实验内容1 1、2 2为必做;为必做;2 2、每每个个内内容容要要求求有有程程序序框框图图与与程程序序清清单单(指指令令注注释);释);4 4、实实验验报报告告应应包包括括实实验验目目的的、实实验验内内容容、实实验验步步骤骤、记录观察现象、实验体会等。记录观察现象、实验体会等。第14页,共14页,编辑于2022年,星期五