在论定时器

当我们用到定时器的时候,首先我们应该设置相关控制寄存器如 OPTION

然后设置初值怎么样设置初始值呢在这里我们以4MHzCPU为例说明一下

首先我们应该求出时钟频率是4MHz

然后求出指令频率4/4 = 1MHz 指令频率为1MHz,可以求出指令周期 等于 1/1MHz = 0.0000001S = 1us;

因为TMR0可以计算256次 所以计算256次所花的时间是256us。也就是定时器每溢出一次的时间

如果我们想定时1秒的话,那么需要溢出多少次呢,

1秒= 1000MS = 1000000US;

那么 1000000/256 = 3906  这里的意思是在1s的时间内可以溢出多少次

有以上的计算可以看出总共需要溢出3906次,也就是说定溢出3906次以后就用去啦1s钟的时间

需要注意的是在PIC单片机中timer0是没有开始位和停止位,上电之后就开始运行。

假设我们要定时50MS

那么256*Y = 50000;

Y = 195 也就是说如果要定时50ms的话需要溢出195次

初始值等于

256-195=60.6875

 

你可能感兴趣的:(定时器)