AnsweredAssumed Answered

FlexRay vs. NestedVectorISR handling (S12XF512)

Question asked by Istvan Reti on May 14, 2014
Latest reply on May 15, 2014 by Istvan Reti

Hi All!


First of all, the FR system is the following:

  • FR Drivers - Freescale "S12XFSTARTERKITE: S12XF 2-Node Starter Kit" from home page. 
  • Individual MessageBuffers (MB)
  • Node1: TX1, RX2, RX5
  • Node2: RX1, TX2, RX5
  • Node3 (faulty): RX1(MB0), RX2(MB1), TX5


With Node3 I had a problem with using FlexRay in a Nested Interrupt hierarchy system. On the one hand there is a BLDC motor control with some interrupts(Timers, PWM, SPI), and on the other hand I use FR for communication. BLDC interrupts are on a higher level than FR ISRs, so they can - actually they do - interrupt these FR communication interrupts - I checked it with an oscilloscope -. If Node2 is out of the system, there is no problem with node3, both the BLDC control and FR works good.

But if Node2 is connected in - and Node3 receive information in Slot2 -, at the event, when the receive function can not read Slot1's MB0 until the end of the Slot2 communication cycle - when Slot2's MB1 should start to read - MB0 (Slot1's MB) is overwritten... Is there anybody who know the reason, and maybe the solution? It would be great

For further info there is the scope's view:

  • blue - communication signal
  • yellow - interrupt (read() function etc.)
  • green - fault indicator (inverted)