测试方法如下:ePWM1载波过零点触发ADC转换,同时输出载波同步信号,顺序扫描16个通道,AD转换完成使用SOC15触发ADC中断,在ADC的ISR中设置一个GPIO,用示波器测量载波同步信号与这个GPIO反转时的时间,估算ADC转换与中断延时的时间。
最开始用的是ADCINT9(INT1.6)这个时间大约是3us左右。
后来为了使用CLA,需要转移到ADCINT1到ADCINT8,转移到ADCINT1(INT1.1)以后,发现这个时间延长到了5us左右,ADCINT2(INT1.2)也是5us,ADCINT3(INT10.3)也是3us,和ADCINT9(INT1.6)相同。除了ISR的位置,其它代码都相同。
什么原因造成的ADCINT1和ADCINT2延迟多了2us时间呢?在ISR中2us延迟时间不少了。
Annie Liu:
为更加有效地解决您的问题,我们建议您将问题发布在E2E英文技术论坛上https://e2e.ti.com/support/microcontrollers/c2000/f/171,将由资深的工程师为您提供帮助。我们的E2E英文社区有TI专家进行回复,并得到全球各地工程师的支持,分享他们的知识和经验。
测试方法如下:ePWM1载波过零点触发ADC转换,同时输出载波同步信号,顺序扫描16个通道,AD转换完成使用SOC15触发ADC中断,在ADC的ISR中设置一个GPIO,用示波器测量载波同步信号与这个GPIO反转时的时间,估算ADC转换与中断延时的时间。
最开始用的是ADCINT9(INT1.6)这个时间大约是3us左右。
后来为了使用CLA,需要转移到ADCINT1到ADCINT8,转移到ADCINT1(INT1.1)以后,发现这个时间延长到了5us左右,ADCINT2(INT1.2)也是5us,ADCINT3(INT10.3)也是3us,和ADCINT9(INT1.6)相同。除了ISR的位置,其它代码都相同。
什么原因造成的ADCINT1和ADCINT2延迟多了2us时间呢?在ISR中2us延迟时间不少了。
Xiao Dong:
回复 Annie Liu:
28035的坑太多了,官方库里面就好多
测试方法如下:ePWM1载波过零点触发ADC转换,同时输出载波同步信号,顺序扫描16个通道,AD转换完成使用SOC15触发ADC中断,在ADC的ISR中设置一个GPIO,用示波器测量载波同步信号与这个GPIO反转时的时间,估算ADC转换与中断延时的时间。
最开始用的是ADCINT9(INT1.6)这个时间大约是3us左右。
后来为了使用CLA,需要转移到ADCINT1到ADCINT8,转移到ADCINT1(INT1.1)以后,发现这个时间延长到了5us左右,ADCINT2(INT1.2)也是5us,ADCINT3(INT10.3)也是3us,和ADCINT9(INT1.6)相同。除了ISR的位置,其它代码都相同。
什么原因造成的ADCINT1和ADCINT2延迟多了2us时间呢?在ISR中2us延迟时间不少了。
K Mr:这里我也遇到过类似的问题,现在还没解决,期待得到TI工作人员的解释