Microchip PIC周期寄存器PR2

时间:2013-06-29 13:57:44

标签: c microcontroller pic microchip

来自Microchip示例代码

PR2 = 2083u;     /* Timer2 Period, 19.2 kHz */ 

2083u如何对应19.2 kHz,即

1 / 19.2E03 = 52.083u

它们根本不对应。 Microchip的错误?

2 个答案:

答案 0 :(得分:4)

PR2 = 2083U

使TIMER2每2083个CPU周期触发一次。计算

52.083 us / 2083 = 25 ns
1 / 25 ns = 40 MHz

我们可以得出结论,处理器可能在示例中以FCY = 40 MHz运行。

u中的PR2 = 2038u;字母并不代表微秒;它是一种C语言语法,使整数文字无符号。请参阅Signedness (Wikipedia)

答案 1 :(得分:0)

将PR2设置为2083意味着定时器每2084(而不是2083)个时钟周期触发一次。计算定时器周期时,总是必须减1,因为定时器值从零开始。