我真的很困惑。手册说:
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
然而,实际上似乎没有任何方法可以通过一个16位操作进行R / W!从数据表后面的内容以及我在网上看到的内容来看,16位值仍必须读作:
foo = TMR1L;
bar = TMR1H;
写作:
TMR1H = bar;
TMR1L = foo;
除非我没有看到它,否则RD16没有显示在Timer1程序框图中,似乎对任何事情都没有影响!
我知道这不可能是真的,所以我在这里问:Timer1 RD16位在PIC18单片机上的作用是什么?
答案 0 :(得分:6)
它在内部缓冲。置1时,TMR1L寄存器上的读操作会导致实际的16位值被缓冲。 TMR1L / H指向缓冲区,而不是计时器。