大家好 我刚开始学习单片机 我想知道定时器0定时 达到最长时间是多少
时间:10-02
整理:3721RD
点击:
让我定时二三十毫秒进行溢出延时我还是会的 但是真正求最大能够定时多长时间我真的不懂了 请教一下大家伙 求详解
使用不同晶振机器周期也不同,比如使用12Mhz的晶振,一个机器周期就是1s/12M*12=1us,使用6Mhz的晶振一个机器周期就是2微秒。每个机器周期,计数器加1,所以定时时间Time=计数次数N*机器周期t
然后就要看计数方式了。
方式0:max=2^13
方式1:max=2^16
我刚学,方式2,3忘了。
单次溢出65536*时钟周期
最长为65536毫秒
错了,最长时间是8192毫秒
为什么会是8192ms呢? 求解步骤
2的13次方,也就是8192,因为定时器工作方式0是13位的
定时器不就是TH0 TL0嘛 分高低8位 这个13位?
微秒
微秒
看你用的方式了,一般我都是用16位,那么在不累加数的情况下,最大可以65536微秒中断一次。
定时器工作方式1,16位定时器。最大定时为:65535*12/晶振频率
s
。。
这些也得看你用的晶振频率
方式0:2^13*2=8192*2=16384us
方式1:2^16*2=65536*2=131072us
方式2:2^8*2=256*2=512us
方式3:同方式2一样多。
定时器有定时器T0和T1两个,他们都有4种工作方式,方式0~3分别是13位(8192us)、16位(65536us)、8位(256us)自动重载和t0两个8位计数T1停止(晶振12MHz)
我也是刚开始学习单片机,我们都一样
顶。。
顶。。
