工具/软件:
您好:
我正在使用 TMS320F280039C LaunchPad 并使用 ADC 模块的噪声 基于 ADC_ex2_SoC_EPWM 示例。 在我的设置中:
ADC SOC0 由触发 ePWM1 ADCSOCA AT 内存 = 做出响应 ( 向上计数模式 )。
ADC 转换完成后、采用 生成中断 (出现在采集窗口的末尾)。
ePWM1 的实际应用 100kHz 指定 向上计数模式 。
我正在录制 EPWM 计数器值 在中断时并始终观察两者之间的值 90 至 93 。
给定的 SYSCLK = 120MHz 、每个 EPWM 周期为 8.33ns 、因此中断大约发生 750ns (= 90 * 8.33ns)。
我了解 ADC 时序、如下所示:
ADCCLK = 60MHz、预分频器= 2
ADC 转换时间 =(9 *(1/120E6))+(11 *(1/60E6))= 258.3E-9 秒
但是、我看到了大约一半的延迟 750ns 、此时间比计算的时间长很多 258ns 。 这会留下大约必要的间隙 492ns 。
您能帮助我了解导致这种额外延迟的原因吗?\
此外、以下是相关的拆卸说明:
237{
adcA1isr():
008800:761B ASP
008801:FFF0 推送 RB
008802:0005 推送 AR1H:AR0H
008803:ABBD MOVL *SP++、XT
008804:A8BD MOVL *SP++、XAR4
008805:A0BD MOVL *SP++、XAR5
008806:C2BD MOVL *SP++、XAR6
008807:C3BD MOVL * SP++、XAR7
008808:E20000BD MOV32 *SP++、STF
00880a:E20300BD MOV32 *SP++、R0H
00880c:E20301BD MOV32 *SP++、R1H
00880e:E20302BD MOV32 *SP++、R2H
008810:E20303BD MOV32 *SP++、R3H
008812:E6300600 SETFLG RNDF32=1、RNDF64=1
008814:FF69 SPM #0
008815:2942 CLRC OVM|PAGE0
008816:5616 CLRC AMODE
239 isr Tick_Entry = EPWM_getTimeBaseCounterValue (myEPWM0_BASE);
008817:FF204000 MOV ACC、#16384
008819:764092F1 LCR EPWM_getTimeBaseCounterValue
00881b:761F02A0 MOVW DP、#0x2a0
00881d:9609 MOV @0x9、铝制
243 GPIO_togglePin (myGPIO0);
00881e:0216 MOVB ACC、#22
00881f:76408E69 LCR GPIO_togglePin
此致、
Prathamesh。
