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

相关推荐
xian_wwq14 分钟前
【学习笔记】Milvus 是什么?为什么 RAG 系统经常使用它?-14
笔记·学习·milvus
自信1504130575936 分钟前
重生之从0开始学习c++之string(下)
c++·学习·stl
kmomo..44 分钟前
Linux 驱动开发学习笔记:UART、触摸屏与 ADC 驱动实战
linux·驱动开发·学习
youdexiang1 小时前
如何建立个人学习资料库?
学习
人工智能培训1 小时前
具身智能环境交互与学习范式原理
大数据·linux·人工智能·学习·算法·机器学习
Tj8105231 小时前
企业培训如何真正落地:从组织能力建设到培训ROI评估的完整指南
学习·学习方法
~kiss~1 小时前
LangGraph 和 ToT,Tree of Thoughts 同一步骤多条路线并行探索,用LLM做评判和减枝
学习
艾莉丝努力练剑2 小时前
【AI大模型接入SDK】ChatServer接口设计规范
网络·c++·人工智能·学习·大模型·设计规范
qq_284274052 小时前
电动机控制与PLC入门:自耦减压启动、反接制动与速度继电器KS,及PLC诞生、定义、特点与分类(含考点)
笔记·学习·自动化·制造