当前位置:   article > 正文

ZedBoard+AD9361_FPGA的PL端纯逻辑(verilog)配置控制9361(二)_将寄存器脚本文件转换成Verilog函数_ad9361 .cfg转.v

ad9361 .cfg转.v

在上一章节我们用AD936X Evaluation Software 软件生成了寄存器配的脚本文件FDD,具体内容如下:由于配置内容太多,大部分进行了省略。从配置文件中我们可以查看每个寄存器应该配置的参数,但是并不能直接在FPGA工程中调用,需要对文件格式进行修改,改成function函数形式,可以在工程中直接调用。如果人工一行一行修改,基本不可能,太费事,因此需要找出配置文件的规律,依靠自己编写的程序直接自动转换成我们需要的函数形式。

脚本自动转换程序下载: 百度网盘   提取码:mww7

  1. //************************************************************
  2. // AD9361 R2 Auto Generated Initialization Script: This script was
  3. // generated using the AD9361 Customer software Version 2.1.3
  4. //************************************************************
  5. // Profile: Custom
  6. // REFCLK_IN: 40.000 MHz
  7. RESET_FPGA
  8. RESET_DUT
  9. BlockWrite 2,6 // Set ADI FPGA SPI to 20Mhz
  10. SPIWrite 3DF,01 // Required for proper operation
  11. ReadPartNumber
  12. SPIWrite 2A6,0E // Enable Master Bias
  13. SPIWrite 2A8,0E // Set Bandgap Trim
  14. REFCLK_Scale 40.000000,1,2 // Sets local variables in script engine, user can ignore
  15. SPIWrite 292,08 // Set DCXO Coarse Tune[5:0]. Coarse and Fine nominal values used with eval system. Other nominal values may be needed in a customer system
  16. SPIWrite 293,80 // Set DCXO Fine Tune [12:5]
  17. SPIWrite 294,00 // Set DCXO Fine Tune [4:0]
  18. SPIWrite 2AB,07 // Set RF PLL reflclk scale to REFCLK * 2
  19. SPIWrite 2AC,FF // Set RF PLL reflclk scale to REFCLK * 2
  20. SPIWrite 009,07 // Enable Clocks
  21. WAIT 20 // waits 20 ms
  22. //
  23. //
  24. //
  25. //此处省略多行内容
  26. //
  27. //
  28. //
  29. SPIWrite 076,00
  30. //************************************************************
  31. // Setup RSSI and Power Measurement Duration Registers
  32. //************************************************************
  33. SPIWrite 150,0B // RSSI Measurement Duration 0, 1
  34. SPIWrite 151,00 // RSSI Measurement Duration 2, 3
  35. SPIWrite 152,FF // RSSI Weighted Multiplier 0
  36. SPIWrite 153,00 // RSSI Weighted Multiplier 1
  37. SPIWrite 154,00 // RSSI Weighted Multiplier 2
  38. SPIWrite 155,00 // RSSI Weighted Multiplier 3
  39. SPIWrite 156,00 // RSSI Delay
  40. SPIWrite 157,00 // RSSI Wait
  41. SPIWrite 158,0D // RSSI Mode Select
  42. SPIWrite 15C,69 // Power Measurement Duration

配置文件中包含三部分:读寄存器,写寄存器,延迟等待。SPIWrite表示写寄存器,下面表格中都读寄存器。

 根据总结的规律,我编写了一个脚本自动转化软件,可以直接将AD936X Evaluation Software 软件生成的脚本转换成FPGA可以直接调用的Verilog的function函数,加快9361的配置过程。

具体方法如下:双击程序图标

 软件打开界面,点击绿色按钮。

 选择AD936X Evaluation Software 软件生成的脚本文件,即可直接得到转换的Verilog的function函数。

 默认在电脑D盘生成ad9361_lut.v文件,可以将该文件直接调用到FPGA工程即可。

 利用这个转换软件轻松得到我们需要的函数格式。下面就是编写SPI和寄存器的读写状态机文件,将转换的ad9361_lut.v文件中的寄存器值写到ad9361中去,请看博客下一章节。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/462758
推荐阅读
相关标签
  

闽ICP备14008679号