




如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
第6章AT89S51单片机的定时器/计数器36.1.1工作方式控制寄存器TMOD AT89S51定时器工作方式寄存器TMOD用于选择工作模式和工作方式,字节地址为89H,不能位寻址。 8位分为两组,高4位控制T1,低4位控制T0。 (1)GATE—门控位 GATE=0时,仅由运行控制位TRx(x=0,1)来控制定时器运行 GATE=1时,用外中断引脚INT0*(或INT1*)上的电平与运行控制位TRx共同控制定时器运行。 (2)M1、M0—工作方式选择位 M1、M0的4种编码,对应于4种工作方式的选择。 (3)C/T*—计数器模式和定时器模式选择位 C/T*=0,为定时器工作模式,对单片机的晶体振荡器12分频后的脉冲进行计数。 C/T*=1,为计数器工作模式,计数器对外部输入引脚T0(P3.4)或T1(P3.5)的外部脉冲(负跳变)计数。6.1.2定时器/计数器控制寄存器TCON TCON字节地址为88H,可位寻址,位地址为88H~8FH。 (1)TF1、TF0—计数溢出标志位。 当计数器计数溢出时,该位置“1”。使用查询方式时,应注意查询有效后,使用软件及时将该位清“0”。使用中断方式时,中断请求标志位在进入中断服务程序后由硬件自动清“0”。 (2)TR1、TR0—计数运行控制位。 TR1位(或TR0位)=1,启动定时器工作。 TR1位(或TR0位)=0,停止定时器工作。 该位可由软件置“1”或清“0”。6.2定时器/计数器的4种工作方式 6.2.1方式0——M1M0=00 方式0为13位计数,由TL0的低5位(高3位未用)和TH0的8位组成。TL0的低5位溢出时向TH0进位,TH0溢出时,置位TCON中的TF0标志,向CPU发出中断请求。图6-4定时器/计数器方式0逻辑结构框图9131415时间常数的计算 时间常数:定时器/计数器T0或T1的初始计数值,在T0或T1被启动后,每个机器周期使计数器中的计数值加1,计数器产生溢出后。 定时时间:计数器溢出时间,时间常数越大,定时时间就越短;时间常数越小,定时时间就越长。时钟的频率越高,定时时间越短;时钟的频率越低,定时时间越长。设系统时钟的频率为fosc,计数器的初始值为N,定时器工作于方式1,则定时时间: T=(216-N)×12/fosc(1) 如果定时器工作于方式2或方式3,定时时间为: T=(28-N)×12/fosc(2)例如:系统的时钟频率是12MHz,在方式1下,如果希望定时器/计数器T0的定时时间T为10ms,则初值N=216-T=65536-10000=55536 MCS-51单片机的定时器是可编程的,但在进行定时或计数之前要对程序进行初始化,具体步骤如下: (1)确定工作方式字:对TMOD寄存器正确赋值; (2)确定定时初值:计算初值,直接将初值写入寄存器的TH0、TL0或TH1、TL1; 初值计算:设计数器的最大值为M,则置入的初值X为: 计数方式:X=M-计数值 定时方式:由(M-X)T=定时值,得X=M-定时值/T T为计数周期,是单片机的机器周期。 (模式0-M为213,模式1-M为216,模式2和3-M为28) (3)根据需要,对IE置初值,开放定时器中断; (4)启动定时/计数器,对TCON寄存器中的TR0或TR1置位,置位以后,计数器即按规定的工作模式和初值进行计数或开始定时。6.4.1P1口外接的8只LED每0.5s闪亮一次。 【例6-1】在AT89S51单片机的P1口上接有8只LED(电路见图4-7)。下面采用定时器T0的方式1的定时中断方式,使P1口外接的8只LED每0.5s闪亮一次。 (1)设置TMOD寄存器 方式1;计时工作模式;仅由TR0来控制;T1不使用。 TMOD寄存器应初始化为0x01=00000001B(2)计算T0计数初值 设定时时间5ms(即5000µs),设定时器T0的计数初值为X,假设晶振的频率为11.0592MHz,则定时时间为: 定时时间=(216−X)12/晶振频率 则5000=(216−X)12/11.0592 得:X=60928,转换成16进制后为:0xee00,其中0xee装入TH0,0x00装入TL0。 (3)设置IE寄存器 本例由于采用定时器T0中断,因此需将IE寄存器中的EA、ET0位置1。 (4)启动和停止定时器T0 将定时器控制寄存器TCON中的TR0=1,则启动定时器T0;TR0=0,则停止定时器T0定时。#include<reg51.h> Chari=100;/*给变量i赋初值,定时0.5S,每次定时中断5MS,需要中断100次*/ voidmain() { TMOD=0x01; /*设置定时器T0为方式1*/ TH0=0xee; /*向TH0写入初值的高8位*/ TL0

YY****。。
实名认证
内容提供者


最近下载
最新上传
浙江省宁波市2024-2025学年高三下学期4月高考模拟考试语文试题及参考答案.docx
汤成难《漂浮于万有引力中的房屋》阅读答案.docx
四川省达州市普通高中2025届第二次诊断性检测语文试卷及参考答案.docx
山西省吕梁市2025年高三下学期第二次模拟考试语文试题及参考答案.docx
山西省部分学校2024-2025学年高二下学期3月月考语文试题及参考答案.docx
山西省2025年届高考考前适应性测试(冲刺卷)语文试卷及参考答案.docx
全国各地市语文中考真题名著阅读分类汇编.docx
七年级历史下册易混易错84条.docx
湖北省2024-2025学年高一下学期4月期中联考语文试题及参考答案.docx
黑龙江省大庆市2025届高三第三次教学质量检测语文试卷及参考答案.docx