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

本文主要是介绍ZedBoard+AD9361_FPGA的PL端纯逻辑(verilog)配置控制9361(二)_将寄存器脚本文件转换成Verilog函数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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

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

//************************************************************
// AD9361 R2 Auto Generated Initialization Script:  This script was
// generated using the AD9361 Customer software Version 2.1.3
//************************************************************
// Profile: Custom
// REFCLK_IN: 40.000 MHzRESET_FPGA	
RESET_DUT	BlockWrite	2,6	// Set ADI FPGA SPI to 20Mhz
SPIWrite	3DF,01	// Required for proper operation
ReadPartNumber
SPIWrite	2A6,0E	// Enable Master Bias
SPIWrite	2A8,0E	// Set Bandgap Trim
REFCLK_Scale	40.000000,1,2	// Sets local variables in script engine, user can ignore
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
SPIWrite	293,80	// Set DCXO Fine Tune [12:5]
SPIWrite	294,00	// Set DCXO Fine Tune [4:0]
SPIWrite	2AB,07	// Set RF PLL reflclk scale to REFCLK * 2
SPIWrite	2AC,FF	// Set RF PLL reflclk scale to REFCLK * 2
SPIWrite	009,07	// Enable Clocks
WAIT	20	// waits 20 ms//
//
//
//此处省略多行内容
//
//
//
SPIWrite	076,00
//************************************************************
// Setup RSSI and Power Measurement Duration Registers
//************************************************************
SPIWrite	150,0B	// RSSI Measurement Duration 0, 1
SPIWrite	151,00	// RSSI Measurement Duration 2, 3
SPIWrite	152,FF	// RSSI Weighted Multiplier 0
SPIWrite	153,00	// RSSI Weighted Multiplier 1
SPIWrite	154,00	// RSSI Weighted Multiplier 2
SPIWrite	155,00	// RSSI Weighted Multiplier 3
SPIWrite	156,00	// RSSI Delay
SPIWrite	157,00	// RSSI Wait
SPIWrite	158,0D	// RSSI Mode Select
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中去,请看博客下一章节。

这篇关于ZedBoard+AD9361_FPGA的PL端纯逻辑(verilog)配置控制9361(二)_将寄存器脚本文件转换成Verilog函数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/388016

相关文章

Python中的filter() 函数的工作原理及应用技巧

《Python中的filter()函数的工作原理及应用技巧》Python的filter()函数用于筛选序列元素,返回迭代器,适合函数式编程,相比列表推导式,内存更优,尤其适用于大数据集,结合lamb... 目录前言一、基本概念基本语法二、使用方式1. 使用 lambda 函数2. 使用普通函数3. 使用 N

MySQL中REPLACE函数与语句举例详解

《MySQL中REPLACE函数与语句举例详解》在MySQL中REPLACE函数是一个用于处理字符串的强大工具,它的主要功能是替换字符串中的某些子字符串,:本文主要介绍MySQL中REPLACE函... 目录一、REPLACE()函数语法:参数说明:功能说明:示例:二、REPLACE INTO语句语法:参数

Python脚本轻松实现检测麦克风功能

《Python脚本轻松实现检测麦克风功能》在进行音频处理或开发需要使用麦克风的应用程序时,确保麦克风功能正常是非常重要的,本文将介绍一个简单的Python脚本,能够帮助我们检测本地麦克风的功能,需要的... 目录轻松检测麦克风功能脚本介绍一、python环境准备二、代码解析三、使用方法四、知识扩展轻松检测麦

mysql5.7.15winx64配置全过程

《mysql5.7.15winx64配置全过程》文章详细介绍了MySQL5.7.15免安装版的配置步骤,包括解压安装包、设置环境变量、修改配置文件、初始化数据目录、安装服务、启动数据库、登录及密码修改... 目录前言一、首先下载安装包二、安android装步骤1.第一步解压文件2.配置环境变量3.复制my-

python中update()函数的用法和一些例子

《python中update()函数的用法和一些例子》update()方法是字典对象的方法,用于将一个字典中的键值对更新到另一个字典中,:本文主要介绍python中update()函数的用法和一些... 目录前言用法注意事项示例示例 1: 使用另一个字典来更新示例 2: 使用可迭代对象来更新示例 3: 使用

Jenkins的安装与简单配置过程

《Jenkins的安装与简单配置过程》本文简述Jenkins在CentOS7.3上安装流程,包括Java环境配置、RPM包安装、修改JENKINS_HOME路径及权限、启动服务、插件安装与系统管理设置... 目录www.chinasem.cnJenkins安装访问并配置JenkinsJenkins配置邮件通知

Conda国内镜像源及配置过程

《Conda国内镜像源及配置过程》文章介绍Conda镜像源使用方法,涵盖临时指定单个/多个源、永久配置及恢复默认设置,同时说明main(官方稳定)、free(逐渐弃用)、conda-forge(社区更... 目录一、Conda国内镜像源二、Conda临时使用镜像源指定单个源临时指定多个源创建环境时临时指定源

mybatisplus的逻辑删除过程

《mybatisplus的逻辑删除过程》:本文主要介绍mybatisplus的逻辑删除过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录myBATisplus的逻辑删除1、在配置文件中添加逻辑删除的字段2、在实体类上加上@TableLogic3、业务层正常删除即

MySQL配置多主复制的实现步骤

《MySQL配置多主复制的实现步骤》多主复制是一种允许多个MySQL服务器同时接受写操作的复制方式,本文就来介绍一下MySQL配置多主复制的实现步骤,具有一定的参考价值,感兴趣的可以了解一下... 目录1. 环境准备2. 配置每台服务器2.1 修改每台服务器的配置文件3. 安装和配置插件4. 启动组复制4.

通过配置nginx访问服务器静态资源的过程

《通过配置nginx访问服务器静态资源的过程》文章介绍了图片存储路径设置、Nginx服务器配置及通过http://192.168.206.170:8007/a.png访问图片的方法,涵盖图片管理与服务... 目录1.图片存储路径2.nginx配置3.访问图片方式总结1.图片存储路径2.nginx配置