当前位置: 首页 > news >正文

AD936x_IIO Oscilloscope基本使用技巧

文章目录

  • IIO Oscilloscope基本介绍
  • AD936x 自测
  • DDS信号
    • One CW Tone
    • Two CW Tones
    • QPSK_20MH

IIO Oscilloscope基本介绍

在这里插入图片描述
本次射频芯片是AD9364,具体AD9361、AD9363、AD9364的区别,可以看笔者的相关博客。找到设备后,直接点击连接即可。
在这里插入图片描述
主界面的Debug选项卡,在选择Devicew为ad9361-phy后可用读取或写入AD936x的某个寄存器的值。
在这里插入图片描述
主界面的DMM选项卡,可以查看AD936x和FPGA内部的温度、电压等数据。
在这里插入图片描述

主界面的AD936x选项卡,可以对AD936x进行一些全局性的配置。
如ENSM的状态、校准的模式、FIR参数、外部时钟频率、以及接收链路和发射链路的基带带宽、采样频率、本振频率、端口选择、接收增益、发射衰减、增益控制模式、DDS信号。
在这里插入图片描述
主界面的AD936x Advanced选项卡,可设置AD936x更高级的功能。具体就不一一介绍,看选项卡的名字即可知道对应功能。

AD936x 自测

接下来,以AD936x自测功能为例,介绍一下该软件的具体使用方法。
在这里插入图片描述
上图是其官方参考手册中对于数字测试寄存器的介绍。我们通过使用上位机软件来反向验证其功能。
首先在AD936x选项卡中将ENSM Modes设置成fdd,以便可以同时接收和发射。将RX LO Frequency和TX LO Frequency设置成相同频率,这里将其设置为2400MHz。将TX1 DDS mode设置为Disable。
在这里插入图片描述
在无任何基带信号时,其频谱中P0为2400.012MHz。接下来设置Bist TONE为Injection Point TX,Level设为-6dB,Frequency设置为Fsamp/32,Fsamp为基带采样频率等于30.72MHz,故Frequency=0.96MHz。
在这里插入图片描述
观察频谱图,其中P1、P0频点频率为2399.040MHz和2400.960MHz,符合预期。功率不符合,因为测试信号是注入到AD936x发射端口,而频谱为接收端口信号的频谱。
切换到Debug端口读取寄存器0x3F4的数据为0x13,如下图。
在这里插入图片描述
改变设置,设置Bist TONE为Injection Point RX,Level设为0dB,Frequency设置为Fsamp/32。直接观察IQ信号波形如下。
在这里插入图片描述

在Channel Mask设置中,勾选C1-Q后,可以屏蔽Q路信号。
在这里插入图片描述

分别读取0x3F4和0x3F6寄存器的值如下。
在这里插入图片描述
在这里插入图片描述

DDS信号

One CW Tone

在这里插入图片描述

Two CW Tones

在这里插入图片描述

QPSK_20MH

在这里插入图片描述

相关文章:

  • 【小刘带你玩儿前端】什么是跨域以及如何解决?小刘带你轻松拿彻底解决~
  • 大数据必学Java基础(八十五):自定义注解
  • 跨平台应用开发进阶(四十二)vue与nvue页面设计方案探究
  • Pytorch的加速和优化
  • opencv PIL读取图像得到的图像格式
  • 支持JDK19虚拟线程的web框架,之三:观察运行中的虚拟线程
  • 基于Redis实现分布式锁(理论篇)
  • 一加8 pro 刷入 kali Hunter
  • 【C++】模板初阶
  • TPM分析笔记(十二)TPM PCR操作
  • 这里不适合做技术
  • aws ec2 配置jenkins和gitlab
  • 词缀 week 4th
  • Network 之十一 详解 PXE 原理、工作流程、服务端(Tiny PXE Server、Serva、Ubuntu)搭建
  • keras实现深度神经网络,keras实现卷积神经网络
  • es6要点
  • Javascript基础之Array数组API
  • LintCode 31. partitionArray 数组划分
  • Material Design
  • scala基础语法(二)
  • tensorflow学习笔记3——MNIST应用篇
  • 道格拉斯-普克 抽稀算法 附javascript实现
  • 复杂数据处理
  • 机器学习中为什么要做归一化normalization
  • 排序(1):冒泡排序
  • 软件开发学习的5大技巧,你知道吗?
  • 算法系列——算法入门之递归分而治之思想的实现
  • 推荐一款sublime text 3 支持JSX和es201x 代码格式化的插件
  • 移动端 h5开发相关内容总结(三)
  • - 语言经验 - 《c++的高性能内存管理库tcmalloc和jemalloc》
  • 原生 js 实现移动端 Touch 滑动反弹
  • 追踪解析 FutureTask 源码
  • ​学习一下,什么是预包装食品?​
  • # centos7下FFmpeg环境部署记录
  • (bean配置类的注解开发)学习Spring的第十三天
  • (第8天)保姆级 PL/SQL Developer 安装与配置
  • (二)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (力扣)循环队列的实现与详解(C语言)
  • (转)创业家杂志:UCWEB天使第一步
  • .Net CF下精确的计时器
  • .NET 中 GetHashCode 的哈希值有多大概率会相同(哈希碰撞)
  • .NET/C# 反射的的性能数据,以及高性能开发建议(反射获取 Attribute 和反射调用方法)
  • /bin/bash^M: bad interpreter: No such file ordirectory
  • [ HTML + CSS + Javascript ] 复盘尝试制作 2048 小游戏时遇到的问题
  • [ vulhub漏洞复现篇 ] struts2远程代码执行漏洞 S2-005 (CVE-2010-1870)
  • []sim300 GPRS数据收发程序
  • []新浪博客如何插入代码(其他博客应该也可以)
  • [2016.7 Day.4] T1 游戏 [正解:二分图 偏解:奇葩贪心+模拟?(不知如何称呼不过居然比std还快)]
  • [ajaxupload] - 上传文件同时附件参数值
  • [Android Studio] 开发Java 程序
  • [Angular] 笔记 16:模板驱动表单 - 选择框与选项
  • [ASP.NET MVC]Ajax与CustomErrors的尴尬
  • [BUUCTF]-Reverse:reverse3解析
  • [C#][DevPress]事件委托的使用
  • [Docker]四.Docker部署nodejs项目,部署Mysql,部署Redis,部署Mongodb