2012-12-02 19 views
2

我真的很困惑。該手冊說:Timer1 RD16位在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 

但是,實際上似乎沒有任何方式來讀/寫一個16位操作!從什麼數據表後說,並從我在線閱讀,16位值仍然必須被理解爲:

foo = TMR1L; 
bar = TMR1H; 

而寫成:

TMR1H = bar; 
TMR1L = foo; 

除非我只是沒有看到它,RD16沒有顯示在Timer1的框圖中,似乎對任何事情都沒有影響!

然而,我知道這不是真的,所以在這裏,我問,Timer1 RD16位對PIC18單片機有什麼作用?

回答

6

它在內部被緩衝。置位時,對TMR1L寄存器的讀取會導致實際的16位值被緩衝。 TMR1L/H指向緩衝區,而不是定時器。

+0

然後當* *未設置時會發生什麼?似乎RD16位實際上並不影響我的任何事情.. – Nate

+4

未設置時,它指向實際的定時器寄存器,因此您冒着風險,在您讀取H值時,定時器會翻轉。 – James