本應用筆記將詳細描述如何將AD9832/AD9835器件的輸出編程為5 MHz。其中將詳細說明頻率寄存器(frequency register)、遲延寄存器(defer register)和命令序列(command sequence)。
頻率寄存器
AD9832含有一個32位頻率寄存器。該寄存器如下所示,分解為4個字節(jié)。由于AD9832在任一命令中僅接受8位數(shù)據(jù),為了完全編程32位寄存器,用戶必須輸入4條命令,每條命令僅傳送8位數(shù)據(jù)。
出于尋址目的,該32位寄存器按以下方式分解:16 MSB定義為8個高位(H)和8個低位(L)。類似地,16 LSB采用相同的尋址方案,8個高位(H)和8個低位(L)。
頻率字
頻率字為32位,由用戶輸入至頻率寄存器。該頻率字決定輸出頻率,其依據(jù)是所需輸出頻率與參考時鐘頻率之比。在以下示例中,參考時鐘為25 MHz。所需輸出為5 MHz,因此,頻率字的計算公式為:
(5/25) × (0xFFFFFFFF) = 0x33333333
遲延寄存器
遲延寄存器(帶寬16位)充當被寫入的最后一個寄存器的緩沖寄存器。遲延寄存器通過兩次寫操作寫入。前8位將保留(遲延)于寄存器中,直到寫入下8位。當全部16位均寫入寄存器時,頻率寄存器將被更新。遲延寄存器始終指向上次被寫入的地址。
由于遲延寄存器保存著上次被寫入的16位數(shù)據(jù),并且仍然指向上次被尋址的頻率寄存器,因此,可通過一次寫操作更新低8位或高8位。該操作被稱為直寫,實際上為正常寫序列的最后部分。
請注意,如果用戶希望寫入到任何其他寄存器,則必須執(zhí)行如上所示的完整寫序列。
5 MHz程序的全部命令序列
0xF800 二進制 (1111 1000 0000 0000)
0x3333 二進制 (0011 0011 0011 0011)
0x2233 二進制 (0010 0010 0011 0011)
0x3133 二進制 (0011 0001 0011 0011)
0x2033 二進制 (0010 0000 0011 0011)
0xC000 二進制 (1100 0000 0000 0000)
命令序列說明
考慮到本文需要,16位SPI字將采用以下尋址方式:
D15, D14, D13, ..., D2, D1, D0
0xF800 | 二進制 (1111 1000 0000 0000) |
D15, D14 | 1,1. 表示D13、D12和D11三位處于有效狀態(tài)。這種情況下: |
D13 | 1, SLEEP位,將器件置于睡眠模式。 |
D12 | 1, RESET位,將器件置于復位模式,即DAC的輸出為中量程。 |
D11 | 1, CLR位,當CLR = 1時,SYNC和SELSRC設為1??煽刂七x擇哪個寄存器用于外部引腳,而不通過軟件。CLR將自動復位為0。 |
D10...D0 | 0.(它們是無關位,X。) |
現(xiàn)在即可開始對器件編程。 | |
0x3333 | 二進制 (0011 0011 0011 0011) |
命令分解如下: | |
0011 | /*向遲延寄存器寫入8個頻率位*/ |
0011 | /*寫入頻率寄存器0, H MSB */ |
0011 0011 | /*8位寫入數(shù)據(jù)*/ |
0x2233 | 二進制 (0010 0010 0011 0011) |
0010 | /*向遲延寄存器寫入8個頻率位*/ |
0010 | /*寫入頻率寄存器0, L MSB */ |
0011 0011 | /*8位寫入數(shù)據(jù)*/ |
現(xiàn)在,16位被載入頻率寄存器0的上16位。 | |
0x3133 | 二進制 (0011 0001 0011 0011) |
0011 | /*向遲延寄存器寫入8個頻率位*/ |
0001 | /*寫入頻率寄存器0, H LSB */ |
0011 0011 | /*8位寫入數(shù)據(jù)*/ |
0x2033 | 二進制 (0010 0000 0011 0011) |
0010 | /*向遲延寄存器寫入8個頻率位*/ |
0000 | /*寫入頻率寄存器0, L LSB */ |
0011 0011 | /*8位寫入數(shù)據(jù)*/ |
此時16位被載入頻率寄存器0的下16位。 | |
0xC000 | 二進制 (1100 0000 0000 0000) |
D15, D14 | 1,1. 表示D13、D12和D11三位處于有效狀態(tài)。這種情況下: |
D13 | 0, SLEEP位,使器件脫離睡眠模式。 |
D12 | 0, RESET位,使器件脫離復位模式。 |
D11 | 0, CLR位, |
D10...D0 | 0(本命令的無關位。) |
現(xiàn)在,5 MHz將出現(xiàn)于輸出引腳上。FSELECT引腳必須拉至GND,以選擇頻率寄存器0。
審核編輯:郭婷
-
寄存器
+關注
關注
31文章
5343瀏覽量
120385 -
頻率
+關注
關注
4文章
1500瀏覽量
59230
發(fā)布評論請先 登錄
相關推薦
評論