I am using USB 8476 to communicate to a slave unit in LIN network. Can anyone tell me how i can send a header file plus 1 byte of data to the slave in a LIN network.
I need to send a sync + break + id 00X34 followed by one byte of data. I am not sure how a master can send this additional 1 byte of data. I need to send this command to light up the LED's and the 1 byte to control the level of illumination of the LED.
If anyone has any examples for this, can you share it here ?
Solved! Go to Solution.
did you already try the LIN example
C:\Program Files\National Instruments\LabVIEW x\examples\nican\LIN - Basic.llb\LIN Master Send Full Frame and Receive.vi
You can find the LIN examples in your example finder if you browse by Task to "Hardware Input and Output > LIN > Basic"
The used command ncWriteNet allows you to specify a data length.
Thank you for the reply. Yes I have used this example and now it is working. The problem was that the data length was not correct and so the Slave unit was not responding.
Can you help me with an error I am gettin 10 40 01 02. I found out that this error means that the sync byte was not recieved correctly. But am not sure how to fix the problem. At first I thought it was a problem witht he slave. But the slave unit is functioning correclty. Can you tell me how i can correct this error ?
I'm not sure if you found the right error. You can find all documented error codes in your NI-CAN help for ncSetAttrib. 10 40 01 02 isn't one of them. Please double check your error code.
Did you check if your LIN device uses LIN 2.0 or above? If so you have to change to enhanced checksum by using ncGetAttrib.
You can find a good introduction to LIN here: Introduction to the Local Interconnect Network (LIN) Bus
If you are sure the error is the sync, you can try modifying the Bit timing register on the USB LIN in MAX.
This error has not been documented yet, but I got the information from the other forums.
Error Name Error Code (hex) Description
LinBusErrorTxSyncTimeout 1040 The LIN interface master task attempted to send a
sync byte and did not self not receive the sync byte
within the timeout period.
This is the description. The problem is solved, the baud rate i was giving was higher than the slave units baud rate. Now it seems to be functioning correctly.