欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    dspX2812ch7模数转换器ADC课件.ppt

    • 资源ID:1284300       资源大小:727.26KB        全文页数:68页
    • 资源格式: PPT        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    dspX2812ch7模数转换器ADC课件.ppt

    DSP技术及应用,中南大学信息科学与工程学院 陈宁 2019, 3,DSP技术及应用中南大学信息科学与工程学院 陈宁,7.1 2812内部的ADC模块7.2 ADC模块的工作方式7.3 ADC模块的中断7.4 ADC实验,第7章 模数转换器ADC,7.1 2812内部的ADC模块第7章 模数转换器ADC,模/数转换 ADC,在现实世界中,许多量都是模拟量,例如电压、电流、温度、湿度、压力等信号,而在DSP等微控制器的世界中,所有的量却都是数字量,那如何实现将现实世界的模拟量提供给DSP等微控制器呢?,ADC,模/数转换 ADC 在现实世界中,许多量都是模拟量,例如,7.1 2812内部的ADC模块,ADC模块是一个12位分辨率的、具有流水线结构的模数转换器 。X281X的ADC模块一共具有16个采样通道,分成了两组,一组为ADCINA0ADCINA7,另一组为ADCINB0ADCINB7。,7.1 2812内部的ADC模块ADC模块是一个12位分辨率,ADC模块的结构框图,ADC模块的结构框图,虽然ADC模块具有多个输入通道,但是它内部只有1个转换器,也就是说同一时刻只能对1路输入信号进行转换。当有多路信号需要转换时,ADC模块该怎么办呢?,虽然ADC模块具有多个输入通道,但是,多路转换示意图,多路转换示意图,ADC模块的特点,一共有16个模拟量输入引脚,将这16个输入引脚分成了两组,A组的引脚为ADCINA0ADCINA7,B组的引脚为ADCINB0ADCINB7。 具有12位的ADC内核,内置有2个采样保持器S/H-A和S/H-B,从前面的学习可以知道,引脚ADCINA0ADCINA7对应于采样保持器S/H-A,引脚ADCINB0ADCINB7对应于采样保持器S/H-B。,ADC模块的特点一共有16个模拟量输入引脚,将这16个输入引,ADC模块的特点,ADC模块的时钟频率最高可配置为25MHz,采样频率最高为12.5MSPS,也就是说每秒最高能完成12.5个百万次的采样。 ADC模块的自动序列发生器可以按两个独立的8状态序列发生器(SEQ1和SEQ2)来运行,也可以按一个16状态的序列发生器(SEQ)来运行。,ADC模块的特点ADC模块的时钟频率最高可配置为25MHz,,ADC模块的特点,ADC模拟输入的范围为03V。,AD端口的嵌位电路,ADC模块的特点ADC模拟输入的范围为03V。 AD端口的,ADC模块的特点,ADC模块对一个序列的通道开始转换必须需要有一个启动信号,或者说是一个触发信号。,ADC模块的特点ADC模块对一个序列的通道开始转换必须需要有,ADC模块的特点,ADC模块共有16个结果寄存器ADCRESULT0ADCRESULT15,用来保存转换的数值。每个结果寄存器都是16位的,而X281X的ADC是12位的,也就是说转换后的数字值最高只有12位,那这个12位的值是如何放在16位的结果寄存器中的呢?,ADC模块的特点ADC模块共有16个结果寄存器ADCRESU,ADC模块的特点,ADC模块的特点,ADC的时钟频率和采样频率-1,假设外部晶振的频率为OSCCLK Hz,通常选用的是30M的晶振。外部晶振经过PLL模块产生CPU时钟SYSCLKOUT,如果PLL模块的值为m,则有:,ADC的时钟频率和采样频率-1假设外部晶振的频率为OSCCL,ADC的时钟频率和采样频率-2,然后,CPU时钟信号经过高速时钟预定标器HISPCP之后,生成高速外设时钟HSPCLK,假设HISPCP寄存器的值为n,则有:,ADC的时钟频率和采样频率-2然后,CPU时钟信号经过高速时,ADC的时钟频率和采样频率-3,AD控制寄存器ADCTRL3的第0到第3位,也就是功能位ADCLKPS,可以对HSPCLK进行分频。此外,AD控制寄存器ADCTRL1的CPS位另外还可以提供一个2分频,因此,可以得到ADC模块的时钟ADCLK为:,ADC的时钟频率和采样频率-3AD控制寄存器ADCTRL3的,ADC时钟产生实例,ADC时钟产生实例XCLKINPLLCR3:0HISPC,ADC时钟频率,ADC的时钟频率就是每秒有多少个时钟脉冲的意思,它是ADC模块运行的基础,正如上面所介绍的,它是由系统时钟经过很多环节分频后得到的,它取决于外部的时钟输入和各个环节的倍频或者分频的系数。,ADC时钟频率ADC的时钟频率就是每秒有多少个时钟脉冲的意思,ADC转换时间,转换时间是指ADC模块完成一个通道或者一个序列的转换所需要的时间,很显然,转换时间是由ADC的时钟频率来决定的。,ADCTRL1的ACQ_PS位ADCLK,ts=(ACQ_PS+1)*Tadclk,ADC转换时间转换时间是指ADC模块完成一个通道或者一个序列,ADC采样频率,采样频率是指ADC模块每秒能够完成多少次的采样,采样频率取决于启动ADC的频率。启动ADC的方式有很多,比如利用软件直接启动,利用事件管理器的某些事件,或者是利用外部引脚来启动。启动ADC的频率才是ADC的采样频率,例如如果每隔1ms启动一次ADC,那么ADC的采样频率就为1KHz。,ADC采样频率采样频率是指ADC模块每秒能够完成多少次的采样,7.2 ADC模块的工作方式,ADC模块既支持2个8状态序列发生器SEQ1和SEQ2分开独立工作,此时称为双序列发生器方式,也支持序列发生器SEQ1和SEQ2级联成一个16状态序列发生器SEQ来工作,此时称为单序列发生器方式,或者称为级联方式。,7.2 ADC模块的工作方式ADC模块既支持2个8状态序列发,ADC输入通道选择序列控制寄存器,X281X的16个通道可以通过编程来为序列发生器中需要转换的通道安排顺序,这个功能就需要通过ADC输入通道选择序列控制寄存器ADCCHSELSEQx(x=1,2,3,4)来实现。每一个输入通断选择序列控制寄存器都是16位的,被分成了4个功能位CONVxx,每一个功能位占据寄存器的4个位 。,ADC输入通道选择序列控制寄存器,ADC输入通道选择序列控制寄存器X281X的16个通道可以通,各个序列发生器所对应的寄存器和可选用的通道情况,序列发生器对应的通道选择控制寄存器CONVxx对应的引脚SE,最大转换通道寄存器的结构,最大转换通道寄存器的结构,1.双序列发生器模式下顺序采样,假设需要对ADCINA0ADCINA7,ADCINB0ADCINB7这16路通道进行采样,ADC模块工作于双序列发生器模式,并采用顺序采样。,1.双序列发生器模式下顺序采样假设需要对ADCINA0AD,双序列发生器顺序采样模式下16路通道时ADCCHSELSEQn位情况,ADCCHSELSEQ1CONV000000(ADCINA0,双序列发生器顺序采样模式下序列发生器16路通道选择情况,双序列发生器顺序采样模式下序列发生器16路通道选择情况,AdcRegs.ADCTRL1.bit.SEQ_CAS,双序列发生器顺序采样模式下16路通道转换结果,双序列发生器顺序采样模式下16路通道转换结果,2.双序列发生器模式下并发采样,假设需要对ADCINA0ADCINA7,ADCINB0ADCINB7这16路通道进行采样,ADC模块工作于双序列发生器模式,并采用并发采样。,2.双序列发生器模式下并发采样假设需要对ADCINA0AD,双序列发生器并发采样模式下16路通道时ADCCHSELSEQn位情况,ADCCHSELSEQ1CONV000000(ADCINA0,双序列发生器并发采样模式下序列发生器16路通道选择情况,双序列发生器并发采样模式下序列发生器16路通道选择情况,AdcRegs.ADCTRL1.bit.SEQ_CASC=0,双序列发生器并发采样模式下16路通道转换结果,双序列发生器并发采样模式下16路通道转换结果,3. 级联模式下顺序采样,假设需要对ADCINA0ADCINA7,ADCINB0ADCINB7这16路通道进行采样,ADC模块工作于级联模式,并采用顺序采样。,3. 级联模式下顺序采样假设需要对ADCINA0ADCIN,级联顺序采样模式下16路通道时ADCCHSELSEQn位情况,ADCCHSELSEQ1CONV000000(ADCINA0,级联顺序采样模式下序列发生器16路通道选择情况,级联顺序采样模式下序列发生器16路通道选择情况,AdcRegs.ADCTRL1.bit.SEQ_CAS,级联顺序采样模式下16路通道转换结果,级联顺序采样模式下16路通道转换结果,EX:假设需要对ADCINA0、ADCINA1、ADCINA2、ADCINB3、ADCINB4、ADCINB5、ADCINB7这7路通道进行采样,ADC模块工作于级联模式,并采用顺序采样。,EX:假设需要对ADCINA0、ADCINA1、ADCINA,级联顺序采样模式下7路通道时ADCCHSELSEQn位情况,ADCCHSELSEQ1CONV000000(ADCINA0,级联顺序采样模式下序列发生器7路通道选择情况,级联顺序采样模式下序列发生器7路通道选择情况,AdcRegs.ADCTRL1.bit.SEQ_CASC=1,级联顺序采样模式下7路通道转换结果,级联顺序采样模式下7路通道转换结果,4. 级联模式下的并发采样,假设需要对ADCINA0ADCINA7,ADCINB0ADCINB7这16路通道进行采样,ADC模块工作于级联模式,并采用并发采样。,4. 级联模式下的并发采样假设需要对ADCINA0ADCI,级联并发采样模式下16路通道时ADCCHSELSEQn位情况,ADCCHSELSEQ1CONV000000(ADCINA0,级联并发采样模式下序列发生器16路通道选择情况,级联并发采样模式下序列发生器16路通道选择情况,AdcRegs.ADCTRL1.bit.SEQ_CASC=1,级联并发采样模式下16路通道转换结果,级联并发采样模式下16路通道转换结果,序列发生器工作流程,序列发生器工作流程,7.3 ADC模块的中断,当序列发生器完成一个序列的转换时,就会对该序列发生器的中断标志位进行置位,如果该序列发生器的中断已经使能,则ADC模块便向PIE控制器提出中断请求。 当ADC模块工作于双序列发生器模式时,序列发生器SEQ1和SEQ2可以分开单独设置中断标志位和使能位,当ADC模块工作于级联模式时,设置序列发生器SEQ1的中断标志位和使能位便可以产生ADC转换的中断。,7.3 ADC模块的中断当序列发生器完成一个序列的转换时,就,ADC模块的序列发生器支持两种中断方式,一种叫“interrupt request occurs at the end of every sequence”,意思是中断请求出现在每一个序列转换结束时,换句话说,每转换完一个序列,便产生一次中断请求; 另一种叫“interrupt request occurs at the end of every other sequence”,意思是中断请求出现在每隔一个序列转换结束时,换句话说,不是每次转换完都会产生一个中断请求,而是一个隔一个的产生,比如第一次转换完成时并不产生中断请求,第二次转换完成时才产生中断请求,接着,第三次转换完成也不产生中断请求,第四次转换完成时产生中断请求,一直这样下去。,ADC模块的序列发生器支持两种中断方式一种叫“interru,中断请求出现在每一个序列转换结束时,中断请求出现在每一个序列转换结束时,ADC输入通道选择序列控制寄存器设置,ADCCHSELSEQ1CONV00I1ADCCHSELSE,中断请求出现在每隔一个序列转换结束时,中断请求出现在每隔一个序列转换结束时,ADC输入通道选择控制寄存器设置,ADC输入通道选择控制寄存器设置 ADCCHSELSEQ1,ADC寄存器介绍,ADC寄存器介绍,dspX2812ch7模数转换器ADC课件,dspX2812ch7模数转换器ADC课件,7.4 双通道AD采集实验,TMS320F2812A芯片自带模数转换模块特性- 12位模数转换模块ADC,快速转换时间运行在25mhz,ADC时钟或12.5MSPS。-16个模拟输入通道(AIN0AIN15)。-内置双采样-保持器-采样幅度:0-3v,切记输入ad的信号不要超过这个范围,否则会烧坏2812芯片的。 ADC模块有16个通道,可配置为两个独立的8通道模块以方便为事件管理器A和B服务。两个独立的8通道模块可以级连组成16通道模块。虽然有多个输入通道和两个序列器,但在ADC内部只有一个转换器,同一时刻只有1路ad进行转换数据。,7.4 双通道AD采集实验TMS320F2812A芯片自带模,dspX2812ch7模数转换器ADC课件,1) 用1根信号线连接实验箱左侧信号源的波形输出A端口和“A/D输入”模块的“ADCIN0”插座注意插头要插牢、到底。这样,信号源波形输出A的输出波形即可送到ICETEKF2812-A板的AD输入通道0。2) 用1根信号线连接实验箱左侧信号源的波形输出B端口和“A/D输入”模块的“ADCIN1”插座注意插头要插牢、到底。这样,信号源波形输出B的输出波形即可送到ICETEKF2812-A板的AD输入通道1。,3) 设置波形输出A: - 向内侧按波形频率选择旋钮,直到标有正弦波的指示灯点亮。 - 上下调节波形频率选择旋钮,直到标有1KHz-10KHz的指示灯点亮。 - 调节幅值调整旋钮,将波形输出A的幅值调到最大。,正弦波1K-10KHz正弦波1K-10KHz幅值调整波形频率,main() InitSysCtrl();/初始化cpu DINT;/关中断 InitPieCtrl();/初始化pie寄存器 IER = 0 x0000;/禁止所有的中断 IFR = 0 x0000; InitPieVectTable();/初始化pie中断向量表 / Interrupts that are used in this example are re-mapped to/ ISR functions found within this file. EALLOW; / This is needed to write to EALLOW protected register PieVectTable.ADCINT = / This is needed to disable write to EALLOW protected registers,main(),AdcRegs.ADCTRL1.bit.RESET = 1; /Reset the ADC moduleasm( RPT #10 | NOP);/ Must wait 12-cycles (worst-case) for ADC reset to take effectAdcRegs.ADCTRL3.all = 0 x00C8;/ first power-up ref and bandgap circuits AdcRegs.ADCTRL3.bit.ADCBGRFDN = 0 x3;/ Power up bandgap/reference circuitryAdcRegs.ADCTRL3.bit.ADCPWDN = 1;/ Power up rest of ADC/ Enable ADCINT in PIE PieCtrlRegs.PIEIER1.bit.INTx6 = 1; IER |= M_INT1; / Enable CPU Interrupt 1 EINT; / Enable Global interrupt INTM ERTM; / Enable Global realtime interrupt DBGM,AdcRegs.ADCTRL1.bit.RESET = 1;,/ Configure ADC AdcRegs.ADCMAXCONV.all = 0 x0001; / Setup 2 convs on SEQ1 AdcRegs.ADCCHSELSEQ1.bit.CONV00 = 0 x0; / Setup ADCINA3 as 1st SEQ1 conv. AdcRegs.ADCCHSELSEQ1.bit.CONV01 = 0 x1; / Setup ADCINA2 as 2nd SEQ1 conv. AdcRegs.ADCTRL2.bit.EVA_SOC_SEQ1 = 1; / Enable EVASOC to start SEQ1 AdcRegs.ADCTRL2.bit.INT_ENA_SEQ1 = 1; / Enable SEQ1 interrupt (every EOS),/ Configure ADC,/ Configure EVA/ Assumes EVA Clock is already enabled in InitSysCtrl(); EvaRegs.T1CMPR = 0 x0080; / Setup T1 compare value EvaRegs.T1PR = 0 x10; / Setup period register EvaRegs.GPTCONA.bit.T1TOADC = 1; / Enable EVASOC in EVA EvaRegs.T1CON.all = 0 x1042; / Enable timer 1 compare (upcount mode)/ Wait for ADC interruptLoopCount = 0;ConversionCount = 0; while(1) LoopCount+; ,主程序结束,/ Configure EVA主程序结束,Uint16 LoopCount;Uint16 ConversionCount;Uint16 Voltage11024;Uint16 Voltage21024;interrupt void adc_isr(void) Voltage1ConversionCount = AdcRegs.ADCRESULT0 4; Voltage2ConversionCount = AdcRegs.ADCRESULT1 4; / If 40 conversions have been logged, start over if(ConversionCount = 1023) ConversionCount = 0; else ConversionCount+; / Reinitialize for next ADC sequence AdcRegs.ADCTRL2.bit.RST_SEQ1 = 1; / Reset SEQ1 AdcRegs.ADCST.bit.INT_SEQ1_CLR = 1; / Clear INT SEQ1 bit PieCtrlRegs.PIEACK.all = PIEACK_GROUP1; / Acknowledge interrupt to PIE return;,中断服务程序,Uint16 LoopCount;中断服务程序,实验结果,实验结果,

    注意事项

    本文(dspX2812ch7模数转换器ADC课件.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开