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

01DSP学习-了解DSP外设-以逆变器控制为例

(由于是回忆自己简单的DSP学习过程,所以博客看起来有些没有章法,请见谅~)

上一篇博客介绍了学习DSP需要的软件和硬件准备,以及一个DSP的工程包含了哪些东西。我的学习方法是目的导向,即我需要用什么我就学什么,并没有打算像背词典一样去学习DSP。

那么既然是目的导向,我们首先需要了解DSP有哪些是我们需要用到的,然后再去学。这些推荐直接看芯片的数据手册。

我本身是学习电力电子的,所以我就以实现一个逆变器控制为例,来说明

EPWM模块

电力电子技术中最关键的就是PWM,因此首先需要学习如何产生固定频率的PWM波,C2000系列的EPWM模块专门针对电力电子控制做了优化,有丰富的预设配置,例如死区、互补、增减技术方式。具体地在如何使用EPWM模块的时候再进行记录。

ADC模块

数模转换模块。逆变器控制需要采集实际系统中的电压和电流等电气量,无论是使用霍尔传感器还是互感器,均需要经过调理电路将待采集的电气量转化为DSP的ADC能够采集的弱电压。

IO模块

在逆变器并网过程中,需要通过数字输入输出,也就是数字I/O模块来控制电平。例如,需要通过控制继电器的开关来控制接触器,从而实现并离网的开关切换。再例如,需要通过LED灯来指示程序的运行状态。

定时器模块

定时器模块则是一个计数模块,用于产生中断,从而在固定的阶段完成固定的任务。但是DSP中,EPWM模块本身也可以出发周期性的中断,所以在简单的应用中直接使用EPWM模块也可以代替定时器模块。如果不同的任务中断频率不同,则需要借助于定时器模块。

SCI串口模块

串口模块本身不用于逆变器的控制,但是在我们的调试过程中,需要在程序运行时去观察一些变量,如果采用CCS的Debug也是可以实时观察变量,利用Graph还可以将变量绘制成图。但是在线调试也有一些不足,比如:①无法离线运行时观察变量;②Graph无法同时显示两个变量;③停止运行后无法观察历史波形;④Graph需要观察数组中的值,占用DSP的RAM资源;以上缺点促使我们学习用串口将DSP中的数据发送出来,并通过上位机保存,便于我们实时观察波形和观察历史波形。

DAC模块

当我们验证逆变器算法时,有些变量我们需要通过示波器记录下来,例如逆变器的输出电压的相位,这些在DSP中是数字量,我们需要将它转换成具体地电压波形,在示波器中观察。因此,需要利用DAC模块将数字量转换为模拟量。

其他模块

除了以上介绍的外设,DSP中还有一些外设,例如IIC、SPI、CAN等等用于接片外外设或者通信的模块。还有CLA等控制加速的模块、还有CLB灵活控制PWM的模块,对于初学者而言,不需要着急掌握,需要用时再去了解就好啦(我认为)。

相关文章:

01DSP学习-了解DSP外设-以逆变器控制为例

(由于是回忆自己简单的DSP学习过程,所以博客看起来有些没有章法,请见谅~) 上一篇博客介绍了学习DSP需要的软件和硬件准备,以及一个DSP的工程包含了哪些东西。我的学习方法是目的导向,即我需要用什么我就学什么,并没有…...

【ArcGIS Pro实操第三期】多模式道路网构建(Multi-model road network construction)原理及实操案例

ArcGIS Pro实操第三期:多模式道路网构建原理及实操案例 1 概述1.1 原理 2 GIS实操2.1 新建文件并导入数据2.2 创建网络数据集2.3 设置连接策略(Setting up connectivity policies)2.4 添加成本(Adding cost attributes&#xff09…...

深度学习基础及技巧

机器学习中的监督学习 监督学习是通过对数据进行分析,找到数据的表达模型,对新输入的数据套用该模型做决策 主要分为训练和预测两个阶段 训练阶段:根据原始数据进行特征提取,然后使用决策树、随机森林等模型算法分析数据之间的特…...

Unity 外描边简单实现(Shader Graph)

1:原理 将物体的模型空间的位置(也就是顶点数据)放大,作为一个单独的渲染通道单独渲染,这时候模型是已经发大过的,要想看到外描边的效果,需要将正面显示的东西给去掉,显示背面渲染的…...

text2sql方法:NatSQL和DIN-SQL

NatSQL NatSQL出自2021年9月的论文《Natural SQL: Making SQL Easier to Infer from Natural Language Specifications》(github),它是一种SQL 中间表征(SQL intermediate representation(IR))方法。 NatSQL作者认为Text2SQL的关键挑战是自然语言描述和其对应的SQ…...

【新闻转载】Storm-0501:勒索软件攻击扩展到混合云环境

icrosoft发出警告,勒索软件团伙Storm-0501近期调整了攻击策略,目前正将目标瞄准混合云环境,旨在全面破坏受害者的资产。 该威胁行为者自2021年首次露面,起初作为Sabbath勒索软件行动的分支。随后,他们开始分发来自Hive…...

RabbitMQ 队列之战:Classic 和 Quorum 的性能洞察

RabbitMQ 是一个功能强大且广泛使用的消息代理,它通过处理消息的传输、存储和交付来促进分布式应用程序之间的通信。作为消息代理,RabbitMQ 充当生产者(发送消息的应用程序)和使用者(接收消息的应用程序)之…...

Spring Boot 集成 MySQL 的详细指南

在现代软件开发中,Spring Boot 因其简单易用而成为构建 Java 应用程序的热门选择。结合 MySQL这一常用关系型数据库,开发者可以快速构建出功能完善的后端服务。本文将详细介绍如何将 Spring Boot 与 MySQL 集成,提供从环境搭建到代码实现的全…...

python格式化输入输出

以下是使用 format()、f-string 和百分号 % 运算符进行 Python 数据格式化输入输出的示例代码。 1. 使用 format() 方法进行格式化 # 使用 format() 方法格式化数据并输出到文件 name "Alice" age 25 score 92.5# 格式化字符串 formatted_string "Name: {…...

音视频入门基础:FLV专题(10)——Script Tag实例分析

一、引言 在《音视频入门基础:FLV专题(9)——Script Tag简介》中对FLV文件的Script Tag进行了简介。下面用一个具体的例子来对Script Tag进行分析。 二、Script Tag的Tag header实例分析 用notepad打开《音视频入门基础:FLV专题…...

国外问卷调查匠哥已经不带人了,但是还可以交流

国外问卷调查匠哥已经不带人了,但是还可以来和匠哥交流, 为啥不带人了呢? 从今年年初开始,匠哥在带学员的过程中发现: 跟往年同样的收费,同样的教学,甚至我付出的时间精力比以前还多&#xff…...

Linux 进程的基本概念及描述

目录 0.前言 1. 什么是进程 1.1 进程的定义与特性 1.2 进程与线程的区别 2.描述进程 2.1 PCB (进程控制块) 2.2 task_struct 3.查看进程 3.1 查看进程信息 3.1.1 /proc 文件系统 3.1.2 ps 命令 3.1.2 top 和 htop 命令 3.2 获取进程标识符 3.2.1使用命令获取PID 3.2.2 使用C语言…...

【C++】透过STL源代码深度剖析vector的底层

✨ Blog’s 主页: 白乐天_ξ( ✿>◡❛) 🌈 个人Motto:他强任他强,清风拂山冈! 🔥 所属专栏:C深入学习笔记 💫 欢迎来到我的学习笔记! 参考博客:【C】透过STL源…...

ubuntu 开启root

sudo passwd root#输入以下命令来给root账户设置密码 sudo passwd -u root#启用root账户 su - root#要登录root账户 root 开启远程访问: 小心不要改到这里了:sudo nano /etc/ssh/ssh_config 而是:/etc/ssh/sshd_config sudo nano /etc/ssh…...

使用 Llama 3.1 和 Qdrant 构建多语言医疗保健聊天机器人的步骤

长话短说: 准备好深入研究: 矢量存储的复杂性以及如何利用 Qdrant 进行高效数据摄取。掌握 Qdrant 中的集合管理以获得最佳性能。释放上下文感知响应的相似性搜索的潜力。精心设计复杂的 LangChain 工作流程以增强聊天机器人的功能。将革命性的 Llama …...

【Linux-基础IO】如何理解Linux下一切皆文件磁盘的介绍

目录 如何理解Linux系统上一切皆文件 1.物理角度认识磁盘 2.对磁盘的存储进行逻辑抽象 磁盘寻址 3.磁盘中的寄存器 如何理解Linux系统上一切皆文件 计算机中包含大量外设,操作系统想要管理好这些外设,就必须对这些外设进行先描述再组织&#xff0c…...

Golang | Leetcode Golang题解之第436题寻找右区间

题目: 题解: func findRightInterval(intervals [][]int) []int {n : len(intervals)type pair struct{ x, i int }starts : make([]pair, n)ends : make([]pair, n)for i, p : range intervals {starts[i] pair{p[0], i}ends[i] pair{p[1], i}}sort.…...

微服务SpringSession解析部署使用全流程

目录 1、SpringSession简介 2、实现session共享的三种方式 1、修改Tomcat配置文件 2、Nginx负载均衡策略 3、redis统一存储 0、准备工作 1、本地服务添加依赖 2、修改本地服务配置文件 3、添加application.properties文件 4、添加nacos - redis配置 5、修改本地项目…...

自动驾驶 3DGS 学习笔记

目录 street_gaussians gsplat依赖项 运行报错: python>3.9 SGD: Street View Synthesis with Gaussian Splatting and Diffusion Prior 差分高斯光栅化 diff-gaussian-rasterization street_gaussians https://github.com/zju3dv/street_gaussians gsp…...

【C++笔试强训】如何成为算法糕手Day5

学习编程就得循环渐进,扎实基础,勿在浮沙筑高台 循环渐进Forward-CSDN博客 目录 循环渐进Forward-CSDN博客 第一题:游游的you 思路: 第二题:腐烂的苹果 思路: 第三题:孩子们的游戏 思路&…...

【数据结构实战】循环队列FIFO 特性生成六十甲子(天干地支纪年法),实现传统文化里的 “时间轮回”

前言天干地支纪年法是中国传统文化的重要组成部分,十天干与十二地支依次相配,组成六十甲子。本文将使用循环队列这一数据结构完成六十甲子的生成,严格遵循题目要求:定义两个循环队列,分别存储十天干、十二地支队列空则…...

别再只仿真了!手把手教你用LabVIEW+USRP-2920搭建真实无线通信链路(BPSK/QPSK调制实战)

从仿真到实战:LabVIEW与USRP-2920构建无线通信链路的完整指南 在通信工程领域,仿真与硬件实现之间往往存在一道难以逾越的鸿沟。许多工程师能够熟练使用MATLAB或LabVIEW进行通信系统仿真,但当面对USRP-2920这样的射频硬件时,却常常…...

重庆灌浆料销售厂家怎么联系

在重庆的建筑工程领域,灌浆料的应用十分广泛。然而,众多重庆灌浆料厂家的市场状况究竟如何?又存在哪些痛点呢?市场现状:鱼龙混杂目前,重庆灌浆料市场厂家众多,但质量参差不齐。行业权威报告显示…...

零代码玩转OpenClaw:ollama-QwQ-32B自动化脚本生成教程

零代码玩转OpenClaw:ollama-QwQ-32B自动化脚本生成教程 1. 为什么选择OpenClawollama-QwQ-32B组合? 上周我在整理旅行照片时,面对上千张命名混乱的图片文件,突然意识到:这不正是测试OpenClaw自动化能力的绝佳场景吗&…...

AI性能测试:TPS之外还要关注什么?

在AI驱动的时代,性能测试已成为软件测试从业者的核心技能。传统软件测试中,TPS(Transactions Per Second,每秒事务处理量)常被视为黄金指标,用于衡量系统的吞吐能力。然而,AI系统因其独特的计算…...

这次终于选对了!降AI率软件深度测评与推荐

2026年真正好用的AI论文降重与改写工具,核心看降重效果、去AI味、格式保留、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 …...

免费内容解锁工具:提升信息获取效率的技术解决方案

免费内容解锁工具:提升信息获取效率的技术解决方案 【免费下载链接】bypass-paywalls-chrome-clean 项目地址: https://gitcode.com/GitHub_Trending/by/bypass-paywalls-chrome-clean 在信息爆炸的数字时代,专业内容与普通用户之间往往隔着一道…...

如何使用Compiler Explorer实时编译原理:揭秘代码到汇编的转换过程

如何使用Compiler Explorer实时编译原理:揭秘代码到汇编的转换过程 【免费下载链接】compiler-explorer Run compilers interactively from your web browser and interact with the assembly 项目地址: https://gitcode.com/gh_mirrors/co/compiler-explorer …...

Flutter透明视频播放实战:用AlphaPlayer插件5分钟搞定礼物特效

Flutter透明视频播放实战:用AlphaPlayer插件5分钟搞定礼物特效 在移动应用开发中,炫酷的动画效果往往能显著提升用户体验,尤其是在社交、直播和游戏类应用中。透明视频特效作为其中一种高级表现形式,能够实现元素与背景的无缝融合…...

CRaxsRat v7.4隐藏功能挖掘:用自定义脚本实现批量设备自动化运维

CRaxsRat v7.4隐藏功能实战:JSON脚本引擎在企业级自动化运维中的高阶应用 在企业IT运维领域,效率提升往往隐藏在工具的高级功能层。CRaxsRat v7.4的脚本模块就像瑞士军刀的隐藏刀片——90%的用户只停留在远程桌面和文件管理的基础功能,却不知…...