simulink代码生成(二)——ADC采样模块

这一节梳理如何使用C2000库中的ADC模块,从而实现采样;

先预留几个问题,逐步进行解决。

(1)在simulink中C2000的ADC采样模块设置是怎么样的?各个选项卡代表什么?

(2)ADC采样是如何被启动的?

(3)ADC采样回来的值是什么值?是浮点数还是12位AD代表的4096?

1 ADC采样模块的设置

在库中搜索ADC采样模块,添加到模型中,其模块如下图所示:

双击后设置面板(1)如下图所示:

(1)Module采样单元

该选项指定要使用的DSP模块:

A——显示模块A中的ADC通道(ADCINA0到ADCINA7)。

B——显示模块B中的ADC通道(ADCINB0到ADCINB7)。

A和B——显示模块A和B中的ADC通道(ADCINA0到ADCINA7和ADCINB0到ADCINB7)。

(2)Conversion mode 转换模式选择

用于信号的采样类型:

Sequential— 顺序采样:0-7或者0-15都是同一时间只转换一路信号 

simultaneous ——同步采样:0-7的一个通道和9-15的一个通道同时转换信号,但是必须要有相同的偏移量,比如ADCINA4和ADCINB4就可以,但是ADCINA7和ADCINB6就不能同一时刻转换

具体的可以参照我以前的ADC底层的博客;

F28335 ADC配置代码模块及其排序方式介绍-CSDN博客

(3)Start of conversion 启动转换的方式

触发转换开始的信号类型:

Software  ——来自软件的信号。转换值在每个采样时间更新。

ePWM#A/ePWM#B/ePWM#A_ePWM#B——  转换的开始由用户定义的PWM事件控制。(必须配合ePWM模块同时使用,并且ePWM模块需要输出触发的事件

XINT2_ADCSOC —— 转换的开始由XINT2_ADDCSOC外部信号引脚控制。

(4)Sample time 采样时间

设置ADC采样时间。这是从结果寄存器中读取值的速率。

当选择该项为-1时,为异步模式;
值得注意的是:如果想要为不同组的ADC通道设置不同的采样时间,必须向模型中添加单独的ADC块,并为每个块设置所需的采样时间。

(5)Data type 输出的数据类型

设置输出数据的类型,可以被设置的类为 autodoublesingleint8uint8int16uint16int32, or uint32

对于DSP28335,其内置的ADC采样是12位的,但是实际数据是无符号16位的即uint16,在单片机编程时需要左移4位后再进行使用;simulink代码生成时会自动处理;

双击后设置面板(2)如下图所示,这个部分就比较简单,设置需要转换的通道数,并且配置第一个第二个或者更多对应的采样管脚;

值得注意的是:在过采样模式中,给定ADC通道处的信号可以在单个转换序列期间被采样多次。若要过采样,请为多个转换指定同一通道。转换后的样本将作为单个向量输出。也就是把多个通道配置为一个引脚;

还可以使用多个输出端口,如果使用多个ADC通道进行转换,则可以为每个输出使用单独的端口,并在块上显示输出端口。如果使用多个通道而不使用多个输出端口,则数据将以单个矢量输出。

2  ADC采样是如何被启动的?

这个点需要被重点关注,软件启动和外部触发启动都比较好理解,但是这种一般不常用,电机控制中最常用的还是ePWM模块的事情触发ADC采样,例如在载波的顶点或者在载波的0点;这个需要配合ePWM模块中的事件触发使用,这里提前先设置一下ePWM模块有关的地方,

如下图所示,则配置的是CTR = PRD即载波的顶点时输出事件,勾选Enable ADC start of conversion for module A 后即可在每次CTR = PRD时进行采样;一般选择在载波顶点采样,因此此时电压矢量为零矢量,采样所得电流基本为基波电流;

3 ADC采样回来的值是什么值?是浮点数还是12位AD代表的4096?

按照上面的阐述以及文件的说明,DSP28335,其内置的ADC采样是12位的,但是实际数据是无符号16位的即uint16,在单片机编程时需要左移4位后再进行使用;simulink代码生成时会自动处理;但是我觉得还是值得测试一下的;搭建一个这样的模型;设置ePWM1的TRPD = 8192。

假如确实采样模块的输出是以4096为最大值的12位无符号数,那么可以得到一个可预想的结果:假如供电电压是1.65V左右的值,那么此时输出应该是2048左右的值。如下所示,示波器的就不放了,CMPA已经与采样值同步了。

那么就得出结论,simulink代码生成中ADC输出的值即为12位ADC采样后结果寄存器中的值,并且已经完成了左移4位的操作;即 0 - 0 , 1.65 - 2048 , 3.3 - 3096 

上面仅为1路采样结果,配置3路后;结果如下所示;

附录:模型截图即设置截图

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

相机内参标定理论篇------张正友标定法

一、为什么做相机标定? 标定是为了得到相机坐标系下的点和图像像素点的映射关系,为摄影几何、计算机视觉等应用做准备。 二、为什么需要张正友标定法? 张正友标定法使手工标定相机成为可能,使相机标定不再需要精密的设备帮助。…

婚庆婚礼策划服务网站建设的效果如何

品牌效应越来越重要,婚庆行业在多年的发展下,部分区域内也跑出了头部品牌,连锁门店也开了很多家,无论新品牌还是老品牌在新的区域开店总归少不了线上线下的宣传,虽然几乎每个人都会接触婚庆服务,但因为市场…

编译原理--词法分析C++

一、实验项目要求 1.实验目的 通过设计编制调试一个具体的词法分析程序,加深对词法分析原理的理解。并掌握在对程序设计语言源程序进行扫描过程中将其分解为各类单词的词法分析方法。 编制一个读单词过程,从输入的源程序中,识别出各个具有…

华为交换机Telnet原理与配置

Telnet远程连接到每一台设备上,对这些网络设备进行集中的管理和维护。 Telnet应用场景 Telnet可以通过终端对本地和远程的网络设备进行集中管理。Telnet提供了一个交互式操作界面,允许终端远程登录到任何可以充当Telnet服务器的设备。Telnet用户可以像通…

指针与数组

(1)在C语言中,数组的指针是指数组在内存中的起始地址,数组元素的地址是指指数组元素在内存中的起始地址 (2)一维数组的数组名为一维数组的指针(其实地址) 设指针变量px的地址值等于…

ros2+gazebo+urdf:ros2机器人使用gazebo的urdf文件中的<gazebo>部分官网资料

原文链接SDFormat extensions to URDF (the gazebo tag) — Documentation 注意了ros2的gazebo部分已经跟ros1的gazebo部分不一样了: Toggle navigation SpecificationAPIDocumentationDownload Back Edit Version: 1.6 Table of C…

HarmonyOS的功能及场景应用

一、基本介绍 鸿蒙HarmonyOS主要应用的设备包括智慧屏、平板、手表、智能音箱、IoT设备等。具体来说,鸿蒙系统是一款面向全场景(移动办公、运动健康、社交通信、媒体娱乐等)的分布式操作系统,能够支持手机、平板、智能穿戴、智慧屏、车机等多种终端设备…

Chainlink 开发者故事:Krypton 从构思到产品的 Chainlink BUILD之旅

识别问题,构思解决方案,建立它,推出它,然后扩展它。这就是科技初创企业的操作手册。 现在,前Chainlink黑客马拉松获奖者,当前的Chainlink BUILD成员Krypton已经进行到了第四步:推出。Krypton团…

基于Flask、MySQL和Echarts的*市CPI和物价水平数据可视化分析

基于Flask、MySQL和Echarts的*市CPI和物价水平数据可视化分析 引言: 在当前社会经济背景下,CPI(居民消费价格指数)和物价水平的波动对市场和居民生活产生直接影响。本文将介绍一款基于Flask、MySQL和Echarts的数据可视化系统&…

调试备忘录-RS485 MODBUS RTU协议简述

目录--点击可快速直达 目录 写在前面先简单说下什么是MODBUS?参考文章 写在前面 最近在做和物联网有关的小项目,有一个传感器通讯用到了RS485 MODBUS RTU协议,所以就写个随笔记录下。 先简单说下什么是MODBUS? Modbus协议是应用于电子控…

FineBI6.0 忘记管理员密码和用户解决方法

文章目录 问题描述解决思路解决步骤需要注意 问题描述 当我们打开FineBi服务的时候,突然忘记密码,这个时候咱们无需慌张这个时候就体现了记录密码的重要性了,但是不要紧,还是可以用方法找回的。 解决思路 通过更改配置文件db.…

华为HCIA认证H12-811题库新增

801、[单选题]178/832、在系统视图下键入什么命令可以切换到用户视图? A quit B souter C system-view D user-view 试题答案:A 试题解析:在系统视图下键入quit命令退出到用户视图。因此答案选A。 802、[单选题]“网络管理员在三层交换机上创建了V…