国产嵌入式DSP教学实验箱_操作教程:22-AD采集DA输出实验(采集输出正弦波)

news2024/11/24 4:04:53

一、实验目的

掌握EMIFA、SPI的使用,了解AD7606、AD5724的芯片特性和使用,并实现基于AD7606采集、AD5724输出正弦波。

二、实验原理

StarterWare

StarterWare是一个免费的软件开发包,它包含了示例应用程序。StarterWare提供了一套完整的GPIO寄存器配置接口,简化了开发步骤,程序开发时只需要调用相应接口即可。

安装StarterWare 后,可在安装目录下找到 C6748 所有通用库函数和对应的源码(StarterWare的 drivers 目录下,部分位于其他相关目录下),同时可在安装目录docs 文件夹内找到所有库函数的使用方法。

image.png

硬件原理图

找到波形发生器、AD采集和DA输出,可查看相关控制引脚。

AD9833

image.png

AD7606

image.png

AD5724

image.png

波形发生器

TL6748-PlusTEB实验箱采用板载波形信号发生器,波形信号发生器采用的芯片是AD9833。

AD9833是一款低功耗、可编程波形发生器,能够产生正弦波、三角波和方波输出。

各种类型的检测、信号激励和时域反射应用都需要波形发生器。输出频率和相位可通过软件进行编程,调整简单。AD9833的输出电源范围是38mV~650mV。

AD9833

AD9833具有一个标准串行接口,使得该器件可以直接与数个微处理器接口。该器件采用外部串行时钟来向器件中写入数据或控制信息。通过该串行接口DSP可使用程序控制AD9833产生正弦波、三角波和方波输出。

image.png

A/D转换

A/D转换,即模数转换,是指将一个输入电压信号转换为一个输出的数字信号。一般分为四个步骤进行:取样、保持、量化和编码。前两个步骤在取样-保持电路中完成,后两步骤则在ADC中完成。

AD7606

TL6748-PlusTEB实验箱上的AD采集是基于 ADI AD7606 芯片进行设计的,具体特性如下:

八通道;

16bit采样;

支持串行和并行读取方式;

支持全部通道 200K 采样率并行采集和转换;

支持真正±10V 或±5V 的双极性信号输入。

模数转换工作过程

AD7606上8个通道的数据是同时采集,轮流转换的。

模数转换模块接到启动转换信号后,按照排序器的设置,开始转换第一个通道的数据;经过一个采样时间的延迟后,将采样结果放入转换结果寄存器保存;按顺序进行下一个通道的转换;如果为连续转换方式则从新开始转换过程;否则等待下一个启动信号。

image.png

D/A转换

D/A转换,即数模转换,是指将输入的二进制数字量转换成模拟量,以直流电压或直流电流的形式输出。D/A转换器实质上是一个译码器(解码器)。D/A转换器一般是由数码缓冲寄存器、模拟电子开关、参考电压和求和电路等组成。

AD5724芯片

TL6748-PlusTEB实验箱上的DA输出是基于 ADI AD5724 芯片进行设计的,具体特性如下:

12 位;

4 通道;

SPI 串行读取方式;

软件可调输出范围:0+5V、0+10V、0~+10.8V、±5V、±10V、±10.8V。

image.png

程序流程设计

程序流程设计中首先要进行外设使能配置和DSP中断初始化,接着初始化LCD的显示与触摸,然后初始化AD7606,初始化SPI和AD5724,接着初始化AD9833并输出波形,启动AD7606采集并将采集的波形显示到LCD上。最后进行触摸检测,控制AD7606启动和暂停,同时把采集到的数据通过AD5724进行同步输出。

image.png

源码

方向配置源码

管脚方向配置。

使用StarterWare 库函数将 GPIO 口配置为输出模式。相关函数通过“gpio.h”文件引用。

StarterWare API 接口。

GPIODirModeSet(SOC_GPIO_0_REGS, 1, GPIO_DIR_OUTPUT);

image.png

数据配置源码

数据寄存器配置。

使用StarterWare 库函数设置GPIO输出值。

相关函数通过“gpio.h”文件引用。

StarterWare API 接口。

GPIOPinWrite(SOC_GPIO_0_REGS, 3, GPIO_PIN_LOW);

image.png

三、操作现象

实验设备

本实验使用的硬件接口为波形发生器接口、ADC输入和DAC输出,所需硬件为实验板、仿真器、LCD、公头对公头SMA数据线、BNC公头转SMA公头转接线、示波器和电源。

image.png

硬件连接

(1)使用公头对公头SMA数据线连接波形发生器和ADC输入的V1通道

(2)通过BNC公头转SMA公头转接线连接实验板DAC输出的任一通道至示波器,测试过程中可切换测量通道

(3)连接仿真器和电脑的USB接口,

(4)将拨码开关拨到DEBUG模式01111,

(5)连接实验箱电源,拨动电源开关上电。

image.png

软件操作

导入工程

编译工程

将CCS连接开发板并加载程序

点击运行程序

LCD屏幕会显示采集的正弦波,同时示波器也会显示测量的DA输出波形

点击一下LCD屏,采集将停止,再次点击恢复采集。

实验结束后,先点击黄色按钮暂停程序运行,再点击红色按钮退出CCS与实验箱的连接,最后实验箱断电即可。

image.png

image.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1494899.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【CSP试题回顾】201512-2-消除类游戏

CSP-201512-2-消除类游戏 解题思路 输入棋盘大小和颜色: 首先,程序从标准输入读取两个整数n和m,分别代表棋盘的行数和列数。然后,程序读取接下来的n行输入,每行包含m个整数,代表棋盘上每个方格中的棋子颜色。 初始化…

Linux-查看服务器配置信息

一、查看操作系统 1.1、查看操作系统的版本 命令:cat /etc/redhat-release 1.2、查看系统内核 命令:uname –a 二、查看cpu信息 2.1、所有信息 lscpu [root@tes ~]# lscpu Architecture: x86_64 ##cpu架构 CPU op-mode(s): 32-bit, 64-bit Byte Order:…

Qt入门(一)Qt概述

Qt是什么? Qt是一个跨平台应用开发框架。 Qt既包括了一系列的Qt库,还包括诸多配套的开发工具如QtCreater,GUI Designer。Qt本身是由C开发的,但是也提供了其他编程语言的接口。 Qt的定位以及同类 学一种技术,最重要的是…

vue3 如何通过一个方法触发点击事件

需求&#xff1a;在通过一个btn按钮触发另外一个按钮的点击事件。达到点击ok&#xff08;model框按钮&#xff09;,触发create&#xff08;form表单&#xff09;按钮的事件 <!-- 1.首先通过ref创建了一个名为linkRef的引用变量&#xff0c;并将其初始化为null。 --> <…

MySQL进阶之(四)InnoDB数据存储结构之行格式

四、InnoDB数据存储结构之行格式 4.1 行格式的语法4.2 COMPACT 行格式4.2.1 记录的额外信息01、变长字段长度列表02、NULL 值列表03、记录头信息 4.2.2 记录的真实数据 4.3 Dynamic 和 Compressed 行格式4.3.1 字段的长度限制4.3.2 行溢出4.3.3 Dynamic 和 Compressed 行格式 4…

java工程师面试突击第二季分布式,Java视频

一. 什么是架构和架构本质 在软件行业&#xff0c;对于什么是架构&#xff0c;都有很多的争论&#xff0c;每个人都有自己的理解。 此君说的架构和彼君理解的架构未必是一回事。因此我们在讨论架构之前&#xff0c;我们先讨论架构的概念定义&#xff0c;概念是人认识这个世界的…

VMwareWorkstation17.0虚拟机搭建WindowsME虚拟机(完整安装步骤详细图文教程)

VMwareWorkstation17.0虚拟机搭建WindowsME虚拟机&#xff08;完整安装步骤详细图文教程&#xff09; 一、Windows ME安装准备工作3.1 Windows ME下载地址3.2 DOS软盘版下载地址3.3 UltraISO 4.用VMware虚拟模仿当年的电脑配置4.1 新建虚拟机4.2 类型配置4.3 类型配置4.4 选择版…

1、MQ_介绍、优缺点、类型等

MQ介绍 1. MQ概述 MQ&#xff08;Message Queue&#xff09;&#xff1a;消息队列&#xff0c;是基础数据结构中FIFO&#xff08;first in first out&#xff09;的一种数据结构。一般用来解决流量削峰、应用解耦、异步处理等问题&#xff0c;实现高性能&#xff0c;高可用&a…

NOC2023软件创意编程(学而思赛道)python小高组复赛真题

目录 下载原文档打印做题: 软件创意编程 一、参赛范围 1.参赛组别:小学低年级组(1-3 年级)、小学高年级组(4-6 年级)、初中组。 2.参赛人数:1 人。 3.指导教师:1 人(可空缺)。 4.每人限参加 1 个赛项。 组别确定:以地方教育行政主管部门(教委、教育厅、教育局) 认…

基于java springboot+VUE疫情防疫系统系统前后端分离设计和实现

基于java springbootVUE疫情防疫系统系统前后端分离设计和实现 博主介绍&#xff1a;5年java开发经验&#xff0c;专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域 作者主页 央顺技术团队 Java毕设项目精品实战案例《1000套》 欢迎点赞 收藏 ⭐留言…

K8s Pod 进阶

目录 资源限制 Pod 和容器的资源请求和限制 CPU 资源单位 内存资源单位 示例1 示例2 重启策略&#xff08;restartPolicy&#xff09; 示例 健康检查 探针的三种规则 Probe支持三种检查方法 示例1&#xff1a;exec方式 示例2&#xff1a;httpGet方式 示例3&…

C++--调整数组顺序使奇数位于偶数前面

题目&#xff1a; 输入一个整数数组&#xff0c;实现一个函数来调整该数组中数字的顺序&#xff0c;使得所有的奇数位于数组的前半部分&#xff0c;所有的偶数位于数组的后半部分&#xff0c;并保证奇数和奇数&#xff0c;偶数和偶数之间的相对位置不变。 方法一&#xff1a; …

第三届国际亲子游泳学术峰会,麒小佑为亲游行业提供健康解决方案

第三届国际亲子游泳学术峰会大合影 2024年2月26—28日&#xff0c;第三届国际亲子游泳学术峰会在中国青岛成功召开。 第三届国际亲子游泳学术峰会是中国婴幼游泳行业最高标准的学术性会议&#xff0c;由亲游圈主办&#xff0c;旨在为本行业搭建一个高端圈层&#xff0c;帮助机…

保留数据的重装系统教程!(win10系统)

上车警告&#xff01;&#xff01;&#xff01; 本教程无需思考&#xff0c;跟着操作一步一步来就能完成系统的重装。原理是将C盘系统重装&#xff0c;其他盘符数据保存。适用于系统盘重装数据或更改系统版本。 重要提示&#xff01;&#xff01;&#xff01; C盘有重要学习资…

18个惊艳的可视化大屏(第18辑):数字资产场景

hello&#xff0c;我是贝格前端工场&#xff0c;本次分享可视化大屏在数字资产领域的应用&#xff0c;喜欢文章的别忘点赞关注&#xff0c;文章底部也有其他行业的案例&#xff0c;有需求您说话&#xff08;可私信&#xff09;。 数字资产可视化大屏可以应用于各种场景&#x…

从零学习Linux操作系统 第三十一部分 ansible常用模块介绍

一、ansible运行模块的两种方式 Ad-Hoc方式 ##利用ansible命令直接完成管理&#xff0c;主要用于临时命令使用场景 playbook方式 ##ansible脚本&#xff0c;主要用于大型项目场景&#xff0c;需要前期的规划&#xff0c;相当于shell当中的脚本 二、如何查看模块帮助 ansible…

重磅:2024广州国际酒店工程照明展览会

2024广州国际酒店工程照明展览会 Guangzhou international hotel engineering lighting exhibition 2024 时间&#xff1a;2024年12月19-21日 地点&#xff1a;广州.中国进出口商品交易会展馆 承办单位&#xff1a;广州佛兴英耀展览服务有限公司 上海昶文展览服务有限公司…

基于springboot的蜗牛兼职网的设计与实现论文

摘 要 随着科学技术的飞速发展&#xff0c;社会的方方面面、各行各业都在努力与现代的先进技术接轨&#xff0c;通过科技手段来提高自身的优势&#xff0c;蜗牛兼职网当然也不能排除在外。蜗牛兼职网是以实际运用为开发背景&#xff0c;运用软件工程原理和开发方法&#xff0c…

FISCO BCOS区块链平台上的智能合约压力测试指南

引言 在当今的分布式系统中&#xff0c;区块链技术因其去中心化、安全性和透明性而备受关注。随着区块链应用的不断扩展&#xff0c;对其性能和稳定性的要求也越来越高。因此&#xff0c;对区块链网络进行压力测试显得尤为重要。 目录 引言 1. 配置FISCO BCOS节点 2. 安装和…

strongswan编译报错:NID_sm2p256v1未定义

strongswan编译报错&#xff1a;NID_sm2p256v1未定义 现象&#xff1a; 原因&#xff1a; 我用的是openssl.-1.1.1d&#xff0c;发现NID_sm2p256v1曲线改为了NID_sm2&#xff08;gmssl用的是NID_sm2p256v1&#xff09;。对比了一下参数&#xff0c;是相同的。个人猜测是国际只…