dsp课程设计-cpu内部ad转换

dsp课程设计-cpu内部ad转换

ID:23811469

大小:1.36 MB

页数:11页

时间:2018-11-10

dsp课程设计-cpu内部ad转换_第1页
dsp课程设计-cpu内部ad转换_第2页
dsp课程设计-cpu内部ad转换_第3页
dsp课程设计-cpu内部ad转换_第4页
dsp课程设计-cpu内部ad转换_第5页
资源描述:

《dsp课程设计-cpu内部ad转换》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、DSP设计报告题目CPU内部AD转换学院:物理与信息工程学院专业:测控2013年1月2日11目录一:设计目的…………………………………..........…………3二:实验设备..……………………………………………3三:实验原理.……………………………………………...……4四:实验说明..…………………………………………………7五:实验数据…………………………………..……………10六:心得与体会……………………………………………11A/D实验(CPU)一:设计目的1.熟悉CPU内部AD转换的基本原理。112.掌握TMS320F2812的内部ADC功能模块的指标和常用方法。二、实验设备计

2、算机,CCS3.3版本软件,DSP仿真器,E300实验箱,2812CPU板(新的),信号线,示波器三、实验原理与任务1、实验原理:TMS320F112812DSP自带16路12位单极性ADC转换器,并且内置双采样保持器。快速转换时间运行在25MHz。16个通道可配置为两个独立的8通道模块以便为事件管理器A和B服务。两个独立的8通道模块可以级联组成一个16通道模块。虽然有多个输入通道和两个序列器,但是ADC模块只有一个转换器。下图给出了F2812的ADC模块框图。两个8通道模块具有一对系列转换和自动序列化的能力,通过模拟多路复用器,每个模块都可以选择可用的8个通道中的任何一个通道。在级联模式

3、下,自动序列发生器可作为一个单一的16通道序列发生器。在每个序列发生器上,一旦转换结束,已选择的通道值就保存在各个通道的结果寄存器ADCRESULT中。自动序列化允许系统对同一通道转换多次,允许用户执行过采样算法。这较传统的单一采样转换结果增加了更多的解决方案。输入模拟电压的数字值为:数字值=4095×(输入模拟电压值)/3多触发源启动序列转换(SOC)包括:●S/W:软件直接启动;●EVA/B:事件管理器A/B(EVA/B内有多个事件源);●S/W:外部引脚。具体的原理和相关内容,请读者参阅相关的文档和书籍。2、实验任务一:通过信号发生器,产生方波和正玄波,由DSP自带AD将数据采集到D

4、SP内,经过CCS自带的graph功能,运行程序,观察测试结果。3、程序框图114、主要程序:#include"DSP281x_Device.h"//DSP281xHeaderfileIncludeFile#include"DSP281x_Examples.h"//DSP281xExamplesIncludeFileinterruptvoidadc_isr(void);Uint16LoopCount;Uint16ConversionCount;Uint16input1[256];Uint16input2[256];Uint16Mixing[256];voidmain(void){InitS

5、ysCtrl();EALLOW;SysCtrlRegs.PLLCR.all=0x8;SysCtrlRegs.HISPCP.all=0x3;EDIS;DINT;InitPieCtrl();IER=0x0000;11IFR=0x0000;InitPieVectTable();EALLOW;PieVectTable.ADCINT=&adc_isr;EDIS;InitAdc();PieCtrlRegs.PIEIER1.bit.INTx6=1;IER

6、=M_INT1;EINT;ERTM;LoopCount=0;ConversionCount=0;AdcRegs.ADCTRL1.bit.SEQ_CAS

7、C=1;AdcRegs.ADCMAXCONV.all=0x0001;AdcRegs.ADCCHSELSEQ1.bit.CONV00=0x0;AdcRegs.ADCCHSELSEQ1.bit.CONV01=0x2;AdcRegs.ADCTRL2.bit.EVA_SOC_SEQ1=1;AdcRegs.ADCTRL2.bit.INT_ENA_SEQ1=1;EvaRegs.T1CMPR=0x0380;EvaRegs.T1PR=0x07FF;EvaRegs.GPTCONA.bit.T1TOADC=1;EvaRegs.T1CON.all=0x1042;for(;;){LoopCount++;}}int

8、erruptvoidadc_isr(void){input1[ConversionCount]=AdcRegs.ADCRESULT0>>4;input2[ConversionCount]=AdcRegs.ADCRESULT1>>4;Mixing[ConversionCount]=input1[ConversionCount]+input2[ConversionCount];if(ConversionCount==256)

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。