来自Microchip示例代码
PR2 = 2083u; /* Timer2 Period, 19.2 kHz */
2083u
如何对应19.2 kHz,即
1 / 19.2E03 = 52.083u
它们根本不对应。 Microchip的错误?
答案 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,因为定时器值从零开始。