Timer1 RD16位在PIC18单片机上的作用是什么?

Nat*_*ate 2 microcontroller timer microchip pic pic18

我真的很困惑.手册说:

RD16: 16-bit Read/Write Mode Enable bit
1= Enables register Read/Write of Timer1 in one 16-bit operation
0= Enables register Read/Write of Timer1 in two 8-bit operations
Run Code Online (Sandbox Code Playgroud)

但是,实际上似乎没有任何方法可以通过一个16位操作进行R/W!从数据表后面的内容以及我在网上看到的内容来看,16位值仍必须读作:

foo = TMR1L;
bar = TMR1H;
Run Code Online (Sandbox Code Playgroud)

写作:

TMR1H = bar;
TMR1L = foo;
Run Code Online (Sandbox Code Playgroud)

除非我没有看到它,否则RD16没有显示在Timer1框图中,似乎对任何事情都没有影响!

我知道这不可能是真的,所以我在这里问:Timer1 RD16位对PIC18单片机有什么作用?

Jam*_*mes 6

它在内部缓冲.置1时,TMR1L寄存器上的读操作会导致实际的16位值被缓冲.TMR1L/H指向缓冲区,而不是计时器.

  • 如果未设置则指向实际的定时器寄存器,因此您可能会遇到这样的风险:当您读取H值时,定时器将会翻转. (4认同)