06DSP学习-利用syscfg配置DAC

news2025/1/17 13:52:33

在做实验的过程中,有些变量(例如逆变器的电压相位、计算过程中的数字量)是没有办法通过示波器观察的,因此需要将数字量转换为模拟量,一般转换成电压。

DSP有三个片上DAC,本篇博客学习如何使用syscfg配置DAC

F28379D DAC介绍

TMS320F28379D Technical Reference Manual 第10章介绍了其模拟系统,F28379D具有三个DAC模块。第12章介绍了DAC模块,DAC模块相对比较简单,关键需要知道片内的DAC模块是12位的ADC,因此

DACOUT=\frac{DACVALA*DACREF}{4096}

所以我们只需要设置DACVALA的值,就可以在相应的引脚测量得到对应的电压。

F28379D DAC初始化

DAC的初始化顺序是:①初始化时钟、②选择DAC的参考电压、③使能DAC输出、④等待供电完成、⑤设置DACVALA。

上述步骤中①~④均可以通过syscfg完成。

syscfg配置DAC

如图所示,在DAC的选项页,选择使用DACA。

下图可以看出,当DAC和ADC共用高基准电压时,DACA和DACB均采用ADCA的高参考电压VREFHIA。也可以选择DAC的参考电压VDAC。

LAUNCHXL-F28379D的VDAC是悬空的,作为ADCINB0的模拟量输入口,因此在本篇博客中,选择DAC和ADC共用参考电压。

LAUNCHXL-F28379D的参考电压为3V。板载REF5030基准芯片,用于5V产生3V的参考电压。OPA350是一个电压跟随器。

main.c设置DAC的值

    DAC_Count = DAC_Count+50.0*T;
    if(DAC_Count > 1.0)
    {
        DAC_Count-= (1.0);
    }
    DAC_setShadowValue(myDAC_A_BASE,(DAC_Count*4096));

上面的代码实现的功能是,产生一个频率为50Hz的三角波。通过下图所示的引脚测量输出

下图所示为示波器测量得到的波形

从图中可以看出,频率为50Hz,峰值为参考电压3V。

如果手边没有示波器,可以通过查看寄存器的值判断DAC是否正常运行。找到DacaRegs中的DACVALA寄存器,并将NumberFormat格式修改为Decimal十进制,可以观察到值在不断的变化。

以上便完成了片上DAC的设置,希望对大家有帮助~ManTou

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

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

相关文章

【opencv】以A4纸为参照物测量物体尺寸(包含:偏移纠正,轮廓检测,绘制轮廓函数)

文章目录 测试结果原图python代码ObjectMeasuremetn.pyutils.py测试结果 原图 python代码 ObjectMeasuremetn.py import cv2 import numpy as np import utilswebcam = False path = ../da

记录一次hiveserver2卡死(假死)问题

问题描述 给开发人员开通了个账号,连接hive进行查询,后来发现,hive服务有时候会卡死,查询不了,连不上(所有账号/客户端都连不上hive),但在chd里面看监控,服务器资源状态…

SpringBoot 之 配置 RestTemplate + 跳过https 验证

上截图 目录文件结构 在配置文件下创建下面两个文件 文件内容 HttpsClientHttpRequestFactory.java package org.fri.config;import org.apache.http.ssl.SSLContexts; import org.apache.http.ssl.TrustStrategy; import org.springframework.context.annotation.Configur…

用自己的数据集复现YOLOv5

yolov5已经出了很多版本了,这里我以目前最新的版本为例,先在官网下载源码:GitHub - ultralytics/yolov5: YOLOv5 🚀 in PyTorch > ONNX > CoreML > TFLite 然后下载预训练模型,需要哪个就点击哪个模型就行&am…

JavaSE——String类详解

目录 一、String类简介 二、关于字符串拼接的号 三、StringJoiner类——通过连接符拼接字符串 四、String类常用方法详解 五、instanceof关键字 一、String类简介 String是被final修饰的类,不能被继承,因此不能使用匿名内部类。String是一个常量&a…

leetocode二叉树(六)-翻转二叉树

题目 226.翻转二叉树 给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。、 示例 1: 输入:root [4,2,7,1,3,6,9] 输出:[4,7,2,9,6,3,1]示例 2: 输入:root [2,1,3] 输出&#x…

【STM32项目】基于stm32四足跳舞机器人设计与实现(完整工程资料源码)

目录 前言 一、设计目的: 1.1 设计背景 1.2 设计意义 1.3 设计功能 二、硬件部分 2.1 sg90舵机(8个) 2.2 stm32f103c8t6(1个) 2.3 OLED显示屏(1个) 2.4 HC-05蓝牙模块(1个&#xff…

C语言malloc超级详细用法和calloc 扩展

前提 在C语言中&#xff0c;malloc&#xff08;内存分配&#xff09;用于动态分配内存。它是标准库中的一部分&#xff0c;包含在 <stdlib.h> 头文件中。使用 malloc 可以在运行时请求所需的内存空间&#xff0c;而不是在编译时就确定内存大小。 语法 在cplusplus中mall…

LeetCode岛屿数量

题目描述 给你一个由 1&#xff08;陆地&#xff09;和 0&#xff08;水&#xff09;组成的的二维网格&#xff0c;请你计算网格中岛屿的数量。 岛屿总是被水包围&#xff0c;并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。 此外&#xff0c;你可以假设该网…

Elasticsearch生产应用(进阶版),不知道怎么提升生产ES集群性能,看这篇就可以了

这里借助kibana进行修改相应的配置 elasticsearch集群的部署&#xff0c;详情请看上一篇文章&#xff1a; Elasticsearch最新版快速入门看这个就可以了-CSDN博客 基础ES集群运维篇可以查看 Elasticsearch 生产应用&#xff08;实用版&#xff09;&#xff0c;知晓这些&…

“探索Adobe Photoshop 2024:订阅方案、成本效益分析及在线替代品“

设计师们对Adobe Photoshop这款业界领先的图像编辑软件肯定不会陌生。如果你正考虑加入Photoshop的用户行列&#xff0c;可能会对其价格感到好奇。Photoshop的价值在于其强大的功能&#xff0c;而它的价格也反映了这一点。下面&#xff0c;我们就来详细了解一下Adobe Photoshop…

Python语言实现梯度提升树 (Gradient Boosting Machines, GBM)算法

梯度提升树&#xff08;Gradient Boosting Machines, GBM&#xff09;是一种集成学习方法&#xff0c;通过迭代地训练决策树&#xff0c;并让每棵新的树拟合前一棵树的残差&#xff0c;从而逐步提高模型的准确率。下面是一个简单的Python实现GBM的例子&#xff1a; 实现思路&a…

机器人大功率主轴SycoTec 4060 ER-S汽车电机机芯焊缝铣削打磨加工

在汽车制造的精密领域&#xff0c;每一个细节都关乎着整车的性能与品质&#xff0c;而汽车电机机芯的焊缝加工更是其中至关重要的一环。在机器人末端加装德国进口电主轴 SycoTec 4060 ER-S&#xff0c;为汽车电机机芯焊缝铣削打磨加工带来全新的解决方案。 SycoTec 4060 ER-S转…

gbase8s之建表相关问题

第一章..绪论 1.1..背景 需要对明年所有系统的表新建。 1.2..要求 对导切建表可能遇到的一些问题罗列及解决办法。 第二章..新建表的的过程 1.1..获取DDL 获取DDL一定要在服务器上去获取&#xff0c;千万别用gds去导出ddl。 1.1.1..切换数据库用户 su – gbasedbt 1.1…

基于ECS和NAS搭建个人网盘

前言 在数字化时代&#xff0c;数据已成为我们生活中不可或缺的一部分。个人文件、照片、视频等数据的积累&#xff0c;使得我们需要一个安全、可靠且便捷的存储解决方案。传统的物理存储设备&#xff08;如硬盘、U盘&#xff09;虽然方便&#xff0c;但存在易丢失、损坏和数据…

系统思考与业务创新工作坊

感谢合作伙伴对上周新华三项目的积极反馈&#xff01;系统思考远不止是一个两天的课程&#xff0c;而是一场持续修炼的旅程。在麻省理工学院&#xff08;MIT&#xff09;的系统动力学课程中&#xff0c;系统思考需要长达两年的深入学习&#xff0c;而我们在十多年的实践与组织应…

ubuntu 安装docker, docker-compose

1. 安装curl apt-get update apt upgradeapt install curl 2.安装&#xff1a; curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun 3. 验证&#xff1a; docker -v 4. 安装docker-compose : # 下载 curl -L "https://github.com/docker/compose/rel…

探索 Jupyter 核心:nbformat 库的神秘力量

文章目录 探索 Jupyter 核心&#xff1a;nbformat 库的神秘力量1. 背景介绍&#xff1a;为何选择 nbformat&#xff1f;2. nbformat 是什么&#xff1f;3. 如何安装 nbformat&#xff1f;4. 简单的库函数使用方法4.1 读取 Notebook 文件4.2 修改 Notebook 中的单元格4.3 添加 M…

性能测试-JMeter(2)

JMeter JMeter断言响应断言JSON断言断言持续时间 JMeter关联正则表达式提取器正则表达式正则表达式提取器 XPath提取器JSON提取器 JMeter属性JMeter录制脚本 JMeter断言 断言&#xff1a;让程序自动判断预期结果和实际结果是否一致 提示&#xff1a; -Jmeter在请求的返回层面有…

【Linux】【命令】查找(grep/find)与统计(wc)

查找与统计 grepfindwcExamples grep grep 命令用于在文件中或者标准输出中搜索特定字符串&#xff0c;并显示匹配结果。 grep 全称&#xff1a;Global Regular Expression Print 基本语法&#xff1a; grep [OPTION]... PATTERN [FILE] ...默认情况下&#xff0c;PATTERN 是…