求教

[复制链接]
1266|6
 楼主| acer4736 发表于 2013-9-21 17:30 | 显示全部楼层 |阅读模式
碰到一个问题是ePWM触发ADC转换的,TI的例子有一个EPWM周期确发两个不同端口ADC转换,而我现在需要触发10个以上单端口转换,而且转换是周期性的取样,需要在下个ePWM触发时,转换完成
请问一下寄存器要如何设置,能提供个思路吗?
 楼主| acer4736 发表于 2013-9-21 17:31 | 显示全部楼层
jinpaidianzi 发表于 2013-9-21 18:17 | 显示全部楼层
寄存器的配置还是基本类似的,你在ADC配置10个通道。不过SEQ1和SEQ2各有8个通道,要把SEQ1和SEQ2配置成级联模式,即

   AdcRegs.ADCTRL3.bit.SMODE_SEL = 0;      //0 顺序采样,1 同步采样
AdcRegs.ADCTRL1.bit.SEQ_CASC = 1;        //级联模式
然后在AD中配置PWM触发SOC
AdcRegs.ADCTRL2.bit.EPWM_SOCA_SEQ1 = 1;// 使能PWM触发SEQ1
  AdcRegs.ADCTRL2.bit.INT_ENA_SEQ1 = 1;        // 使能ADC SEQ1中断

在PWM中如此配置
EPwm1Regs.ETSEL.bit.SOCAEN = 1;        // 使能SOC(A)
  EPwm1Regs.ETSEL.bit.SOCASEL = 4;       // 选择CTR(U)=CMPA时触发ADC
  EPwm1Regs.ETPS.bit.SOCAPRD = 1;        // 在第一个时间发生时触发
teabottle 发表于 2013-9-21 20:24 | 显示全部楼层
网上PWM触发ADC SOC的配置图,楼主搜搜看
wangjinlili 发表于 2013-9-21 21:39 | 显示全部楼层
不同的SOC,配置成同一个触发源即可。
meishizhaoshi 发表于 2013-9-21 21:53 | 显示全部楼层
楼主解决了问题要拿出来分享一下呀
zhangmangui 发表于 2013-9-21 23:51 | 显示全部楼层
可以初始化AD为并行运行  一次触发两路AD同时转换
您需要登录后才可以回帖 登录 | 注册

本版积分规则

175

主题

1500

帖子

3

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