细说MCU的DAC输出含谐波的正弦波形信号的方法

news2024/11/24 8:49:35

目录

一、参考硬件

二、 建立新工程

三、代码修改

1.用MATLAB生成含谐波的波形数据

2. 修改代码PV

四、查看结果


一、参考硬件

        本项目依赖的软件和硬件工程参考本文作者写的文章:细说MCU的DAC1和DAC2各自输出一通道模拟信号的方法-CSDN博客  https://wenchm.blog.csdn.net/article/details/140791751icon-default.png?t=N7T8http://xn--https-rfa//wenchm.blog.csdn.net/article/details/140791751        要输出含谐波的正弦波形,关键是生成一个周期的含谐波信息的波形数据。

二、 建立新工程

         本文示例的工程配置与参考文件一样。不再重复进行配置说明。

三、代码修改

         本文示例的软件代码除了送给DAC2的波形数据与参考文件不一样外,其他的软件代码部分均与参考文件一致。

1.用MATLAB生成含谐波的波形数据

A = 4096/2-1;    %信号幅值
N = 50;		     %一个周期内的数据点数 
Ph = 0; 		 %信号1初始相位 
y1 = sin(Ph:2*pi/N:2*pi*(1-1/N)+Ph);	%基波
y3 = sin(Ph:6*pi/N:6*pi*(1-1/N)+Ph); 	%三次谐波
SineData = ceil(0.8*A*y1+0.25*A*y3+A);
Fid = fopen('SineData.txt','w');
fprintf(Fid,'%d,',SineData);
fclose(Fid);

        上面用了两条语句分别生成基波和三次谐波,最后一句将它们按一定比例相加。根据这些语句,可以得到包含谐波的波形数据,然后将该数据放入数组SineWaveDataPh0中。

2. 修改代码PV

/* USER CODE BEGIN PV */
uint16_t SineWaveDataPh90[DAC_BUFFER_SIZE] = {3071,3063,3039,2999,2944,2876,2794,2700,2596,
		2483,2364,2239,2112,1983,1856,1731,1612,1499,1395,1301,1219,1151,1096,1056,1032,1024,1032,
		1056,1096,1151,1219,1301,1395,1499,1612,1731,1856,1983,2112,2239,2364,2483,2596,2700,2794,
		2876,2944,2999,3039,3063
};

uint16_t SineWaveDataPh0[DAC_BUFFER_SIZE] = {2047,2630,3155,3576,3858,3983,3957,3802,3558,
 3275,3003,2792,2676,2676,2792,3003,3275,3558,3802,3957,3983,3858,3576,3155,2630,2048,1465,
 940,519,237,112,138,293,537,820,1092,1303,1419,1419,1303,1092,820,537,293,138,112,237,519,
 940,1465
 };
/* USER CODE END PV */

四、查看结果

        修改数组SineWaveDataPh0之后,编译工程并下载到硬件中,将程序运行起来。分别用示波器查看PA4和PA6上波形。 

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

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

相关文章

苹果AI版iOS首日火爆:聊天秒变高情商,大模型成最强嘴替

苹果公司最近推出了其人工智能技术Apple Intelligence,并在iOS 18.1 Beta版中首次亮相,这标志着苹果正式迈入了AI时代。Apple Intelligence深度集成于iOS、iPadOS和macOS系统中,提供了包括写作润笔、通话摘要、内容总结、图像生成等一系列AI功…

移动硬盘传输中断后无法识别的数据救援指南

一、问题解析:移动硬盘传输中断的困境 在日常使用中,移动硬盘作为我们存储和传输大量数据的重要工具,其稳定性和可靠性直接关系到数据的安全。然而,当在数据传输过程中突然遭遇中断,随后发现移动硬盘无法被电脑识别时…

【OceanBase DBA早下班系列】—— obdiag 收集的OB火焰图/扁鹊图解读

1. 前言 上一篇文章讲解了一下obdiag 怎么快速的收集火焰图,那么问题来了,火焰图收集了咋看呢?今天就讲讲。 2. obdiag 一键收集火焰图和扁鹊图原理 其实obdiag收集信息是依赖于远端ob节点上的perf工具,所以务必要在ob节点上安装…

Vue3选择框选择不同的值输入框刷新变化

场景:新增的时候根据选择框的不同来改变输入信息 例如: 实现方式:这个输入框我做的是业务字典实际的值是0和1,在点击选择框的时候用v-if判断选择的值是1还是0,如果是0则是一个输入信息,如果是1则又是另一个…

【面试】前端开发中的“八股文”:助力还是阻力?

引言 在程序员面试中,“八股文”已经成为一个不可或缺的环节。它通常指的是那些面试中频繁出现的、有固定答案的问题,涉及计算机科学的基础知识、编程语言的特性、以及一些常见的设计模式和算法。然而,围绕“八股文”的争议从未停歇。一方面…

又是肌肉减少症!中国学者用它拿下二区top| CHARLS等七大老年公共数据库周报(7.24)...

七大老年公共数据库 七大老年公共数据库共涵盖33个国家的数据,包括:美国健康与退休研究 (Health and Retirement Study, HRS);英国老龄化纵向研究 (English Longitudinal Study of Ageing, ELSA);欧洲健康、…

计算机毕业设计Python+Flask微博舆情分析 微博情感分析 微博爬虫 微博大数据 舆情监控系统 大数据毕业设计 NLP文本分类 机器学习 深度学习 AI

基于Python/flask的微博舆情数据分析可视化系统 python爬虫数据分析可视化项目 编程语言:python 涉及技术:flask mysql echarts SnowNlP情感分析 文本分析 系统设计的功能: ①用户注册登录 ②微博数据描述性统计、热词统计、舆情统计 ③微博数…

【号外】「省点时间」新功能暖心上线!

好消息,好消息,重大好消息! 应广大用户朋友的要求,经过一个多月的鏖战,「省点时间」的VIP功能终于上线啦! 新版本在原有基础上,新增VIP功能,用户拥有了更多选择,赶快来…

应对移动硬盘传输中断后的无法识别挑战:数据恢复全攻略

一、现象剖析:移动硬盘传输中断后的识别困境 在数字化时代,移动硬盘作为数据存储与传输的重要工具,其便捷性和大容量特性深受用户青睐。然而,在数据传输过程中,一旦遭遇意外中断,导致移动硬盘在后续操作中…

7.30 Day12 SSH的安全配置

知识点: 1、OpenSSH远程管理 2、TCP Wrappers访问控制 配置OpenSSH sshd服务默认允许root用户登录,当在Internet中使用时这是非常不安全的。普遍的做法是:先以普通用户远程登录,进入安全shell环境后,根据实际需要使用…

STM32的外部中断详解

一、什么是中断? 想象一下你正在家里做饭,突然门铃响了,你听到门铃声后,会暂时放下手中的事情(比如炒菜),去开门看看是谁。在这个例子中,门铃声就是一个“中断”,它打断…

uniapp文件查找失败:‘./pages/classify/classify/classify.vue‘at main.is:6

在HBuilderX这类前端开发环境中,当使用其项目结构管理功能(如新建页面或目录)时,工具通常会自动在项目的配置文件(如pages.json)中注册或更新相应的路径信息,以确保应用能够正确地加载和显示这些…

谢希仁计算机网络第八版期末复习简答(3)

传输层 TCP与UDP的区别 区别 TCP UDP 是否连接 面向连接(三握四挥) 无连接 是否可靠 可靠 不可靠传输,不使用流量控制以及拥塞控制 连接对象 只能是一对一 无限制 传输方法 面向字节流 面向报文 首部开销 最小20字节最大60字…

Renesas R7FA8D1BH (Cortex®-M85) 输入接口的应用

Renesas R7FA8D1BH (Cortex-M85) 控制DS18B20和ADC,实现两个页面的跳转功能 目录 概述 1 软硬件 1.1 软硬件环境信息 1.2 开发板信息 1.3 调试器信息 2 FSP和KEIL配置 2.1 硬件接口电路 2.2 FSB配置KEY的IO 3 功能实现 3.1 FSP生成项目 3.2 KEY功能实现…

macOS Ventura 13.6.8 (22G820) 正式版发布,ISO、IPSW、PKG 下载

macOS Ventura 13.6.8 (22G820) 正式版发布,ISO、IPSW、PKG 下载 2024 年 7 月 30 日凌晨,macOS Sonoma 14.6 发布,本更新提供了重要的错误修复和安全更新,建议所有用户安装。同时带来了 macOS Ventura 13.6.8 和 macOS Monterey…

java-questions-分析

系列文章目录 文章目录 目录 系列文章目录 文章目录 前言 一、问题案例 1、maven项目compile时候出现告警warn 2、java文件打包然后在命令行中运行java会找不到主类 3、程序找不到数据库驱动和配置实例 4、springboot和mybatis-plus版本不兼容导致 5、springboot项目启动的解释…

中国最受欢迎的起名大师颜廷利:飞蛾投火,拥抱光明

标题:飞蛾投火,拥抱光明;视死如归,石破天惊…(升命学说) 在深邃的夜幕下,一只飞蛾振翅向着熊熊燃烧的火焰。它的行为,似乎暗合了一种前沿而深邃的哲学——升命学说。祖籍齐鲁大地山东济南的当代文化名人,颜廷利教授的这一学说不仅描绘了生命的不屈与顽强,更映射出生命体对于光…

云借阅图书管理系统——用户登录模块

一、用户登录 (一)用户登录流程图 从图中可以看出,用户登录过程中首先要验证用户名和密码是否正确,如果正确,可以成功登录系统,系统会自动跳转到主页;如果错误,则在登录页面给出错误…

浅谈电商数据采集重要的一环:数据清洗

在电子商务的浩瀚数据海洋中,数据采集是获取商业洞察力的第一步,而数据清洗则是这一过程中不可或缺且至关重要的环节。数据清洗不仅关乎数据的准确性与可靠性,更直接影响到后续数据分析的质量与深度。本文将从技术角度出发,深入探…

Mirror学习笔记(二) 传输协议

文章目录 一、KCP传输协议二、Telepathy 传输协议三、WebSockets传输协议四、多路复用传输:五、延迟模拟传输:六、Ignorance协议七、LiteNetLib协议八、FizzSteamworks协议九、FizzyFacepunch协议十、加密协议十一、Edgegap协议 一、KCP传输协议 KCP是M…