网站公告列表

  没有公告

加入收藏
设为首页
联系站长
您现在的位置: 61IC中国电子在线 >> DSP >> 代码示例 >> TI DSP代码示例 >> C2000 >> 文章正文
  TMS320F2812的ADC模块用于采样过程的初始化代码(一)         ★★★ 【字体:
TMS320F2812的ADC模块用于采样过程的初始化代码(一)
作者:code    文章来源:本站    点击数:    更新时间:2007-5-9    
 

void InitAdc(void) //初始化ADC模块
{
unsigned int i;

AdcRegs.ADCTRL1.bit.RESET = 1; //ADC模块软复位,3个周期后,该位自动清0
for(i=0;i<12;i++) NOP; //等待ADC寄存器硬件复位完备>

AdcRegs.ADCTRL1.bit.SUSMOD = 3; //仿真挂起模式,0为忽略仿真挂起
AdcRegs.ADCTRL1.bit.ACQ_PS = 1; //采样保持脉冲个数,即SH为1+1=2个ADCCLK
AdcRegs.ADCTRL1.bit.CPS = 0; //是否再对送给ADC的时钟进行二分频
AdcRegs.ADCTRL1.bit.CONT_RUN = 0; //1:进入连续运行; 0:开始停止模式
AdcRegs.ADCTRL1.bit.SEQ_CASC = 0; //0:独立模式; 1:级联序列器模式

AdcRegs.ADCTRL3.bit.ADCBGRFDN = 3; //带隙参考电路上电
for(i=0;i<10000;i++) NOP;>
AdcRegs.ADCTRL3.bit.ADCPWDN = 1; //除带隙参考电路外的其他ADC模块上电
for(i=0;i<5000;i++) NOP;>
AdcRegs.ADCTRL3.bit.ADCCLKPS = 3; //设置ADC的转换时钟ADCCLK = HSPCLK/(2*(ADCCLKPS+CPS))=25MHZ
AdcRegs.ADCTRL3.bit.SMODE_SEL = 0; //0:顺序采用模式,1:同步采样模式

AdcRegs.MAX_CONV.all = 0x0000; //设置ADC的转换通道数
AdcRegs.CHSELSEQ1.bit.CONV00 = 0; //设置ADCINA0为SEQ1的第一个转换通道

AdcRegs.ADC_ST_FLAG.bit.INT_SEQ1_CLR=1; //清除SEQ1中断标志
AdcRegs.ADCTRL2.bit.EVA_SOC_SEQ1 = 1; //使能EVASOC启动SEQ1
AdcRegs.ADCTRL2.bit.INT_ENA_SEQ1 = 1; //使能SEQ1中断

AdcRegs.ADCTRL2.bit.EVB_SOC_SEQ = 0;
AdcRegs.ADCTRL2.bit.RST_SEQ1 = 0;
AdcRegs.ADCTRL2.bit.INT_MOD_SEQ1 = 0;
AdcRegs.ADCTRL2.bit.EXT_SOC_SEQ1 = 0;
AdcRegs.ADCTRL2.bit.RST_SEQ2=0;
AdcRegs.ADCTRL2.bit.SOC_SEQ2=0;
AdcRegs.ADCTRL2.bit.INT_ENA_SEQ2=0;
AdcRegs.ADCTRL2.bit.INT_MOD_SEQ2=0;
AdcRegs.ADCTRL2.bit.EVB_SOC_SEQ2=0;
AdcRegs.ADCTRL2.bit.SOC_SEQ1 = 0; //为1时,软件启动ADC转换
}

               欢迎点击进入:TI德州中文网   (国内唯一针对TI应用的中文技术网站)    文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
    基于DSP的电子节气门PID控制
    基于DSP的多路音/视频采集处…
    低功耗实时可编程DSP数字助听…
    基于DSP+CPLD的断路器智能控…
    基于DSP+CPLD的交流电机调速…
    基于DSP的分布式微机保护测控…
    基于DSP的语音实时变速系统设…
    以ARM和DSP嵌入式系统为核心…
    基于双DSP的运动目标智能跟踪…
    高性能定点DSP位处理单元(BM…
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    站长:61IC 湘ICP备05002478号