FlexTimer_ic Error Handling

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

FlexTimer_ic Error Handling

1,305件の閲覧回数
omneia_elshaer
Contributor I

I'm uisng FlexTimer_ic (using FTM2) to capture two signals phase shifted using Ch0 and Ch2
interrupt of Ch0 must be fired when detecting rising of the first signal and interrupt of Ch2 must be fired whend detecting Falling edge of the second signal.

However, sometimes the interrupt of Ch2 is triggired with the interrupt of Ch0 and without having a falling edge on Ch2. To clarify this please check the image below:
The blue line is the input signal to Ch0.
The green line is the input signal to Ch2.

The yellow line is set to 0 when the interrupt of Ch2 is triggerd.

scope_10.png

As you can see the interrupt of Ch2 is triggered with the rising edge of Ch0.

After some investigations, I suspect being affected by the "ERRATA_E9005".
ERRATA_E9005: Core: Store immediate overlapping exception return operation might vector to incorrect interrupt.

I'm using GCC v.6.3.1 20170509

Does anyone know a work around or how to fix this issue ?

タグ(3)
0 返答(返信)