资源预览内容
第1页 / 共16页
第2页 / 共16页
第3页 / 共16页
第4页 / 共16页
第5页 / 共16页
第6页 / 共16页
第7页 / 共16页
第8页 / 共16页
第9页 / 共16页
第10页 / 共16页
亲,该文档总共16页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
教案名称:单片机原理及应用,授课章节:41 单片机的定时器,授课时间:第七周 星期三 3、 4节,授课日期:2007、10、17,授课班级:05机电与数控技术 班,41 单片机的定时器,图 4.1 定时器/计数器结构框图,加法计数器是计满溢出时才申请中断, 所以在给计数器赋初值时, 不能直接输入所需的计数值, 而应输入的是计数器计数的最大值与这一计数值的差值, 设最大值为 M, 计数值为 N, 初值为 X, 则 X的计算方法如下: 计数状态: X=MN定时状态: X=M定时时间/T而 T=12晶振频率,一、 定时器/计数器的方式寄存器TMOD,TMOD各位定义,1. M1M0工作方式控制位,表 4.1 工作方式选择表,2. C/T 定时器方式或计数器方式选择位若C/T=1时, 为计数器方式; C/T = 0时, 为定时器方式。 3. GATE 定时器/计数器运行门控标志位当GATE=1时, 只有INT0 (或INT1)引脚为高电平且TR0(或TR1 )置 1 时, 相应的定时器 /计数器才被选通工作, 这时可用于测量在INTx端出现的正脉冲的宽度。若GATE=0, 则只要 TR0 (或 TR1)置 1, 定时器 /计数器就被选通, 而不管 INT0 (或 INT1)的电平是高还是低。,二、 定时器/计数器控制寄存器TCONTF0、TF1分别是定时器/计数器T0、 T1 的溢出标志位, 加法计数器计满溢出时置 1, 申请中断, 在中断响应后自动复 0。TF产生的中断申请是否被接受, 还需要由中断是否开放来决定。TR1、TR0 分别是定时器 /计数器T1、 T0 的运行控制位, 通过软件置 1 后, 定时器 /计数器才开始工作, 在系统复位时被清 0。,三、工作方式,1、 方式 0,图4.3 方式 0(13位计数器),2、 方式1,图 4.4 方式 1(16位计数器),3、方式 2,图 6.5 方式 2(初始常数自动重装载),4、 方式 3,图 6.6 方式 3(两个 8 位独立计数器),四、定时器/计数器应用举例,1、 方式 0 的应用例 1 利用定时器输出周期为 2 ms的方波, 设单片机晶振频率为 6 MHz。 选用定时器 /计数器T0 作定时器, 输出为P1.0 引脚, 2 ms 的方波可由间隔 1 ms的高低电平相间而成, 因而只要每隔 1 ms对 P1.0 取反一次即可得到这个方波。 定时 1 ms的初值: 因为 机器周期=126 MHz= 2 s 所以 1 ms内T0 需要计数N次: N= 1 ms2 s = 500,由此可知: 使用方式 0 的 13 位计数器即可, T0 的初值X为X=MN=8 192500=7 692=1E0CH但是, 因为 13 位计数器中, 低 8 位 TL0 只使用了 5 位, 其余码均计入高 8 位TH0 的初值, 则 T0 的初值调整为TH0=0F0H, TL0=0CHTMOD初始化: TMOD=00000000B=00H(GATE=0, C/T=0, M1=0, M0=0)TCON初始化: 启动TR0=1IE初始化: 开放中断EA=1, 定时器T0 中断允许ET0=1,程序清单如下: ORG 0000H AJMP START; 复位入口ORG 000BHAJMP TOINT ; T0中断入口ORG 0030H START: MOV SP, 60H; 初始化程序MOV TH0, 0F0H ; T0赋初值MOV TL0, 0CHMOV TMOD, 00HSETB TR0 ; 启动T0,SETB ET0 ; 开T0中断SETB EA ; 开总允许中断MAIN: AJMP MAIN ; 主程序TOINT: CPL P1.0MOV TL0, 0CHMOV TH0, 0F0HRET,作 业:,P111 1、2、3,
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号