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的模块,对于初学者而言,不需要着急掌握,需要用时再去了解就好啦(我认为)。

相关推荐
qq_1728055915 分钟前
Go conc库学习与使用
开发语言·后端·学习·golang·go
六个核桃Lu19 分钟前
每天学习一个技术栈 ——【Django Channels】篇(1)
学习
一名在八月份找工作的测试员19 分钟前
自动化学习2:pytest的高级用法(mark标记/fixture/hook)
学习·自动化·pytest
爱学习的真真子4 小时前
Altium Designer(AD)百度云下载与安装(附安装步骤)
学习·云计算·百度云
想进大厂的Leo6 小时前
【LLM学习之路】9月23日24日 第十、十一天 Attention代码解读
学习
面试鸭6 小时前
第一次见到要主动降薪的。。。
java·学习·面试·职场和发展
羊羊一洋6 小时前
线性代数学习笔记~
笔记·学习
朝九晚五ฺ8 小时前
【Linux探索学习】第一弹——Linux的基本指令(上)——开启Linux学习第一篇
linux·运维·学习
Rookie也要加油8 小时前
01_WebRtc_一对一视频通话
笔记·学习·音视频·webrtc