我真的对定时器不太了解,但我正在尝试更改 timer0 以使其在 16 位模式下使用 1:64 的预分频器?我从 Microchip 获得了定时器代码,它使用 8 位模式,没有预分频器。下载文件
这是我怀疑必须处理预分频器的代码的一部分。
TMR_CON = 0b00000000 | CLOCK_DIVIDER_SETTING;
TMR_IP = 1;
TMR_IF = 0;
TMR_IE = 1;
TMR_ON = 1;
这是PIC18F87J11 数据表中有关预分频器的一些信息
T0PS2:T0PS0: Timer0 Prescaler Select bits
111 = 1:256 Prescale value
110 = 1:128 Prescale value
101 = 1:64 Prescale value
100 = 1:32 Prescale value
011 = 1:16 Prescale value
010 = 1:8 Prescale value
001 = 1:4 Prescale value
000 = 1:2 Prescale value
我假设要使用 1:64 预标量,代码必须更改为以下,对吗?
TMR_CON = 0b00000101 | CLOCK_DIVIDER_SETTING;
TMR_IP = 1;
TMR_IF = 0;
TMR_IE = 1;
TMR_ON = 1;
现在,请告诉我如何将其从 8 位模式更改为 16 位模式?就像我说我是初学者,所以请解释一下我的理解水平。
我提前感谢它!