DSP CCS12.00 芯片:TMS320F28335 ADC 的运用

news/2025/1/20 0:31:24/

1.AD 转换的四个步骤

实现ad转换需要经过取样、保持、量化、编码四个步骤。


2.AD 的含义

 AD 转换 就是把模拟信号转换成数字信号。主要包括积分型、逐次逼近型、并行比较型/串并行型、Σ-Δ调制型、电容阵列逐次比较型及压频变换型。A/D转换器是用来通过一定的电路将模拟量转变为数字量。模拟量可以是电压、电流等电信号,也可以是压力、温度、湿度、位移、声音等非电信号。但在A/D转换前,输入到A/D转换器的输入信号必须经各种传感器把各种物理量转换成电压信号。


3.采样通道   16 个采样通道数


4.ADC 的特点:


5. 采样顺序   两种模式 (级联模式, 双序列模式)

                     两种采样模式 (顺序采样, 同步采样)

                        4种工作模式 

两种模式 (级联模式, 双序列模式)

两种采样模式 (顺序采样, 同步采样)

 


6. ADC 时钟模块配置


7.ADC模块的相关寄存器


8.ADC的工作方式寄存器设置


9.ADC配置步骤


10.知识详解  

通道的选择: 四位二进制   第一位  1: B     0:A

   第二位,第三位,第四位:  0--7  通道
 

一:ADC转换步骤:

  A/D转换器(ADC)将模拟量转换为数字量通常要经过4个步骤:

  1:采样:将一个时间上连续变化的模拟量转化为时间上离散变化的模拟量。

  2:保持:将采样结果存储起来,直到下次采样,这个过程称作保持。一般,采样器和保持电路一起总称为采样保持电路。

  3:量化:将采样电平归化为与之接近的离散数字电平,这个过程称作量化。

  4:编码:将量化后的结果按照一定数制形式表示就是编码。

二:将采样电平(模拟值)转换为数字值时,有两类方法:直接比较型与间接比较型。

  直接比较型:就是将输入模拟信号直接与标准的参考电压比较,从而得到数字量。属于这种类型常见的有并行ADC和逐次比较型ADC。

  间接比较型:输入模拟量不是直接与参考电压比较,而是将二者变为中间的某种物理量在进行比较,然后将比较所得的结果进行数字编码。属于这种类型常见的有双积分型的ADC。

三:ADC关键技术指标

1:分辨率:指数字量变化一个最小量时模拟信号的变化量,定义为满刻度与2^n的比值。分辨率又称为精度,通常以数字信号的位数来表示。通俗的解释分辨率是决定采样最小值,比如基准电压为1V,8位的采样,最小值是1/256,1为采样的最小值是1/1024,分辨率越高。

2:转换速率:也可以叫做A/D采样率,是A/D转换一次所需时间的倒数。单位时间内,完成从模拟转换到数字的次数。

3:采样时间:两次转换的间隔。为了保证转换正确完成,采样速率必须小于或等于转换速率。

4:量化误差:由于A/D的有限分辨率而引起的误差,即有限分辨率A/D的阶梯状转移特性曲线与无限分辨率A/D(理想A/D)的转移特性曲线(直线)之间的最大偏差。通常1个或半个最小数字量的模拟变化量,表示为1LSB、1/2LSB。

5:偏移误差:输入信号为零时输出信号不为零的值,可外接点位器调制至最小。

6:满刻度误差:满刻度输出时对应的输入信号与理想输入信号值之差。

7:线性度:实际转换器的转移函数与理想直线的最大便宜,不包含量化误差,便宜误差,满刻度误差。

8:绝对精度和相对精度:绝对精度(简称精度)是指在整个刻度范围内,任一输入数码所对应的模拟量实际输出值与理论值之间的最大误差。绝对精度是由 DAC 的增益误差(当输入 数码为全1 时,实际输出值与理想输出值之差)、零点误差(数码输入为全0时, DAC的非零输出值)、非线性误差和噪声等引起的。绝对精度(即最大误差)应小于1个LSB。相对精度与绝对精度表示同一含义,用最大误差相对于满刻度的百分比表示。
四:TMS320F28335之ADC模块

 

 1:28335的ADC模块是12位,它的精度误差为+-1/2^12,但实际达不到。

 2:28335的ADC时钟频率最高达到25MHZ,而采样频率最高位12.5Msps(理论)。

note:这里再将时钟频率,采样频率和转换时间再说一下:

时钟频率:就像人的心脏跳动一样,如果没有时钟频率,那么ADC模块将运作不起来。

采样频率:每隔多长时间启动一次采样。

转换时间:ADC模块转换一个通道或者一个序列所需要的时间。

蓝色框框(ADC的输入通道):ADC有16个输入引脚,即16个模拟转变输入通道,分为2组,一组为A,一组为B,其中ADCINA0~ADCINA7都是属于A的,ADCINB0~ADCINB7都是B的。

绿色框框(S/H-A,S/H-B采样保持器):采样/保持的采价时间窗口(可以理解为信号处理中对模拟信号每次进行采样时,开关闭合的时间)。

绿色框框:12位ADC转换内核。

黄色框框(结果寄存器):将结果存在在此。

红色框框(序列发生器1和序列发生器2):也叫排序器,有两种工作模式:第一种是1和2可以独立工作。第二种是1和2集联成一个16位的序列发生器。

  五:序列发生器工作简介:

    通过AD输入通道后,在进入12位ADC转换内核进行转换,将结果放在结果寄存器中,结果寄存器是16位,按照序列进行转换,但是如何按照序列呢?

  F28335的ADC转换模块有2个独立的8状态排序器(SEQ1与SEQ2),这两个排序器还可以级联为1个16状态的排序器(SEQ)。这里的状态是指排序器内能够完成的A/D自动转换通道的个数。8状态排序器指的是能够完成8个A/D转换通道的排序管理。2个排序器可有两种操作方式,分别为单排序器方式(级联为1个16状态排序器。即级联方式)和双排序器方式(2个独立的8状态排序器)。

  A/D转换模块每次收到触发源的开始转换(SOC)请求时,就你能够通过排序自动完成多路转换,将模拟输入信号引入采样保持器与ADC内核。转换完成后,将转换结果存入结果寄存器。

  两种操作模式最大的差别在于,单排序操作方式(即级联方式)响应触发源是唯一的,可双排序的方式可以分别响应各自的触发源。单排序操作方式简单,双排序操作方式复杂。两者工作方式都可以进行顺序采样或者同步采样。

note:顺序采样:A和B按照顺序来完成采样,A按照ADCINA0~ADCINA7的顺序进行采样,B按照BDCINA0~BDCINA7的顺序进行采样。而同步采样是,A0---B0,A1----B1成对的采样。


 4.代码:  (程序功能  :  滑动变阻器变化   电压数值有变化)

#include "DSP2833x_Device.h"     // DSP2833x Headerfile Include File
#include "DSP2833x_Examples.h"   // DSP2833x Examples Include File#define ADC_MODCLK 0x5   // HSPCLK = SYSCLKOUT/2*ADC_MODCLK2 = 150/(2*4)             = 15MHz                       //    for 60 MHz devices:    HSPCLK =  60/(2*4)             = 7.5 MHz
#define ADC_CKPS   0x1   // ADC module clock = HSPCLK/2*ADC_CKPS   = 15MHz/(1*2)   = 7.5MHz
#define ADC_SHCLK  0xf   // S/H width in ADC module periods                          = 16 ADC clocks
#define AVG        100  // Average sample limit
#define ZOFFSET    0x00  // Average Zero offset
#define BUF_SIZE   2048  // Sample buffer size// Global variable for this example
Uint16 SampleTable[BUF_SIZE];float Vin=0;
float mm=1;
float m1=1;void main(void)
{int temp;Uint16 i;Uint32 Sum=0;/*初始化系统*/InitSysCtrl();// Specific clock setting for this example:EALLOW;SysCtrlRegs.PCLKCR0.bit.ADCENCLK=1;//ADCSysCtrlRegs.HISPCP.all = ADC_MODCLK; // HSPCLK = SYSCLKOUT/(2*ADC_MODCLK)=15MHZEDIS;/*初始化GPIO;*///InitSpiaGpio();/* 关中断 */DINT;IER = 0x0000;IFR = 0x0000;/* 初始化PIE控制寄存器 */InitPieCtrl();/* 初始化PIE参数表 */InitPieVectTable();// 步骤 4.初始化片内外设:InitAdc();  // For this example, init the ADC///初始化SPIEINT;       // Enable Global interrupt INTMERTM;       // Enable Global realtime interrupt DBGM// Specific ADC setup for this example:AdcRegs.ADCTRL1.bit.ACQ_PS = ADC_SHCLK;//设置采样窗口时间:(15+1)*ADCCLKAdcRegs.ADCTRL3.bit.ADCCLKPS = ADC_CKPS;//ADC内核时钟分频:HSPCLK/2=6.25MHZAdcRegs.ADCTRL1.bit.SEQ_CASC = 1;        // 1选择级联模式AdcRegs.ADCCHSELSEQ1.bit.CONV00 = 0x0;  //通道选择ADCAIN0AdcRegs.ADCTRL1.bit.CONT_RUN = 1;       // 设置为连续运行AdcRegs.ADCMAXCONV.bit.MAX_CONV1=0x0;// 采样表清0for (i=0; i<BUF_SIZE; i++){SampleTable[i] = 0;}// 软件启动SEQ1AdcRegs.ADCTRL2.all = 0x2000;i=0;while(1){while (AdcRegs.ADCST.bit.INT_SEQ1== 0){} // 等待中断AdcRegs.ADCST.bit.INT_SEQ1_CLR = 1;SampleTable[i++] =((AdcRegs.ADCRESULT0>>4) );if(i>(BUF_SIZE-1)){for(i=0;i<BUF_SIZE;i++){mm+=SampleTable[i];}mm=mm/2048/1000;i=0;}}}//===========================================================================
// No more.
//===========================================================================

 


http://www.ppmy.cn/news/331817.html

相关文章

变压器差动保护的影响因素和相应的措施

由于变压器一、二次电流、电压大小不同&#xff0c;相位不同&#xff0c;电流互感器特性差异&#xff0c;电源侧有励磁电流&#xff0c;都将造成不平衡电流流过继电器&#xff0c;必须采用相应措施消除不平衡电流的影响。 主要措施 &#xff08;1&#xff09;减小稳态情况下的…

LC-1170. 比较字符串最小字母出现频次(转换题意 + 排序 + 二分)

1170. 比较字符串最小字母出现频次 难度中等99 定义一个函数 f(s)&#xff0c;统计 s 中**&#xff08;按字典序比较&#xff09;最小字母的出现频次** &#xff0c;其中 s 是一个非空字符串。 例如&#xff0c;若 s "dcce"&#xff0c;那么 f(s) 2&#xff0c;…

鸿蒙系统支持手表,终于等到了!WATCH旗舰系列搭载鸿蒙系统,你会支持吗?

终于等到了&#xff01;WATCH旗舰系列搭载鸿蒙系统&#xff0c;你会支持吗&#xff1f; 鸿蒙系统一直都是国人比较期待的一款手机系统&#xff0c;因为目前国内用户使用的都是苹果的IOS系统和安卓系统&#xff0c;遗憾的是并不是国人自己的系统&#xff0c;期待了很久的鸿蒙系统…

嵌入式了解 以及学习路线

1、嵌入式开发 VS 传统开发 区别&#xff1a; 嵌入式有操作系统为什么要移植操作系统&#xff1a;解决了软硬件耦合度&#xff0c;提高了软件一致性提供了很多开源的工具和库&#xff0c;可以实现多任务&#xff0c;提高了开发效率操作系统还有一些网络协议&#xff0c;因此嵌…

手打感想|关于国产操作系统鸿蒙底层采用英文编程语言这一点,我的几个看法。

最近看到有人说国产操作系统鸿蒙底层采用英文编程语言&#xff0c;这里我发表几点看法。 程序员写程序我想现在的阶段暂时也离不开英文&#xff0c;虽然有很多人都想中文编程&#xff0c;但是谈何容易&#xff0c;从一个角度来看&#xff0c;华为作为中国高新科技产业链的“领头…

华为WATCH GT 3和其他品牌手表比怎么样

昨日&#xff0c;华为WATCH GT 3海外版已经在华为亚太官方网站发布&#xff0c;这是继WATCH GT 2问世之后&#xff0c;华为智能穿戴产品线的又一重磅消息。自华为公司2018年发布首款运动手表GT系列后&#xff0c;GT系列凭借高颜值的时尚外观、强大的健康管理功能以及专业的健身…

h5调用相机拍照,并显示照片

h5页面调用手机相机拍照&#xff0c;并将照片显示在手机或pc端&#xff1b; html代码块&#xff1a; <input type"file" capture"camcorder" accept"image/*" id"filetest" name"filetest"> <img src"&quo…

重器 :关键基础设施保护

执行摘要 2019 年&#xff0c;全球政治经济秩序系统性挑战增加&#xff0c;在传统战争手段为各类条约所限不敢大肆发挥的情 况下&#xff0c;金融行业和网络安全 领域首当其冲&#xff0c;成为新型战争的试水手段甚至将会成为常规手段。《2018 网络安全观察》发布时&#xff0…