DSP 280049C ADC配置及应用思考

280049C ADC配置及应用思考

具体细节说明书最详细,此内容仅抛砖引玉


280049C ADC模块简介

1. 280049C的ADC都是12位的,只支持单端输入,不支持差分输入

2.三个模数转换器(ADCA,ADCB,ADCC),即三个ADC模块,每个ADC模块由一个采样保持(s/h)电路组成。ADC模块设计为在同一芯片上进行多次复制,允许多个ADC同时采样或独立操作。

3.每个ADC模块有16个通道,每个通道可配置

3.将模拟电压转换为数字值的过程分为S+H阶段和转换阶段。ADC采样和保持电路(S+H)由SYSCLK计时,而ADC转换过程由ADCCLK计时。ADCCLK是通过(AdcaRegs.ADCCTL2.bit.PRESCALE)配置进行分频而生成的。S+H持续时间是正在转换的SOC的ACQPS字段的值(AdcaRegs.ADCSOC0CTL.bit.ACQPS)加上SYSCLK周期的一倍。用户必须确保该持续时间超过1个ADCCLK周期和数据表中指定的最小S+H持续时间。转换时间约为10.5个ADCCLK周期。确切的转换时间总是SYSCLK周期的整数。

一、寄存器配置

1.配置参考电压,为模数转换器(ADC)配置参考电压,该参考电压对应AD值4096(12位ADC)

2.时钟配置,基本ADC时钟由系统时钟(SYSCLK)直接提供。SYSCLK用于生成ADC采集窗口。寄存器ADCCTL2具有确定ADCCLK的PRESCALE字段。ADCCLK用于为转换器计时,仅在转换阶段有效。在所有其他时间,包括在采样和保持窗口期间,ADCCLK信号被门控关闭。

3.配置采样通道与ADC模块通道相对应,与结果寄存器相对应

4.中断配置,选择一个SOC来触发ADC中断,将ADC中断信号传递PIE,需要ADC中断才配置

二、配置代码

代码如下:

    // Setup VREF as internal
    SetVREF(ADC_ADCA, ADC_INTERNAL, ADC_VREF3P3);
    EALLOW;
    // Set ADCCLK divider to /4
    AdcaRegs.ADCCTL2.bit.PRESCALE = 6;  
    // Set pulse positions to late
    AdcaRegs.ADCCTL1.bit.INTPULSEPOS = 1;  //中断脉冲的产生发生在转换结束时,ADC结果锁存到其结果寄存器前1个周期
    // Power up the ADC and then delay for 1 ms
    AdcaRegs.ADCCTL1.bit.ADCPWDNZ = 1;  //该位控制模拟核心内所有模拟电路的加电和断电
    EDIS;
    DELAY_US(1000);
    
    EALLOW;
    AdcaRegs.ADCSOC0CTL.bit.CHSEL       = CH_SOCA0;  //选择采样通道
    AdcaRegs.ADCSOC0CTL.bit.TRIGSEL     = TRIG_SOCA0;  //选择触发源
    AdcaRegs.ADCSOC0CTL.bit.ACQPS       = ACQPS_SOCA0;  //控制此SOC的采样和保持窗口。配置的采集时间必须至少为一个ADCCLK周期,以确保ADC的正确操作,为了正确操作,必须允许ADC的输入信号有足够的时间对采样和保持电容器Ch.充电。
    EDIS;
    
    EALLOW;
    // End of SOC0 will set INT1 flag
    AdcaRegs.ADCINTSEL1N2.bit.INT1SEL = 0x1u;  //选择信号来产生ADC中断
    // Enable INT1 flag
    AdcaRegs.ADCINTSEL1N2.bit.INT1E = 1u;
    AdcaRegs.ADCINTSEL1N2.bit.INT1CONT = 1u;  //无论标志位是否被清除,只要产生EOC脉冲,就会产生ADCINT1脉冲
    // Make sure INT1 flag is cleared
    AdcaRegs.ADCINTFLGCLR.bit.ADCINT1 = 1u;
    EDIS;

    DELAY_US(1000);

三、应用思考

1.一个模数转换器多个通道,采集的先后顺利如何定义,默认是轮询的,但是可以配置优先级
2.模数转换的频率和触发采样的频率,以PWM触发采样为例,PWM触发的频率是否会超过转换频率,大部分情况不会,目前接触过最快的PWM频率,LLC原边调频控制300K赫兹,转换频率以兆赫兹为单位,因此控制频率特别快的时候需要注意
3.ADC采样误差波动原因及处理
软件:通过对采样数据滤波及校表处理,得到准确的AD值
硬件:1.ADC阻抗匹配,根据芯片内部的采样保持电路设计外围采样电路
2.ADC受到开关噪声干扰,采样时刻和PWM开关时间重叠,以PWM触发采样为例,管子的开关会相对发出的PWM延迟,通常采样时刻快于管子开关时刻
3.ADC采样基于系统时间,系统时间进行了配置,需要考虑
4.ADC采样端口电压不要大于芯片规定的3.3V,整个芯片的端口电压一样不要超过规定的值,有某一个端口超过,会有意想不到的问题
4.ADC采样对环路控制的影响(后续整理下)


总结

采样过程包括,采样、保持、量化、编码,配置在采样保持及编码环节进行配置
采样是环路控制关键,配置的时候,考虑采样信号特征、香农采样定律、环路控制需求等

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值