个性化阅读
专注于IT技术分析

使用8051单片机进行计数器/计时器计算和编程

本文概述

在应用软件中, 延迟是影响软件开发过程的重要因素之一。但是, 正常延迟将不会提供特定的结果来克服实现计时器延迟的问题。

计数器和计时器是微控制器的硬件组件, 在许多应用中使用该计数器来提供带有计数脉冲的宝贵时间延迟。计数器和计时器都通过使用软件技术来实现。


计时器和计数器之间的区别

让我们看一下区分计时器和计数器的几点, 如下所示:

计数器 小时
考虑到与外部输入引脚(T0, T1)相对应的1到0的跳变, 该寄存器将递增。 寄存器在每个机器周期内递增。
计数器使用外部信号来计数脉冲。 计时器使用内部时钟信号的频率, 并产生延迟。
最大计数率是振荡器频率的1/24。 最大计数率是振荡器频率的1/12。

计时器延迟

让我们看一下使用timer1和mode2(T1M2)生成时间延迟的程序:

#include<reg51.h>
void main()
{
unsigned char j;
TMOD=0x20; 	//set the timer mode//
for(j=0;j<2;j++) 	//double the time delay//
{
TL1=0x19; 		//set the time delay//
TH1=0x00;
TR1=1; 		//timer is on//
While(TF1==0); 	//check the flag bit//
TF1=0;
}
TR1=0; 		//timer is off//
}

正常循环延迟

void delay()
{
unsigned int j;
for(j=0;j<30000;j++);
}
赞(0)
未经允许不得转载:srcmini » 使用8051单片机进行计数器/计时器计算和编程

评论 抢沙发

评论前必须登录!