您所在位置: 网站首页 / 单片机讲义(定时器计数器)概要.ppt / 文档详情
单片机讲义(定时器计数器)概要.ppt 立即下载
2024-11-26
约2.5千字
约69页
0
683KB
举报 版权申诉
预览加载中,请您耐心等待几秒...

单片机讲义(定时器计数器)概要.ppt

单片机讲义(定时器计数器)概要.ppt

预览

免费试读已结束,剩余 64 页请下载文档后查看

10 金币

下载文档

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

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

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

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

第6章MCS-51的定时器/计数器6.1定时器/计数器的结构定时器/计数器T0、T1的逻辑结构6.1.1工作方式控制寄存器TMOD6.1.2定时器/计数器控制寄存器TCON6.1.3定时器/计数器的操作6.2定时器/计数器的工作方式6.2.1方式06.2.2方式16.2.3方式26.2.4方式3说明:1.工作方式3下的T02.T0工作在方式3下T1的各种工作方式6.3定时器/计数器对输入信号的要求6.4定时器/计数器的编程和应用将X化为十六进制,即X=FEOCH=1111111000001100B。
所以,T0的初值为:
TH0=0FEHTL0=0CH
(2)初始化程序设计初始化程序包括定时器初始化和中断系统初始化,主要是对寄存器IP、IE、TCON、TMOD的相应位进行正确的设置,并将计数初值送入定时器中。
(3)程序设计
ORG0000H
RESET:AJMPMAIN;转主程序
ORG000BH;T0的中断入口地址
AJMPIT0P;转T0中断处理程序IT0P
ORG0100H
MAIN:MOVSP,#60H;设堆栈指针
MOVTMOD,#01H;设置T0为方式100000001
ACALLPT0M0;调用子程序PT0M0
HERE:AJMPHERE;自身跳转PT0M0:MOVTL0,#0CH;对T0置定时初值(先低后高)
MOVTH0,#0FEH
SETBTR0;启动T0开始计时
SETBET0;允许T0计数溢出中断
SETBEA;CPU开中断
RET
IT0P:MOVTL0,#0CH;T0中断服务子程序,T0置初值
MOVTH0,#0FEH
CPLP1.0;P1.0的状态取反
RETI如果CPU不做其它工作,也可以采用查询的方式进行控制,查询方式的参考程序如下:(3)10次计数的实现
对于中断10次计数,可使T0工作在定时方式,采用循环程序的方法实现。
(4)程序设计
ORG0000H
RESET:LJMPMAIN;上电,转主程序入口MAIN
0RG000BH;T0的中断入口地址
LJMPIT0P;转T0中断处理程序ITOP
ORG1000H
MAIN:MOVSP,#60H;设堆栈指针
M0VB,#0AH;设循环次数10次
MOVTMOD,#01H;设T0工作在方式100000001
MOVTL0,#0B0H;给T0设初值(先低后高)
MOVTH0,#03CHLOOP:SETBTR0;启动T0开始定时
SETBET0;允许T0中断
SETBEA;CPU开放中断
HERE:SJMPHERE;等待中断
IT0P:MOVTL0,#0B0H;T0中断服务子程序,
重新给T0装入初值
MOVTH0,#3CH
DJNZB,LOOP
CLRTR0;1s定时时间到,停止T0工作
RETI6.4.2方式2的应用6.4.3方式3的应用(2)初值计算(即TL0、TH0的初值)
TL0的初值设为0FFH。因T=1/f=1/5000=200μs,所以5KHZ方波的周期为200μs,因此TH0的定时时间为100μs。
TH0的初值X计算如下:6.4.4门控制位GATE的应用——测量脉冲宽度●参考程序如下:

ORG0000H
RESET:AJMPMAIN;复位入口转主程序
ORG0100H
MAIN:MOVSP,#60H
MOVTMOD,#0D0H;设控制字,11010000
T1为方式1计数,GATE=1
MOVTL1,#00H;置T1计数初值为零(从0开始计数)
MOVTH1,#00H
LOOP:JBP3.3,LOOP;等待低(P3.3=1时转移)
SETBTR1;如果P3.3=0,即为低,启动T1开始计数
器(真正计数时=1)LOOP1:JNBP3.3,LOOP1;等待升高(P3.3=0时转移),
高才计数
LOOP2:JBP3.3,LOOP2;等待降低(P3.3=1时转移),
低停止计数
CLRTR1;停止T1计数
MOVA,TL1;T1计数值送A
将A中的T1计数值送显示
缓冲区并转换成可显示的代码
LOOP3:LCALLDIR;调用显示子程序DIR(略)显示T1计数值
AJMPLOOP3
执行以上程序,使引脚上出现的正脉冲宽度以机器周期数的形式显示在显示器上。6.4.5实时时钟的设计参考程序流程如下:ADDA,4lH
DAA;“分”单元十进制调整
MOV4lH,A;“分”的BCD码存回“分”单元
CJNEA,#60,RETURN;是否到60分,未到则返回
MOV41H,#00H;计满60分,“分”单元清0
MOVA,#01H;“时”单元增1
ADDA,40H
DAA;“时”单元十进制调整
MOV40H,A;“时”的BCD码存回“时”单元
CJNEA,#24,RETURN;是否到24小时,未到则返回
MOV40H,#00H;到24小时,
查看更多
单篇购买
VIP会员(1亿+VIP文档免费下)

扫码即表示接受《下载须知》

单片机讲义(定时器计数器)概要

文档大小:683KB

限时特价:扫码查看

• 请登录后再进行扫码购买
• 使用微信/支付宝扫码注册及付费下载,详阅 用户协议 隐私政策
• 如已在其他页面进行付款,请刷新当前页面重试
• 付费购买成功后,此文档可永久免费下载
全场最划算
12个月
199.0
¥360.0
限时特惠
3个月
69.9
¥90.0
新人专享
1个月
19.9
¥30.0
24个月
398.0
¥720.0
6个月会员
139.9
¥180.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用