LIN Communication at Arbitrary Timing

Updated Jun 4, 2020

Reported In

Hardware

  • USB-8506

Driver

  • NI-XNET

Issue Details

In the normal LIN communication, timing for sending header is defined by schedule and this is periodic. But I do not have to send data to my DUT periodically. In other words, I want to communicate with my DUT with arbitrary timing. Is this possible ?

Solution

In LIN communication program, you have to define LIN schedule so that it is not possible to do LIN communication without LIN schedule prepared. But by setting specific LIN Schedule and RunMode property as Once you can execute the LIN Schedule only once or other arbitrary timing and you do nothing in the other timing (do "empty" schedule periodically). See the following practice.

1.  Prepare LIN schedule file. In this file, define at least three schedule property, Empty, For_Master, and For_Slave. In Empty schedule, no specific schedule is defined. In For_Master schedule, only schedule for Master is defined. In For_Slave schedule, only schedule for slave is defined.
2. In LabVIEW program, at initialize step, prepare schedule setting as to RunMode setting for Empty schedule is set to be Null and for For_Master and For_Slave schedule to be Once. See the image below.

3, When you want to send Master header and receive the response from your DUT, execute something like below. When RunMode is set to be Once,
the designated schedule is executed only once and after the schedule is executed once then returns to the previously running schedule, in this case do nothing (Empty schedule).