如同 之前所述 的,我為市面上較常見的幾種 signal generator 模組寫了 python drivers ,其中 ADF4351 可產生 35MHz ~ 4400MHz 的頻率,很適合 SDR 領域的應用。
它的 block diagram 如下,控制起來比 AD9833 複雜多了。
還好藉著 USB-SPI converter 之助,我們現在可以把網路上既有的 driver 複製到 PC 上來控制 ADF4351,同時用 PyCharm 的 debug mode 來 trace,再對照 datasheet 就可以比較快速地掌握控制它的方式。
Configuration 狀態的展現:
Dependencies:
還好藉著 USB-SPI converter 之助,我們現在可以把網路上既有的 driver 複製到 PC 上來控制 ADF4351,同時用 PyCharm 的 debug mode 來 trace,再對照 datasheet 就可以比較快速地掌握控制它的方式。
做法與特色
- 除了 前文所述 的之外, 針對 ADF4351 還有以下的 做法與特色:
- 多種 USB-SPI converter 可選擇:
- 使用 Cypress USB Control Center 將 adf4xxx_usb_fw_2_0.iic 刷到 FX2LP 上面即可。
- 接腳 (參考來源)
- 可以列出當下 重要參數的狀態
- Registers 狀態的比較:
- 可以針對 兩組不同的 registers 設定值 做比較,並列出各個欄位的差異,這在 development 階段 debug 時候非常有用。
- 尋找 生成頻率所需的 dividers 的整數解
測試結果
Functional tests:
- Tested as in this notebook
Frequency Dancing (Sweeping)
- Tested with this notebook:
Control ADF4351 with PC + FT232H (USB-SPI converter)
Control ADF4351 with PC + FX2LP (USB-SPI converter)
- Also, we can upload the driver to an ESP32 and control ADF4351 from there.
Control ADF4351 with ESP32+MicroPython
Modulations
沒有留言:
張貼留言