28335 ADC采样正弦波,采样结果跳变

[复制链接]
2604|6
 楼主| 598835484 发表于 2018-6-8 15:39 | 显示全部楼层 |阅读模式
用28335的ADC模块对模拟的正弦波形进行采样,发现波形会出现跳变的情况。请问这是什么原因造成的?
  1. EALLOW;
  2.    #if (CPU_FRQ_150MHZ)   
  3.      #define ADC_MODCLK 0x3
  4.    #endif
  5.    #if (CPU_FRQ_100MHZ)
  6.      #define ADC_MODCLK 0x2
  7.    #endif
  8.    EDIS;

  9.    EALLOW;
  10.    SysCtrlRegs.HISPCP.all = ADC_MODCLK;        // HSPCLK = SYSCLKOUT/ADC_MODCLK
  11.    EDIS;

  12.    AdcRegs.ADCTRL1.bit.ACQ_PS=0xf;
  13.    AdcRegs.ADCTRL3.bit.ADCCLKPS = 0x1;//设置采用2分频
  14.    AdcRegs.ADCTRL1.bit.SEQ_CASC=1;
  15.    AdcRegs.ADCMAXCONV.bit.MAX_CONV1=2;
  16.    AdcRegs.ADCTRL2.bit.EPWM_SOCA_SEQ1=1;

  17.    AdcRegs.ADCCHSELSEQ1.bit.CONV00=0x0;
  18.    AdcRegs.ADCCHSELSEQ1.bit.CONV01=0x1;
  19.    AdcRegs.ADCCHSELSEQ1.bit.CONV02=0x2;

  20.    AdcRegs.ADCTRL1.bit.CONT_RUN=1;
  21.    AdcRegs.ADCTRL1.bit.SEQ_OVRD=0;
  22.    AdcRegs.ADCTRL2.bit.INT_ENA_SEQ1=1;
  23.    
  24.    
  25. //  AdcRegs.ADCTRL2.bit.SOC_SEQ1=1;

  26.     //设置ePWM1_SOCA为ADC模块的启动信号
  27.    EPwm1Regs.ETSEL.bit.SOCAEN = 1;                // 使能A组的启动信号SOCA
  28.    EPwm1Regs.ETSEL.bit.SOCASEL = ET_CTR_ZERO;     // 选择SOCA信号产生的时刻为CTR = 0
  29.    EPwm1Regs.ETPS.bit.SOCAPRD = ET_1ST;          // 每次触发事件产生一个启动信号
  30.    EPwm1Regs.ETCLR.bit.SOCA = 1;


  31. while(AdcRegs.ADCST.bit.INT_SEQ1==0){};
  32. //AdcRegs.ADCST.bit.INT_SEQ1_CLR = 1;  //清除中断标志位
  33. // while (AdcRegs.ADCST.bit.SEQ1_BSY == 1);

  34. p->v_spe = 3 * (AdcRegs.ADCRESULT0>>4) /4095.0;
  35. p->v_Ia =  3 * (AdcRegs.ADCRESULT1>>4) /4095.0;
  36. p->v_Ib =  3 * (AdcRegs.ADCRESULT2>>4) /4095.0;

  37. p->Speed_tar = p->v_spe /3.0;   //目标转速标幺值
  38. p->Ia = (p->v_Ia - 1.65) * 10;
  39. p->Ib = (p->v_Ib - 1.65) * 10;

  40. //AdcRegs.ADCTRL2.bit.RST_SEQ1 = 1;   //复位SEQ1转换序列
  41. AdcRegs.ADCST.bit.INT_SEQ1_CLR = 1;


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
Cjy_JDxy 发表于 2018-6-8 16:32 | 显示全部楼层
你的正弦波频率是多大呀
zhangmangui 发表于 2018-6-8 21:55 | 显示全部楼层
采集的都是无符号数   你显示的是有符号数?
zhangmangui 发表于 2018-6-8 21:56 | 显示全部楼层
从波形上看    应该是数据类型造成的
lmh724073398 发表于 2018-6-9 19:00 | 显示全部楼层
请问楼主问题解决了吗,我也出现这样的问题
 楼主| 598835484 发表于 2018-6-10 11:27 | 显示全部楼层
排查发现是数据更新的问题  并不是采样的问题。只是部分数据还是上一次存储的值没有覆盖。
vibra2016 发表于 2018-6-11 21:32 | 显示全部楼层
正弦波的设计没那么复杂的吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则

30

主题

118

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部