S32G2 Can example does not transmit twice

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

S32G2 Can example does not transmit twice

5,294 次查看
ofer-bahar-guardknox
Contributor IV

Trying to run the Can_Example_S32G274A_M7 on the RDB2 (GoldBox)

SD32 3.5, RTD 4.0.1

Started a new project from the above example

Build the project 

Did all steps in as in the  HANDS ON CAN : IMPORT CAN EXAMPLE PROJECT in the S32G-VNP-GLDBOX REAL TIME DRIVER EXAMPLE ENABLEMENT GUIDE 

Connected the FlexCan0 to FlexCan1 - with the external harness supplied with the RDB2 

It looks like the first transmission ends OK, the CanIf_RxIndication callback function is called indeed

but after the 1'st transmit, it is stuck in the Can_Write function which returns BUSY !!

AND - checking the physical CAN BUS lines with oscilloscope does not show that it transmits something

Any suggestions?

oferbaharguardknox_0-1688299223611.png

 

标签 (1)
标记 (1)
0 项奖励
回复
8 回复数

4,720 次查看
Ben_2
Contributor I

Hello,

Did that issue get a solution, I am encountering the same problems?

 

Regards,

0 项奖励
回复

4,715 次查看
ofer-bahar-guardknox
Contributor IV
yes,
There were few problems, one was with the CAN BUS compatibility of speed, another was with no ECU was approving the ID
0 项奖励
回复

4,680 次查看
Ben_2
Contributor I

Thank you I will look into it.

Regards,

0 项奖励
回复

5,056 次查看
ofer-bahar-guardknox
Contributor IV

sure

0 项奖励
回复

5,057 次查看
ofer-bahar-guardknox
Contributor IV

sure 

0 项奖励
回复

5,138 次查看
nxf92355
NXP Employee
NXP Employee

Hi Ofer bahar

 

Hope you are doing well

it seems like you edited in example code. can you check it. also refer can module user manual(RTD_CAN_UM.pdf).

Can_Write checks if hardware transmit object that is identified by the HTH is free. Can_Write checks if another Can_Write is ongoing for the same HTH. The mutex for that HTH is set to 'signaled' the ID, DLC and SDU are put in a format appropriate for the hardware (if necessary) and copied in the appropriate hardware registers or buffers. All necessary control operations to initiate the transmit are done.
The mutex for that HTH is released. The function returns with E_OK.

possible reason for Busy
(1) When hardware transmit object is busy with another transmit request,the function returns with  
    CAN_BUSY.

(2) A preemptive call of Can_Write has been issued, that could not be handled reentrant (i.e. a call with
     the same HTH). t
he function returns with CAN_BUSY the function is non blocking
(3) The hardware transmit object is busy with another transmit request for an L-PDU that has lower priority
     than that for the current request
the transmission of the previous L-PDU is cancelled (asynchronously)
     the function returns with CAN_BUSY.

 

Regards ,

Tushar



0 项奖励
回复

5,119 次查看
ofer-bahar-guardknox
Contributor IV

Hi Tushar 

Thanks for your response,

Nevertheless, I hardly can understand what you suggested in order to solve my problem

The same problems happens when with the FlexCan example of the S32DS !

I really appreciate if you could send me a working example that can transmit and receive a on the FlexCAN, running on the Gold Box RDB2 S32G274A

Ofer

0 项奖励
回复

5,061 次查看
nxf92355
NXP Employee
NXP Employee

Hi Ofer

Okay , I think you raised ticket in Nxp Tech Support. can we continue there and closed this ticket ? both are same

 

Regards ,

Tushar

 

 

0 项奖励
回复