




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第5 5章章 MCS-51MCS-51的定时的定时/ /计数器计数器本章内容本章内容p5.1 5.1 定时定时/ /计数器的计数器的结构结构p5.2 5.2 定时定时/ /计数器的计数器的功能功能p5.3 5.3 定时定时/ /计数器的计数器的工作方式工作方式和和控制寄存器控制寄存器p5.4 5.4 定时定时/ /计数器的计数器的4 4种工作方式种工作方式p5.5 5.5 定时定时/ /计数器的设计举例计数器的设计举例5.1 5.1 定时定时/ /计数器的结构计数器的结构图图4.4 4.4 定时定时/ /计数器的结构框图计数器的结构框图 5.2 5.2 定时定时/ /计数器的功能计数器的功能
2、pT0 T0 和和 T1T1n增量增量式、式、下降沿下降沿计数计数n各位各位全都为全都为 1 1 时,再输入一个脉冲时,再输入一个脉冲p溢出溢出回零回零pTF0TF0 或或 TF1 TF1 置位置位,发中断申请发中断申请p定时与计数的不同:定时与计数的不同:时钟脉冲信号时钟脉冲信号n定时,定时,内内部的时钟振荡器部的时钟振荡器n计数,计数,外外部引脚部引脚1. 1. 计数功能计数功能p原理原理n对对外部外部事件事件计数计数p计数脉冲计数脉冲来自引脚来自引脚 T0(P3.4)T0(P3.4)或或 T1(P3.5)T1(P3.5)负跳变负跳变( (由由1 1变成变成0)0)时时,计数值,计数值 增
3、加增加 1p对外部输入脉冲的要求对外部输入脉冲的要求n被采样的电平被采样的电平至少至少要维持要维持一个机器周期一个机器周期,否则会否则会漏计数漏计数n最高计数频率:晶振频率的最高计数频率:晶振频率的1/241/24oscoscf f1212机器周期机器周期 2. 2. 定时功能定时功能p原理原理n通过通过计数计数实现实现p计数脉冲计数脉冲内部内部时钟脉冲时钟脉冲p每个机器周期,计数值每个机器周期,计数值 加加 1 1p定时时间定时时间计数值计数值机器周期机器周期o os sc cf f1 12 2机机器器周周期期 5.3 5.3 定时定时/ /计数器的工作方式和控制寄存器计数器的工作方式和控制
4、寄存器p1. 1. 方式寄存器方式寄存器 TMODTMODp2. 2. 控制寄存器控制寄存器 TCONTCON位位D7D7D6D6D5D5D4D4D3D3D2D2D1D1D0D0字节地址字节地址TMODTMODGATEGATE C/TC/TM1M1M0M0GATEGATEC/TC/TM1M1M0M089H 89H 位位D7D7D6D6D5D5D4D4D3D3D2D2D1D1D0D0字节地址字节地址TCONTCONTF1TF1TR1TR1TF0TF0 TR0TR0 IE1IE1IT1IT1IE0IE0IT0IT088H88H不可位寻址不可位寻址可位寻址可位寻址1. 1. 方式寄存器方式寄存器 T
5、MODTMOD位位D7D7D6D6D5D5D4D4D3D3D2D2D1D1D0D0字节地址字节地址TMODTMOD GATEGATEC/TC/TM1M1 M0M0GATEGATEC/TC/TM1M1M0M089H 89H 表表4.2 4.2 定时定时/ /计数器工作方式设置表计数器工作方式设置表 M1 M0M1 M0工作方式工作方式功能说明功能说明0 00 00 01313位位定时器定时器/ /计数器计数器(TH(TH的的8 8位和位和TLTL的低的低5 5位位) ) 0 10 11 11616位位定时器定时器/ /计数器计数器1 01 02 2自动重装入初值自动重装入初值的的 8 8位位 定
6、时器定时器/ /计数器计数器 1 11 13 3T0 T0 分成分成两个两个独立独立的的 8 8位位 定时器定时器/ /计数器计数器T1 T1 在在 方式方式3 3 时时 停止工作停止工作 T1T0pC/T C/T 定时器方式或计数器方式选择位定时器方式或计数器方式选择位nC/T=1C/T=1,计数器,计数器nC/T=0C/T=0,定时器,定时器pGATEGATE 门控标志位门控标志位nGATE=1GATE=1pTR0/TR1=1TR0/TR1=1且且/INT0(/INT0(或或/INT1)/INT1)高电平高电平,才才工作工作 用于测量用于测量/INT0(/INT0(或或/INT1)/INT
7、1)端出现的端出现的正正脉冲脉冲的的宽度宽度nGATE=0GATE=0pTR0/TR1=1TR0/TR1=1,就就工作工作2. 2. 控制寄存器控制寄存器 TCONTCON位位D7D7D6D6D5D5D4D4D3D3D2D2D1D1D0D0字节地址字节地址TCONTCONTF1TF1TR1TR1TF0TF0 TR0TR0 IE1IE1 IT1IT1 IE0IE0IT0IT088H88HpTF0TF0 / / TF1 TF1 溢出标志位溢出标志位n计满溢出计满溢出时,由时,由硬件硬件置置 1 1n中断响应后,中断响应后,硬件自动清硬件自动清 0 0pTR1 / TR0 TR1 / TR0 运行控
8、制位运行控制位n软件软件置置 1 1 后,开始工作后,开始工作n系统复位时,清系统复位时,清 0 0 5.4 5.4 定时定时/ /计数器的计数器的4 4种工作方式种工作方式pT0T0n4 4种:方式种:方式0 0、1 1、2 2、3 3pT1T1n3 3种:方式种:方式0 0、1 1、2 2p设置为设置为方式方式3 3,将,将停止停止工作工作n作为串行通信口的作为串行通信口的波特率发生器(方式波特率发生器(方式2 2)1. 1. 方式方式 0 0pTMODTMOD的的M1M0M1M0为为0000p1313位计数:位计数:TL0TL0的的低低5 5位位(高(高3 3位未用)位未用) TH0TH
9、0的的8 8位位nTL0TL0的低的低5 5位溢出时,向位溢出时,向TH0TH0进位进位nTH0TH0溢出时,置位溢出时,置位TCONTCON中的中的TF0TF0标志,发出标志,发出中断请求中断请求p计数计数个数个数MM与计数与计数初值初值NNnM = 2M = 21313N Np2 21313:溢出时的计数值:溢出时的计数值p定时时间定时时间 t tnt = Mt = M机器周期机器周期 = (2= (21313N)N)机器周期机器周期nN = 2N = 21313 - t/ - t/机器周期机器周期p计数初值计数初值 N = 8191N = 81910 0p计数范围:计数范围:1 1819
10、281922. 2. 方式方式 1 1pTMODTMOD的的M1M0M1M0为为0101n1616位:位:TL0 TL0 TH0TH0p计数个数计数个数M M与计数初值与计数初值N N: M M2 21616N Nn定时时间定时时间 t = Mt = M机器周期机器周期n计数初值计数初值 N = 65535N = 655350 0;计数范围:;计数范围:1 165536655363. 3. 方式方式 2 2pTMODTMOD的的M1M0M1M0为为1010n自动重装初值的自动重装初值的8 8位位计数方式:计数方式:pTL0TL0:8 8位定时位定时/ /计数器;计数器;TH0TH0:8 8位位
11、初值寄存器初值寄存器p计数个数计数个数M M与计数初值与计数初值N N: M M2 28 8N Nn定时时间定时时间 t = Mt = M机器周期机器周期n计数初值计数初值 N = 255N = 2550 0;计数范围:;计数范围:1 1256256较精确的较精确的脉冲信号发生器脉冲信号发生器T1T1在在方式方式2 2,作为,作为波特率发生器波特率发生器定时器定时器/ /计数器计数器 的的 初值计算初值计算p设设n计数器计数的计数器计数的最大值:最大值:M Mn计数值:计数值:N Nn初值:初值:X XpX X的计算方法的计算方法 n计数状态:计数状态:X = M X = M N Nn定时状态
12、:定时状态:X = M X = M 定时时间定时时间/T/TpT = 12 T = 12 晶振频率晶振频率4. 4. 方式方式 3 3pTMODTMOD的的M1M0M1M0为为11 11n只适用于只适用于T0T0nT0T0分成为两个独立的分成为两个独立的8 8位计数器位计数器pTL0TL0、TH0TH0pTL0TL0:定时器和计数器:定时器和计数器n占用占用T0T0的控制位的控制位pTH0TH0:定时器定时器n仅仅借用借用T1T1的的 TR1TR1、TF1TF1n不受门控;不受门控;启、停受启、停受TR1TR1控制控制n溢出时,置位溢出时,置位 TF1TF1pT1T1:n只能作定时器只能作定时
13、器,波特率发生器波特率发生器n原则上,仍可按方式原则上,仍可按方式0 0、1 1、2 2工作工作n不能使用不能使用TR1TR1和和TF1TF1,也,也不能不能发出发出中断请求中断请求n方式设定后,自动运行;要方式设定后,自动运行;要停止工作停止工作,只需,只需设设定为方式定为方式3 3nT1T1溢出判断溢出判断p通过在线通过在线“飞读飞读”TH1TH1和和TL1TL1,判断是否溢出。,判断是否溢出。p串行通信应用中串行通信应用中nT1T1:串行口波特率发生器,工作于方式:串行口波特率发生器,工作于方式2 2nT0T0:工作于方式:工作于方式3 3n可充分利用单片机的定时可充分利用单片机的定时/
14、 /计数器资源。计数器资源。5.5 5.5 定时定时/ /计数器的设计举例计数器的设计举例p5151单片机的定时单片机的定时/ /计数器,常工作于计数器,常工作于中断中断场合场合p应用设计步骤应用设计步骤n(1)(1)计算定时计算定时/ /计数器的初值计数器的初值n(2)(2)主程序中,初始化主程序中,初始化p定时定时/ /计数器的初始化计数器的初始化p中断初始化中断初始化 TH0TH0、TL0TL0、TH1TH1、TL1TL1、TMODTMOD、TCONTCON、IPIP、IEIEn(3)(3)中断服务程序设计中断服务程序设计 例例11方式方式1 1p利用定时利用定时/ /计数器计数器T0T
15、0的方式的方式1 1,产生一个,产生一个50Hz50Hz的方波,此的方波,此方波由方波由P1.0P1.0引脚输出,晶振频率为引脚输出,晶振频率为12 MHz12 MHz。 p思路:思路:nf=50Hzf=50Hz,则其周期为,则其周期为T=1/50=0.02sT=1/50=0.02sn计满计满0.01s0.01s,P1.0P1.0输出输出0 0,再计满,再计满0.01S0.01S,P1.0P1.0输出输出1 1pT0T0产生产生0.01s0.01s定时定时实现方法实现方法查询方式:查查询方式:查TF0TF0标志标志中断方式:中断服务程序中断方式:中断服务程序p解题步骤解题步骤n(1)(1)定时
16、定时 0.01s0.01s的初值计算的初值计算p机器周期机器周期 = 12 = 12 12 MHz = 1 s 12 MHz = 1 sp0.01s0.01s内内 T0 T0 需要计数需要计数 N N 次次 N = 0.01s N = 0.01s 1 s1 s = 0.01/(10 = 0.01/(10-6-6) = 10000 ) = 10000 p若用若用方式方式1 1的的16 16 位计数器位计数器,T0 ,T0 的初值的初值X X为为 X = MX = MN = 2N = 2161610000 = 5553610000 = 55536n(2)T0(2)T0的的TMODTMOD的初始化的
17、初始化pGATE=0GATE=0,C/T=0C/T=0,M1M0=01,M1M0=01,即:即:T0T0的方式的方式1 1n(3)(3)实现方法实现方法p查询的方法和中断的方法查询的方法和中断的方法实现方法实现方法p(1)(1)查询方式查询方式n查询查询T0T0的的TF0TF0:为:为1 1,定时时间到,对,定时时间到,对P1.0P1.0取反操作取反操作n缺点:占用缺点:占用CPUCPUORG0000HLJMPMAIN;跳转到主程序;跳转到主程序ORG0100H ;主程序;主程序MAIN: MOVTMOD,#01H;置;置T0工作于方式工作于方式1LOOP: MOVTH0,#0D8H;装入计数
18、初值;装入计数初值MOVTL0,#0F0H SETBTR0;启动定时器;启动定时器T0JNBTF0,$;TF0=0,定时,定时时间未到时间未到,等待等待CLRTF0 ;TF0=1,定时时间到,清,定时时间到,清TF0CPLP1.0 ;P1.0取反输出取反输出SJMPLOOP ENDp(2)(2)中断方式中断方式p定时到,定时到,TF0=1TF0=1,向,向CPUCPU申请中断,申请中断,CPUCPU响应中断后,执响应中断后,执行中断程序,中断程序中对行中断程序,中断程序中对P1.0P1.0取反操作取反操作ORG0000HLJMPMAIN;跳转到主程序跳转到主程序 ORG000BH;T0的中断入
19、口地址的中断入口地址LJMPT0_INT;转向中断服务程序转向中断服务程序 ORG0100HMAIN: MOVTMOD,#01H;置置T0工作于方式工作于方式1MOVTH0,#0D8H;装入计数初值装入计数初值MOVTL0,#0F0H SETBET0;T0开中断开中断SETBEA;CPU开中断开中断SETBTR0;启动启动T0;继续执行主程序其它部分继续执行主程序其它部分SJMP$;等待中断等待中断T0_INT: ;P1.0取反输出取反输出CPL P1.0 ;重装入计数初值重装入计数初值MOV TH0,#0D8H MOV TL0,#0F0H ;中断返回中断返回RETIENDT0_INT: ;重
20、装入计数初值重装入计数初值MOV TH0,#0D8H MOV TL0,#0F0H;P1.0取反输出取反输出CPL P1.0;中断返回中断返回RETIEND 例例22方式方式1 1p利用定时利用定时/ /计数器计数器T1T1产生一个产生一个1Hz1Hz的方波,此方波的方波,此方波由由P0.0P0.0引脚输出,晶振频率为引脚输出,晶振频率为6MHz6MHzp思路:思路:pf=1Hzf=1Hz,T=1sT=1sn此题转化为此题转化为p由定时器产生:由定时器产生:0.5s 0.5s 定时定时机器周期机器周期 = 12 / 6MHz = 2= 12 / 6MHz = 2* *1010-6-6s s655
21、36 65536 * * 2 2* *1010-6 -6 s = 0.131072s = 131072ss = 0.131072s = 131072sp0.5s0.5s定时,实现方法定时,实现方法nT1T1:方式方式1 1p完成完成100ms100ms定时定时p在中断程序里设置一个在中断程序里设置一个“软时钟软时钟”,即一个,即一个CLOCK=30HCLOCK=30H内存单元内存单元每中断一次,每中断一次,CLOCKCLOCK加加1 1,CLOCKCLOCK累计累计5 5次次(即(即0.5s0.5s),对),对P0.0P0.0取反操作取反操作解题步骤:解题步骤:p(1)(1)确定初值确定初值N
22、 Np计数值计数值 M Mt/ Tcyt/ Tcy 1001001010-3-3/(2/(21010-6-6) )5000050000 N N2 21616M M6553665536500005000015536=3CB0H15536=3CB0Hp即应将即应将3CH3CH送入送入TH1TH1、0B00B0送入送入TL1TL1中。中。p(2)(2)初始化控制字初始化控制字TMODTMODnGATE=0GATE=0,C/T=0C/T=0,M1M0=01M1M0=01,即:,即:T1T1的方式的方式1 1;实现程序:实现程序:;*伪指令伪指令*LED BITP0.0CLOCKDATA30H;*主程序
23、入口地址主程序入口地址*ORG0000HLJMPMAIN;跳转至主程序跳转至主程序;*中断入口地址中断入口地址*ORG001BHLJMPT1_INT ;跳转至跳转至T1中断服务程序中断服务程序ORG 0030HMAIN:;*中断初始化中断初始化*MOV TMOD, #10HMOV TH1, #3CH;装入计数初值装入计数初值MOV TL1, #0B0H SETB ET1;开放开放T1中断中断SETB EA;开放总中断开放总中断SETB TR1;启动启动T1时钟时钟;继续执行主程序其它部分继续执行主程序其它部分SJMP $;等待中断等待中断;*T1中断服务程序中断服务程序*T1_INT:PUSH
24、ACC;保护现场保护现场PUSHPSWCLRTR1MOV TH1, #3CH;重新装入计数初值重新装入计数初值MOV TL1, #0B0H SETBTR1INCCLOCK;软时钟加软时钟加1MOVA, CLOCKCJNEA, #5, TMPLTMPL:JCRETURN;不到不到0.5s返回返回CPLLED;到到0.5s闪烁变换闪烁变换MOVCLOCK, #0;软时钟清零软时钟清零RETURN:POPPSWPOPACC RETIEND 例例33方式方式2 2p利用定时利用定时/ /计数器计数器T0T0产生一个产生一个1kHz1kHz的方波,此方波的方波,此方波由由P0.0P0.0引脚输出,晶振频
25、率为引脚输出,晶振频率为6MHz6MHzn机器周期机器周期 = 12 / 6MHz = 2= 12 / 6MHz = 2* *1010-6-6s sp思路:思路:pf=1kHzf=1kHz,T=1msT=1msn此题转化为此题转化为p由定时器产生:由定时器产生:500s 500s 定时定时p500s500s定时,实现方法定时,实现方法nT0T0:方式方式2 2p即自动重装初值的即自动重装初值的8 8位计数位计数方式方式p开放开放T0T0中断,在中断程序里对中断,在中断程序里对P0.0P0.0取反取反操作操作解题步骤:解题步骤:p(1)(1)计数初值计数初值N Np计数值计数值 M Mt/ Tc
26、yt/ Tcy 5005001010-6-6/(2/(21010-6-6) )250250 N N2 28 8M M25625625025006H06Hp06H06H送入送入TH0TH0和和TL0TL0p(2)(2)初始化控制字初始化控制字TMODTMODnGATE=0GATE=0,C/T=0C/T=0,M1M0=10M1M0=10,即:,即:T0T0的方式的方式2 2;实现程序:实现程序:;*伪指令伪指令*LED BITP0.0;*主程序入口地址主程序入口地址*ORG0000HLJMPMAIN;跳转至主程序跳转至主程序;*中断入口地址中断入口地址*ORG00BHLJMPT0_INT ;跳转至
27、跳转至T1中断服务程序中断服务程序ORG 0100HMAIN: ;*中断初始化中断初始化*MOV TMOD, #02HMOV TH0, #06H;装入计数初值装入计数初值MOV TL0, #06H SETB ET0;开放开放T0中断中断SETB EA;开放总中断开放总中断SETB TR0;启动启动T0时钟时钟;继续执行主程序其它部分继续执行主程序其它部分SJMP $;等待中断等待中断;*T0中断服务程序中断服务程序*T0_INT:CPLLED;不需重新装入计数初值不需重新装入计数初值RETIEND定时定时/计数器门控位计数器门控位GATE的应用的应用p当当GATE=0GATE=0时时n定时定时
28、/ /计数器的运行计数器的运行只只受控于:受控于:TR0(或或TR1)p当当GATE=1GATE=1时时n定时定时/ /计数器的运行受控于:计数器的运行受控于:pTR0( (和和TR1) )和和INT0( (或或INT1) ) 在在TR0=1(或或TR1=1)时时若若INT0=1(或或INT1=1),则,则启动启动计数;计数;若若INT0=0(或或INT1=0),则,则停止停止计数。计数。可以利用这一点可以利用这一点测试测试外部外部输入脉冲输入脉冲的的宽度。宽度。 例例4GATE=4GATE=1p利用利用T0T0的门控位的门控位GATEGATE,编程实现检测外部输入脉,编程实现检测外部输入脉冲
29、的宽度。冲的宽度。/INT0(P3.2)TMOD = #09HTH0 = TL0 = #00h等待等待INT0INT0变变低低电平电平后后TR0=1TR0=1T0T0开始开始计时计时计时开始计时开始计时停止计时停止T0T0停止停止计时计时源程序:源程序:ORG 00hMOV TMOD, #09H;设置设置 T0 为方式为方式 1,定时方式工作,定时方式工作,;GATE=1MOV TL0, #00H;设计数初值为设计数初值为0MOV TH0, #00HMOV R0, #30H;地址指针送地址指针送R0JBP3.2, $;等待等待INT0变低变低SETB TR0;启动定时器启动定时器JNBP3.2
30、, $;等待等待INT0变高变高电平电平JBP3.2, $;启动计数,并等待启动计数,并等待INT0再次变低再次变低CLRTR0;停止计数器停止计数器MOV R0, TL0;读取计数值读取计数值INCR0MOV R0, TH0;读取计数值读取计数值SJMP $END寻找待测脉冲的寻找待测脉冲的下降沿下降沿p不足:不足:n如果机器周期为如果机器周期为1/12MHZ,则这种方法的,则这种方法的最大最大被测脉冲宽度被测脉冲宽度为为65.536微秒微秒n由于靠软件启动和停止计数,有一定的由于靠软件启动和停止计数,有一定的测量误测量误差,差,其中最大可能的误差由指令的时序确定。其中最大可能的误差由指令的
31、时序确定。ORG 0000HLJMP MAINORG 000BH LJMP DVT0ORG 0030H MAIN:.CLRR1. DVT0:INCR1RETI定时定时/ /计数器用于计数器用于外部外部中断扩展中断扩展p扩展方法扩展方法n将定时将定时/ /计数器设置为计数器设置为计数器计数器方式方式p计数初值设定为计数初值设定为满程满程n将待扩展的将待扩展的外部中断源外部中断源接到定时接到定时/ /计数器的计数器的外外部计数引脚部计数引脚p从该引脚输入一个下降沿信号,计数器从该引脚输入一个下降沿信号,计数器加加1 1后便产生后便产生定时定时/ /计数器溢出计数器溢出中断中断。 例例5 5 定时定
32、时/ /计数器扩展计数器扩展外部外部中断中断p利用利用T0T0扩展一个外部中断源扩展一个外部中断源n步骤步骤p将将T0T0设置为计数器方式,按设置为计数器方式,按方式方式2工作工作pTH0TH0、TL0TL0的初值均为的初值均为0FFHpT0T0允许中断,允许中断,CPUCPU开放中断开放中断p初始化程序初始化程序MOV TMOD,#06H;置置T0为计数器方式为计数器方式2MOV TL0,#0FFH;置计数初值置计数初值MOV TH0,#0FFHSETB EA;CPU开中断开中断SETB ET0;允许允许T0中断中断SETB TR0;启动启动T0工作工作 例例6 6 定时定时/ /计数器对外
33、部事件计数器对外部事件计数计数p利用利用T1T1对外部事件计数对外部事件计数n要求要求p计计10001000个脉冲后,点亮指示灯个脉冲后,点亮指示灯 指示灯指示灯低电平点亮低电平点亮p晶振频率为晶振频率为12MHz12MHz解题步骤:解题步骤:p计数方式计数方式n计数初值计数初值N Np计数值计数值 M M10001000 N N2 21616M M655366553610001000FC18HFC18HpGATE=0GATE=0,C/T=1C/T=1,M1M0=01M1M0=01ledledbit P1.0bit P1.0; ;红灯红灯orgorg00h00h; ;主程序入口主程序入口ljm
34、pljmpmainmainorgorg001Bh001Bh; ;定时器定时器 1 1 中断入口地址中断入口地址ljmpljmpi_t1i_t1orgorg030h030hmain:main:setbsetbled_redled_red; ;点亮红灯点亮红灯movmovtmodtmod, #51h, #51h;T1 ;T1 工作在方式工作在方式 1 1,用于计数,用于计数movmovTH1, #0FChTH1, #0FCh; ;设定时器初值设定时器初值movmovTL1, #018hTL1, #018h; ;设定时器初值设定时器初值setbsetbet1et1; ;中断中断 T1 T1 允许允许
35、setbsetbeaea; ;总中断允许总中断允许setbsetbTR1TR1; ;定时器定时器 T1 T1 开始计数开始计数sjmpsjmp$ $; ;等待中断等待中断i_t1:i_t1:clrclrledledclrclrTR1TR1; ;定时器定时器 T1 T1 计数计数 停止停止 retireti; ;中断返回中断返回endend小结小结p两个两个T/CT/Cp定时定时/ /计数计数p四种工作方式:重点是四种工作方式:重点是方式方式1 1、2 2p两个控制寄存器:两个控制寄存器:TMODTMOD、TCONTCONp初值的计算初值的计算p典型应用典型应用p作业:作业:P123P123:5
36、.85.8、5.95.9、5.105.10 例例77方式方式3 3p只适用于:定时器只适用于:定时器T0T0n2 2个个 8 8位位 定时器定时器/ /计数器计数器pTH0 TH0 借用了定时器借用了定时器T1T1的的 溢出中断标志溢出中断标志 TF1TF1 运行控制位运行控制位 TR1 TR1 p 例例 n假设有一个用户系统中,已经假设有一个用户系统中,已经p使用了两个外部中断源使用了两个外部中断源p置定时器置定时器T1T1于方式于方式2 2,作串行口波特率发生器用,作串行口波特率发生器用pP1.0P1.0口输出一个口输出一个5Hz5Hz的方波的方波n现要求:再增加一个外部中断源现要求:再增
37、加一个外部中断源假设假设:晶振频率晶振频率6MHz解题思路解题思路p(1)(1)在不增加其它硬件开销时在不增加其它硬件开销时, , 可把定时器可把定时器/ /计数器计数器T0T0置于工置于工作方式作方式3, 3, 利用外部引脚利用外部引脚 T0T0端作附加的外部中断输入端端作附加的外部中断输入端p(2)(2)把把 TL0 TL0 预置为预置为 0FFH, 0FFH, 这样在这样在 T0 T0 端出现由端出现由 1 1 至至 0 0 的的负跳变时负跳变时, TL0, TL0立即溢出立即溢出, , 申请中断申请中断, , 相当于边沿激活的外相当于边沿激活的外部中断源部中断源。p(3)(3)在方式在方式 3 3下下, TH0 , TH0 总是作总是作 8 8 位定时器用位定时器用, , 可以靠它来可以靠它来控制由控制由 P1.0 P1.0 输出的输出的 5 kHz5 k
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 篮球培训合作合同范本
- 双汇猪肉采购合同范本
- 股权出资协议合同范本
- 监控移址合同范本
- 2025何为劳动事实合同
- 电脑设备增值合同范本
- 大同市城区2025年三下数学期末联考试题含解析
- 钢筋工三级理论考核试题题库及答案
- 新疆伊犁州奎屯一中2025届高三下第11次大练习生物试题含解析
- 石家庄市赞皇县2025年三下数学期末学业水平测试模拟试题含解析
- 2024年版-生产作业指导书SOP模板
- DL-T5508-2015燃气分布式供能站设计规范
- 汽车吊装专项施工方案及流程
- 2024年安徽省合肥市新站区中考一模数学试题
- 危重患者识别和处理-课件
- 智联招聘测评题库2024答案
- 地震应急疏散演练方案安全教育
- 上下班交通安全培训课件
- 无人生还介绍读后感课件
- 彝族服饰简要介绍课件
- 教师职业道德-爱国守法
评论
0/150
提交评论