‘壹’ 单片机中用到多个定时计数器怎么办,可以复用吗怎么用,我要三个计时器,一个脉冲调制输出!
定时器都是在中断方式下使用,多个定时器同时使用没有任何问题。使用它们时各有各的中断地址,互不影响。要用3个定时器,要看选的单片机有没有那么多,一般的最多两个。高档一些的才有3个以上的定时器。
‘贰’ 单片机里如何使用多个定时器
将定时器定时到一个基数,比如10MS
然后通过各种标记来实现多个定时器
比如 FLAG_100MS 只要 DATA_100MS=10
FLAG_1S 只要 DATA_1S=100
FLAG_2S 只要 DATA_1S=200
类推
‘叁’ PIC单片机怎么同时用多个定时器
就一起用就是了啊 你的定时器中断的服务程序不一样 他俩各自定时到了自己就跑到自个的中断服务程序里面去了
TMOD=..
TH0=(65536-...)%256//第一个定时器,可以定时任意时间
TL0=(65536-....)/256
TH1=(65536-...)%256//这个是第二个定时器的定时时间
TL1=(65536-....)/256
EA=1
ET0=1
ET1=1
TR0=1//启动定时器1
TR1=1//启动定时器2
void timer 0() interrupt 1//这里你就可以写中断服务程序1
{
}
void timer 1() interrupt 3//这里你就可以写中断服务程序2
{
}
‘肆’ 单片机的多个延时用定时器如何处理
用定时器,定时1ms,每当到了、中断,就把 n1、n2、n3,分别加一,然后退出中断。
在主函数中,分别检测n1、n2、n3是否到了50、30、60,到了,就该干什么就干什么去。
用一个定时器,基本就可以满足所有的定时需求。
‘伍’ 单片机定时器 计数器的工作原理,及如何实现定时 计数功能
原理: 16位的定时器/计数器实质上就是一个加1计数器,其控制电路受软件控制、切换。 当定时器/计数器为定时工作方式时,计数器的加1信号由振荡器的12分频信号产生,即每过一个机器周期,计数器加1,直至计满溢出为止。
显然,定时器的定时时间与系统的振荡频率有关。因一个机器周期等于12个振荡周期,所以计数频率fcount=1/12osc。
两个字节最大数据为65536(十进制),或者0FFFFH(十六进制)
高字节为TH0=(65536-X)/256,就是除以256后的整数部分;
低字节为TL0=(65536-X)%256,减去高字节后余下的部分;
定时/计数器
定时/计数器T0和T1分别是由两个8位的专用寄存器组成,即定时/计数器T0由TH0和TL0组成,T1由TH1和TL1组成。此外,其内部还有2个8位的特殊功能寄存器TMOD和TCON,TMOD负责控制和确定T0和T1的功能和工作模式,TCON用来控制T0和T1启动或停止计数,同时包含定时/计数器的状态。
以上内容参考:网络-定时器中断
‘陆’ 如何让c51单片机多个定时计数器同时工作
C51单片机的定时/计数器是可以同时工作的,如果用作定时器,它的计数时基就是时钟分频得来,各个定时器会共用一个时钟,只要设置好定时/计数器的工作模式,设置初值,然后就可以启动定时/计数器了.用作计数器时它的时基就变成外输入而已,原理是一样的.
‘柒’ 单片机c语言里怎么用2个定时器
有几个步骤。
首先说明一下几个和定时器有关的寄存器。
第一,方式控制寄存器TMOD,地址89H,不可位寻址,这个寄存器可以对定时器的工作方式进行设置。
第二,TCON寄存器,地址88H,可以位寻址,控制寄存器的开启关闭,寄存器的溢出标志也在这个寄存器中。
第三,中断控制寄存器IE,用来控制各中断的开启或关闭。
现在开始介绍2个定时器的用法
1。设置TMOD
2。分别给两个定时器赋初值
3。开中断
4。开启定时器
5。设置循环语句等待中断
下面举一个例子:
#include
void
main(void)
{
TMOD=0x01;//前四位控制t1,后四位控制t0
TH0=0x00;//赋初值
TL0=0x00;
TH1=0x43;
TL1=0x32;
EA=1;//开总中断
ET0=1;//开t0中断
ET1=1;//开t1中断
TR0=1;//开启定时器t0
TR1=1;//开启定时器t1
while(1)//等待中断
{
}
}
‘捌’ 51单片机有多少个定时器其核心是什么
51单片机有2个定时器,其核心是一个计数器,对内部脉冲计数是定时,计外部脉冲是计数。
‘玖’ 单片机两个定时器同时使用
“延迟”是占据
资源的“延迟”不能这样做时,而“定时器”单片机
其他工作不会占用
时间还没有到达
单片机可以做其他工作
所以在一些实时检测系统的基础上,定时模式
‘拾’ 关于51单片机多个定时器问题
这个要看中断服务函数里有多少程序要运行。。。
开始时是怎么个计数状态(计数起始间隔。。。)
这里主要是尽量不要引起中断嵌套。。。
但是只要两个定时器之间计数起始间隔够远,不同时刻运行中断函数就行了。。。。