【摘要】:方式0采用TLx的低5位和THx的高8位组成了一个13位的加1计数器,计满值为213,图6.5是T0方式0的逻辑结构图。方式0采用13位计数器是为了与早期的MCS-48系列单片机兼容。方式0的定时时间t和计数初值分别按下式计算t=×12/fosca=213-t×fosc/12方式0的计数初值a与计数值N的关系为:N=213-a注意:方式0的TLx中高3位是无效的,可为任意值,计算初值时需特别注意。设fosc=12MHZ,计算定时器T0工作于方式0用以产生5ms定时的计数初值。
当M1M0被设置为00时,定时/计数器工作于方式0。方式0采用TLx的低5位和THx的高8位组成了一个13位的加1计数器,计满值为213,图6.5是T0方式0的逻辑结构图。
图6.5 工作方式0的逻辑结构
可见,除了计数器的位数不同外,方式0与方式1的逻辑结构并无差异。方式0采用13位计数器是为了与早期的MCS-48系列单片机兼容。
方式0的定时时间t和计数初值分别按下式计算
t=(213-a)×12/fosc
a=213-t×fosc/12
方式0的计数初值a与计数值N的关系为:
N=213-a(www.xing528.com)
注意:方式0的TLx中高3位是无效的,可为任意值,计算初值时需特别注意。
【例6.2】设fosc=12MHZ,计算定时器T0工作于方式0用以产生5ms定时的计数初值。
解:由方式0的计数初值表达式,可得
a=213-5000×12/12=3192=1100 0111 1000B
由于方式0采用13位计数器,需要在上述理论初值的第5位和第6位二进制数之间插入3位二进制,故调整后的计数初值为:
a=110 0011 0001 1000=0x6318
比较方式1和方式0初值的计算可以看出,方式0的初值计算较为麻烦,因此实际应用中常用16位的方式1取代。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。