Automotive and Embedded Networks

cancel
Showing results for 
Search instead for 
Did you mean: 

Arbitration ID? Help

i use PCI-CAN/2 Series 2(Hight-speed 2Ports) to connect with AD DSP CAN(inbed SJA1000 CAN Controler)
when DSP send the  data frame to PCI-CAN0(port0) ,i use the NI-CAN bus monitor(in the MAX) can see Arb ID is 256(0x100)
so  i only set the Arb ID 256(CAN0::STD256) in the ncconfigCANObj.vi(i use frame API)  then it can use ncReadObj.vi to receive the  data frame
but DSP don't send the 256 in the data frame. 
where is Arb ID 256 come from ?
also if NI-CAN (use port 0 , CAN0) send the data frame to DSP CAN ,how can i set the Arb ID?
in the SJA1000 CAN Controler ,must set the identify ID that it can received the data frame  accord with
what can i do that DSP can used SJA1000 CAN Controler to receive  the data frame which NI-CAN send
0 Kudos
Message 1 of 4
(5,137 Views)
Hi,
 
If you configure an object for a particular ID (256), this object only receives this single ID and his data and you will get only the data from the read function. The same ahppens if you send an object. You only provide the data and the driver takes care of the ID.
You should use the Network Interface Object instead to get the ID as well as the data. See the example for more information.
 
DirkW
0 Kudos
Message 2 of 4
(5,126 Views)
thank you for the example that you send to me.
ncReadNetMult.vi can get IsRemote,ArbitrationId,DataLength and data.
if i only  want to get the data,what can i do?
can i use ncReadObj.vi?
i make a test, if only use ncReadObj.vi but not 
ncReadNetMult.vi that only can received but can't send
why?
i make a small change in the example ,can you check it?
thank you!!
the other question is how to change the bit 32 SEL to four
bit 8 U8?
for example 3500.0 change to (x45,x5A,xC0,x00)
0 Kudos
Message 3 of 4
(5,110 Views)
thank you for the example that you send to me.
ncReadNetMult.vi can get IsRemote,ArbitrationId,DataLength and data.
if i only  want to get the data,what can i do?
can i use ncReadNet.vi?
i make a test, if only use ncReadNet.vi but not 
ncReadNetMult.vi that only can received but can't send
why?
i make a small change in the example ,can you check it?
thank you!!
the other question is how to change the bit 32 SEL to four
bit 8 U8?
for example 3500.0 change to (x45,x5A,xC0,x00)
0 Kudos
Message 4 of 4
(5,108 Views)