FlexRay vs. NestedVectorISR handling (S12XF512)

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

FlexRay vs. NestedVectorISR handling (S12XF512)

552 Views
istvanreti
Contributor I

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)

Thanks

Labels (1)
0 Kudos
1 Reply

395 Views
istvanreti
Contributor I

I handled the problem with changing to FIFO - and it works :smileywink:-, but I still don't know the reason of this fault :smileyhappy:

0 Kudos