定时器计数器应用实验定时器计数器应用实验.doc

定时器计数器应用实验定时器计数器应用实验.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
定时器计数器应用实验定时器计数器应用实验

单片机原理及应用实验报告 实验五 定时器/计数器应用实验 一、实验目的 学习8051内部定时器/计数器的使用方法和编程方法 掌握定时器0作为中断源时的中断处理程序的编程方法 二、实验原理 8051单片机内部有两个16为可编程定时器/计数器:T0和T1。16为是指它们都是有16个触发器构成,故最大计数模值为216-1。可编程是指它们的工作方式由指令来设定,或者当计数器用,或者当定时器用,并且计数(定时)的范围也可以由指令来设置。这种控制功能是通过定时器方式控制寄存器TMOD来完成的。工作在定时方式时,时钟由单片机内部提供,即系统时钟经过12分频后作为定时器的时钟;工作在计数方式时,时钟脉冲(计数脉冲)由T0和T1(即P3.4和P3.5)输入。 定时器在计到规定的定时值时可以向CPU发出中断申请,从而完成某种定时的控制功能。定时器控制寄存器TCON用来负责定时器的启动、停止以及中断管理。 程序一:定时器/计数器0按定时模式和方式2工作,产生周期为1秒的方波,方波由P1.0口输出。此程序用中断方式。弄清IE寄存器的作用及矢量地址000BH的含义。 1、内部计数器用作定时器时,是对机器周期计数。每个机器周期的长度是12个振荡器周期。因为实验系统的晶振是6MHZ,本程序工作于方式2,即8位自动重装方式定时器, 定时器100us中断一次, 所以定时常数的设置可按以下方法计算: 机器周期=12÷6MHZ=2uS (256-定时常数)×2uS=100us 定时常数=206. 然后对100us中断次数计数10000次,就是1秒钟。 2、在中断服务程序中,因为中断定时常数的设置对中断程序的运行起到关键作用,所以在置数前要先关对应的中断,置数完之后再打开相应的中断。 3、实验电路及连线 4、实验框图 Y 主程序框图 定时中断子程序框图 5、汇编语言源程序: Tick equ 10000 ; 10000 x 100us = 1s T100us equ 256-50 ; 100us时间常数(6M) C100us equ 30h ; 100us记数单元 LEDBuf equ 0 LED equ P1.0 ljmp Start org 000bh ;中断程序入口 T0Int: push PSW mov a, C100us+1 jnz Goon dec C100us Goon: dec C100us+1 mov a, C100us orl a, C100us+1 jnz Exit ; C100us 记数器不为0, 返回 mov C100us, #high(Tick) mov C100us+1, #low(Tick) cpl LEDBuf ; C100us 记数器为0, 重置记数器 ; 取反LED Exit: pop PSW reti Start: ; 主程序入口 mov TMOD, #02h ; 方式2, 定时器0 mov TH0, #t100us ; 计算T/C的计数初值,并装载到TH和TL mov TL0, #t100us mov IE, ; EA=1, IT0 = 1 setb TR0 ; 开始定时 clr LEDBuf clr LED

您可能关注的文档

文档评论(0)

cduutang + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档