IP - 射频数据转换器 -04- API使用指南 - 系统设置相关函数

简介: IP - 射频数据转换器 -04- API使用指南 - 系统设置相关函数

前言


本文主要介绍关于RF数据转换器的系统配置函数的相关使用方法。

用户API函数


所有用户 API 函数都在源文件 xrfdc.c 中实现。 这些原型在头文件 xrfdc.h 中提供。

系统设置


所有驱动程序 API 函数都将 InstancePtr 作为参数。 它是指向 XRFdc 结构的指针,其中包含有关基地址、指向 RFdc 默认配置的结构以及 RF-ADC 和 RF-DAC tile 配置的结构的信息。 InstancePtr 参数在 XRFdc_CfgInitialize API 函数中初始化。 在调用任何其他函数之前,调用 XRFdc_CfgInitialize API 函数来初始化 InstancePtr。

XRFdc_CfgInitialize


函数原型

u32 XRFdc_CfgInitialize(XRFdc *InstancePtr, XRFdc_Config *ConfigPtr);

参数

  • XRFdc * InstancePtr:指向驱动程序实例的指针。
  • *XRFdc_Config ConfigPtr:指向配置结构的指针。

描述

此 API 函数通过从配置结构复制相关条目来填充驱动程序实例中的适当条目。与 RFdc 驱动程序 API 的任何软件交互都需要此函数,并且必须在使用任何其他 API 函数之前首先调用此函数。

返回值

XRFDC_SUCCESS

XRFDC_FAILURE

XRFdc_LookupConfig


函数原型

XRFdc_Config *XRFdc_LookupConfig(u16 DeviceId);

参数

  • u16 DeviceId:需要其配置信息的设备的ID。

描述

该 API 函数根据设备的唯一 ID 查找设备配置。 一个表包含系统中每个设备的配置信息。

返回值

该函数返回一个指向找到的配置的指针,如果未找到指定的设备 ID,则返回 NULL。

XRFdc_RegisterMetal


函数原型

u32 XRFdc_RegisterMetal(XRFdc *InstancePtr, u16 DeviceId, struct metal_device **DevicePtr);

参数

  • XRFdc * InstancePtr:指向驱动程序实例的指针。
  • u16 Device_Id:驱动程序的设备ID。
  • struct metal_device **DevicePtr:指向metal设备的指针。

描述

该 API 函数使用 Libmetal 注册RFDC。

返回值

XRFDC_SUCCESS

XRFDC_FAILURE

XRFdc_StartUp


函数原型

u32 XRFdc_StartUp(XRFdc *InstancePtr, u32 Type, int Tile_Id);

参数

  • *XRFdc InstancePtr:指向驱动程序实例的指针。
  • u32 Type :RF-ADC 或 RF-DAC; RF-ADC 为 0,RF-DAC 为 1。
  • int Tile_Id :RF-ADC/RF-DAC 块编号。 有效值为 0-3 和 -1(适用于所有片)。

描述

此 API 函数根据 Tile_Id 的请求重新启动片。 如果 -1 作为 Tile_Id 传递,该函数将重新启动所有启用的切片。 现有寄存器设置不会在此过程中丢失或更改。

返回值

XRFDC_SUCCESS

XRFDC_FAILURE(在 tile 未启用或可用时返回)

XRFdc_Shutdown


函数原型

u32 XRFdc_Shutdown(XRFdc *InstancePtr, u32 Type, int Tile_Id);
  • *XRFdc InstancePtr : 指向驱动程序实例的指针。
  • u32 Type : RF-ADC 或 RF-DAC; RF-ADC 为 0,RF-DAC 为 1。
  • int Tile_Id: 有效值为0-3 和-1(适用于所有图块)。

描述

此 API 函数根据 Tile_Id 的请求停止片。 如果 -1 作为 Tile_Id 传递,该函数将停止所有启用的切片。 现有的寄存器设置不会被清除。这是 RF-ADC 和 RF-DAC 块的通用 API 函数。

返回值

XRFDC_SUCCESS

XRFDC_FAILURE(在tile未启用或可用时返回)

XRFdc_Reset


函数原型

u32 XRFdc_Reset(XRFdc *InstancePtr, u32 Type, int Tile_Id);

参数

  • *XRFdc InstancePtr: 指向驱动程序实例的指针。
  • u32 Type: RF-ADC 或 RF-DAC; RF-ADC 为 0,RF-DAC 为 1。
  • int Tile_Id : 有效值为0-3 和-1(适用于所有图块)。

描述

此 API 函数通过 Tile_Id 请求重置图块。 如果 -1 作为 Tile_Id 传递,它将重置所有启用的图块。 所有现有的寄存器设置都将被清除并替换为最初配置的设置。这是 RF-ADC 和 RF-DAC 块的通用 API 函数。

返回值

XRFDC_SUCCESS

XRFDC_FAILURE(在tile未启用或可用时返回)

XRFdc_CustomStartUp


函数原型

u32 XRFdc_CustomStartUp(XRFdc *InstancePtr, u32 Type, int Tile_Id, u32 StartState, u32 EndState);

参数

  • *XRFdc InstancePtr: 指向驱动程序实例的指针。
  • u32 Type: RF-ADC 或 RF-DAC; RF-ADC 为 0,RF-DAC 为 1。
  • int Tile_Id : 有效值为0-3 和-1(适用于所有图块)。
  • u32 StartState :启动 IPSM 的状态。
  • u32 Endstate : 最高 IPSM 的状态。

image.png

描述

此 API 函数按照通过 Tile_Id 的请求,将 IPSM 从 StartState 运行到 EndState。 如果 -1 作为 Tile_Id 传递,则该函数针对所有启用的图块运行。 如果 StartState 为 XRFDC_STATE_OFF,现有寄存器设置将丢失或更改。

返回值

XRFDC_SUCCESS


XRFDC_FAILURE

XRFdc_DumpRegs


函数原型

void XRFdc_DumpRegs (XRFdc *InstancePtr, u32 Type, int Tile_Id);

参数

  • *XRFdc InstancePtr: 指向驱动程序实例的指针。
  • u32 Type: RF-ADC 或 RF-DAC; RF-ADC 为 0,RF-DAC 为 1。
  • int Tile_Id : 有效值为0-3 和-1(适用于所有图块)。

说明

该函数用于调试目的。它将寄存器中的内容打印到控制台,以显示所传递的Tile_Id。如果通过了-1,它将打印出相应的RF-ADC或RF-DAC的所有瓦片的寄存器内容。它打印出寄存器的偏移量以及内容。

目录
相关文章
|
19天前
|
安全 Java 大数据
Qt 窗口常用位置API函数 & 绘图原理 & 双缓冲机制 总结
Qt 窗口常用位置API函数 & 绘图原理 & 双缓冲机制 总结
|
8天前
|
JSON API 数据格式
淘宝商品评论数据获取:从API调用到应用实践
在电商的世界里,用户评论是洞察商品质量的一扇窗。淘宝,作为中国最大的在线购物平台,其海量的商品评论数据尤为宝贵。本文将带您走进淘宝商品评论数据的获取之旅,从API调用的基础知识到实际应用的代码示例,一探究竟。
|
14天前
|
分布式计算 DataWorks 关系型数据库
DataWorks操作报错合集之在DataWorks同步数据时,遇到乱码问题,该怎么解决(rest api数据源)
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
22 0
|
14天前
|
数据采集 分布式计算 DataWorks
DataWorks产品使用合集之DataWorks数据地图中的数据发现相关api接口调用如何解决
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
23 0
|
17天前
|
Java API 开发者
【专栏】Java 8的Stream API是处理集合数据的新方式,强调简洁和声明式编程
【4月更文挑战第27天】Java 8的Stream API是处理集合数据的新方式,强调简洁和声明式编程。它基于延迟执行和惰性求值,提供创建、中间操作(如filter、map)和终端操作(如forEach、collect)。示例展示了如何通过Stream排序、过滤、映射和聚合数据。
|
20天前
|
SQL 关系型数据库 API
从API获取数据并将其插入到PostgreSQL数据库:步骤解析
使用Python处理从API获取的数据并插入到PostgreSQL数据库:安装`psycopg2`,建立数据库连接,确保DataFrame与表结构匹配,然后使用`to_sql`方法将数据插入到已存在的表中。注意数据准备、权限设置、性能优化和安全处理。
|
21天前
|
JSON JavaScript API
访问REST API:在Vue中消费和管理远程数据
【4月更文挑战第23天】本文探讨了在Vue应用中高效访问REST API的方法,包括选择合适的API、使用Axios或Fetch发送请求、封装API服务、处理响应和数据、错误管理及性能优化。关键点在于创建服务层封装请求,使用计算属性和方法处理数据,以及实施错误处理和性能提升策略。通过这些最佳实践,开发者能更好地管理和消费远程数据,构建出动态、响应式的Vue应用。
|
25天前
|
API Go
使用Go语言通过API获取代理IP并使用获取到的代理IP
使用Go语言通过API获取代理IP并使用获取到的代理IP
|
26天前
|
安全 Java API
java借助代理ip,解决访问api频繁导致ip被禁的问题
java借助代理ip,解决访问api频繁导致ip被禁的问题