第5章 模拟信号的采集.pptVIP

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第5章 模拟信号的采样 主要内容 A/D转换基本知识 ADC的作用 在通常的DSP系统中,DSP作为核心芯片只能处理数字信号,而实际控制系统经常需要采集电压、电流等模拟量参数,这就需要通过一定的前向通道和后向通道将DSP系统与实际系统联系起来。所谓前向通道,就是将实际系统的物理信号转换成数字信号的通道。通常由传感器、抗混叠滤波电路、信号调理电路、采样保持电路,以及A/D转换电路构成。DSP的前向通道的性能在很大程度上决定了A/D转换电路的速度、精度等性能。 项目要求 使用两路模拟信号源,产生两路频率、幅度可调的正弦波。 用示波器监测正弦波信号1、2的输出幅度为0~5V。用连线将正弦波信号1、2的输出接到AD转换单元的输入AD_IN0和AD_IN7。 通过F2812的A/D转换模块得到相应的数字量,利用CCS的数据可视化功能,在CCS的View/Graph菜单窗口观察该数据波形是否与输入波形一致。 本项目使用DSP自带的ADC转换器采集信号源的信号。并将采集到的信号储存到指定的内存区域。对于输入的模拟信号,通过调理电路,保证输入信号最大为3.3V。 通过软件设置ADC通道为2路,此处使用0、7通道,转换次序为先0通道再7通道,采集结果分别存入RESULT0和RESULT7。ADC的启动由EVA的定时比较事件来启动。 信号调理电路 LM358内部结构 5.3.1 采样和采样定理 A/D转换就是将模拟信号转换为数字信号的过程。一般可分为取样、保持、量化、编码四个步骤。 保持:由于取样的结果是一系列很窄的脉冲,为了保证有足够的时间进行转换,应当将此脉冲的幅值保持住(Hold),直到下一次取样时刻的到来。 5.3.2 A/D转换的主要指标 A/D转换位数和A/D分辨率: 转换时间和转换速率: 转换时间:ADC完成一次转换所需要的时间,即从启动信号开始到转换结束并得到稳定的数字输出量为止的总时间。一般来说,转换时间越短,转换速度越快。 转换速率:1s 时间内能完成转换的次数,即转换时间的倒数。单位为kHz,MHz。例如,AD570的转换时间为25us,其转换率为40kHz。TMS320C2812的ADC在25MHz时最高转换速率为ADCLK或12.5MHz。 F2812的ADC模块功能框图 自动转换排序器的工作原理 顺序采样同步采样 ADC模块可以工作于顺序采样和同步采样模式,由ADCTL3的SMOD_SEL位决定。每次转换时,所选择的模拟输入通道是由ADC通道选择排序控制器(ADCCHSELSEQn)中的位域CONVnn确定的。 连续排序模式和启动-停止排序模式 排序器可以工作在连续排序模式和启动-停止排序模式。 在连续排序模式时,第1轮转换结束后(SEQ CNTRn递减到0时),又继续进行第2轮转换; 在启动-停止排序模式下,排序指针指到当前的通道。 模式选择由ADCTRL1的CONT RUN位决定。 程序讲解 [1] 首先进行头文件引用,系统变量声明。 主程序流程 InitAdc(); //初始化ADC模块 // 在PIE级使能ADC中断(ADCINT为PIE1.6中断) PieCtrlRegs.PIEIER1.bit.INTx6 = 1; IER |= M_INT1; // 使能CPU1中断 EINT; // 使能全局中断 ERTM; //使能实时中断(设置断点不影响) //变量初始化 LoopCount = 0; ConversionCount = 0; 配置 ADC的子程序 AdcRegs.ADCTRL1.bit.SEQ_CASC = 1; //采用级联排序器模式 AdcRegs.ADCMAXCONV.all = 0x0001; // 有2个转换通道 AdcRegs.ADCCHSELSEQ1.bit.CONV00 = 0x0; // 设置 ADCINA0 先转换. AdcRegs.ADCCHSELSEQ1.bit.CONV01 = 0x7; // 设置 ADCINA7后转换. AdcRegs.ADCTRL2.bit.EVA_SOC_SEQ1 = 1; // 使能EVASOC启动SEQ1 AdcRegs.ADCTRL2.bit.INT_ENA_SEQ1 = 1; // 使能 SEQ1中断 (每个EOS) 配置 EVA // 假设EVA时钟在系统初始化 InitSysCtrl()中已使能; EvaRegs.T1CMPR = 0x0380; //设置EVA定时器1的比较寄存器的值 Eva

文档评论(0)

wxc6688 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档