S32K310 CAN Interrupt Receive

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

S32K310 CAN Interrupt Receive

ソリューションへジャンプ
1,758件の閲覧回数
Embedded_novice
Contributor III

我使用CAN以及CANIF配置了S32K310的CAN驱动模块。我知道调用CAN_Write()函数进行报文的发送,但我存有以下的一些问题:

1.我该如何进行报文的接收呢?我看到有一些文章说能够通过CanIf_RxIndication()函数进行接收。但是这个函数在静态代码中的逻辑应当是自动调用,而不是由我在外部主程序中调用。或者说这个函数在触发中断自动执行后将数据进行了存储,那我该如何将这些数据读取出来呢?我是否能用自己编写的回调函数去替换他?(我在MCAL的例程中没有找到使用中断的CAN例程,似乎只有POLLING模式的例程)CAN.png

2.为什么CAN的接收一定要通过CANIF而发送却可以直接由CAN驱动发出?这是否有一些规范限制我必须这样做。

感谢帮助!!

0 件の賞賛
返信
1 解決策
1,735件の閲覧回数
Julián_AragónM
NXP TechSupport
NXP TechSupport

Hi @Embedded_novice,

1. You can look at the following training for some information on how FlexCAN works with the drivers: FLEXCAN WITH RTD AND LOW-LEVEL DRIVERS. In order to receive messages in interrupt mode, you must configure the interrupt driver (IntCtrl) and select polling = FALSE inside the FlexCAN data info structure and use "FlexCAN_Ip_Receive".

You can use this example from community post as guidance: Example S32K344 FlexCAN_Ip TX/RX/EnhanceRXFIFO DMA test S32DS3.5 RTD400 - NXP Community.

2. I imagine you are referring to the CanIf_RxIndication API? As I said in the previous response, you can use FlexCAN_Ip_Receive instead.

Best regards,
Julián

元の投稿で解決策を見る

0 件の賞賛
返信
1 返信
1,736件の閲覧回数
Julián_AragónM
NXP TechSupport
NXP TechSupport

Hi @Embedded_novice,

1. You can look at the following training for some information on how FlexCAN works with the drivers: FLEXCAN WITH RTD AND LOW-LEVEL DRIVERS. In order to receive messages in interrupt mode, you must configure the interrupt driver (IntCtrl) and select polling = FALSE inside the FlexCAN data info structure and use "FlexCAN_Ip_Receive".

You can use this example from community post as guidance: Example S32K344 FlexCAN_Ip TX/RX/EnhanceRXFIFO DMA test S32DS3.5 RTD400 - NXP Community.

2. I imagine you are referring to the CanIf_RxIndication API? As I said in the previous response, you can use FlexCAN_Ip_Receive instead.

Best regards,
Julián

0 件の賞賛
返信
%3CLINGO-SUB%20id%3D%22lingo-sub-2052831%22%20slang%3D%22zh-CN%22%20mode%3D%22CREATE%22%3ES32K310%20CAN%20Interrupt%20Receive%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2052831%22%20slang%3D%22zh-CN%22%20mode%3D%22CREATE%22%3E%3CP%3ES32K310%E3%81%AECAN%E3%83%89%E3%83%A9%E3%82%A4%E3%83%90%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB%E3%82%92CAN%E3%81%A8CANIF%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E8%A8%AD%E5%AE%9A%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82CAN_Write()%E9%96%A2%E6%95%B0%E3%82%92%E5%91%BC%E3%81%B3%E5%87%BA%E3%81%97%E3%81%A6%E3%83%A1%E3%83%83%E3%82%BB%E3%83%BC%E3%82%B8%E3%82%92%E9%80%81%E4%BF%A1%E3%81%A7%E3%81%8D%E3%82%8B%E3%81%93%E3%81%A8%E3%81%AF%E5%88%86%E3%81%8B%E3%81%A3%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%E3%81%8C%E3%80%81%E4%BB%A5%E4%B8%8B%E3%81%AE%E7%82%B9%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%E7%96%91%E5%95%8F%E3%81%8C%E3%81%82%E3%82%8A%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%3CP%3E1.%20%E3%83%A1%E3%83%83%E3%82%BB%E3%83%BC%E3%82%B8%E3%82%92%E5%8F%97%E4%BF%A1%E3%81%99%E3%82%8B%E3%81%AB%E3%81%AF%E3%81%A9%E3%81%86%E3%81%99%E3%82%8C%E3%81%B0%E3%82%88%E3%81%84%E3%81%A7%E3%81%99%E3%81%8B%EF%BC%9FCanIf_RxIndication()%E9%96%A2%E6%95%B0%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E3%83%A1%E3%83%83%E3%82%BB%E3%83%BC%E3%82%B8%E3%82%92%E5%8F%97%E4%BF%A1%E3%81%A7%E3%81%8D%E3%82%8B%E3%81%A8%E3%81%84%E3%81%86%E8%A8%98%E4%BA%8B%E3%82%92%E3%81%84%E3%81%8F%E3%81%A4%E3%81%8B%E8%A6%8B%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82%E3%81%97%E3%81%8B%E3%81%97%E3%80%81%E3%81%93%E3%81%AE%E9%96%A2%E6%95%B0%E3%81%AE%E3%83%AD%E3%82%B8%E3%83%83%E3%82%AF%E3%81%AF%E9%9D%99%E7%9A%84%E3%82%B3%E3%83%BC%E3%83%89%E5%86%85%E3%81%A7%E8%87%AA%E5%8B%95%E7%9A%84%E3%81%AB%E5%91%BC%E3%81%B3%E5%87%BA%E3%81%95%E3%82%8C%E3%82%8B%E3%81%B9%E3%81%8D%E3%81%A7%E3%81%82%E3%82%8A%E3%80%81%E5%A4%96%E9%83%A8%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0%E3%81%A7%E8%87%AA%E5%88%86%E3%81%A7%E8%A8%98%E8%BF%B0%E3%81%99%E3%82%8B%E3%81%B9%E3%81%8D%E3%81%A7%E3%81%AF%E3%81%82%E3%82%8A%E3%81%BE%E3%81%9B%E3%82%93%E3%80%82%E3%81%82%E3%82%8B%E3%81%84%E3%81%AF%E3%80%81%E3%81%93%E3%81%AE%E9%96%A2%E6%95%B0%E3%81%AF%E5%89%B2%E3%82%8A%E8%BE%BC%E3%81%BF%E7%99%BA%E7%94%9F%E5%BE%8C%E3%81%AB%E3%83%87%E3%83%BC%E3%82%BF%E3%82%92%E4%BF%9D%E5%AD%98%E3%81%99%E3%82%8B%E3%81%AE%E3%81%A7%E3%80%81%E3%81%A9%E3%81%AE%E3%82%88%E3%81%86%E3%81%AB%E3%83%87%E3%83%BC%E3%82%BF%E3%82%92%E8%AA%AD%E3%81%BF%E5%87%BA%E3%81%9B%E3%81%B0%E3%81%84%E3%81%84%E3%81%AE%E3%81%A7%E3%81%97%E3%82%87%E3%81%86%E3%81%8B%EF%BC%9F%E8%87%AA%E5%88%86%E3%81%A7%E4%BD%9C%E6%88%90%E3%81%97%E3%81%9F%E3%82%B3%E3%83%BC%E3%83%AB%E3%83%90%E3%83%83%E3%82%AF%E9%96%A2%E6%95%B0%E3%81%AB%E7%BD%AE%E3%81%8D%E6%8F%9B%E3%81%88%E3%82%8B%E3%81%93%E3%81%A8%E3%81%AF%E5%8F%AF%E8%83%BD%E3%81%A7%E3%81%97%E3%82%87%E3%81%86%E3%81%8B%EF%BC%9F%EF%BC%88MCAL%E3%83%AB%E3%83%BC%E3%83%81%E3%83%B3%E3%81%AE%E4%B8%AD%E3%81%AB%E5%89%B2%E3%82%8A%E8%BE%BC%E3%81%BF%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%99%E3%82%8BCAN%E3%83%AB%E3%83%BC%E3%83%81%E3%83%B3%E3%81%AF%E8%A6%8B%E3%81%A4%E3%81%8B%E3%82%8A%E3%81%BE%E3%81%9B%E3%82%93%E3%81%A7%E3%81%97%E3%81%9F%E3%80%82POLLING%E3%83%A2%E3%83%BC%E3%83%89%E3%81%AE%E3%83%AB%E3%83%BC%E3%83%81%E3%83%B3%E3%81%97%E3%81%8B%E3%81%AA%E3%81%84%E3%82%88%E3%81%86%E3%81%A7%E3%81%99%E3%80%82%EF%BC%89%20%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22CAN.png%22%20style%3D%22width%3A%20775px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22CAN.png%22%20style%3D%22width%3A%20775px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F326033i9ACCC73EBABC4DF1%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22CAN.png%22%20alt%3D%22CAN.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E2.%20CAN%E3%81%AE%E5%8F%97%E4%BF%A1%E3%81%AFCANIF%E3%82%92%E7%B5%8C%E7%94%B1%E3%81%99%E3%82%8B%E5%BF%85%E8%A6%81%E3%81%8C%E3%81%82%E3%82%8B%E3%81%AE%E3%81%AB%E3%80%81%E9%80%81%E4%BF%A1%E3%81%AFCAN%E3%83%89%E3%83%A9%E3%82%A4%E3%83%90%E3%83%BC%E3%81%8B%E3%82%89%E7%9B%B4%E6%8E%A5%E9%80%81%E4%BF%A1%E3%81%A7%E3%81%8D%E3%82%8B%E3%81%AE%E3%81%AF%E3%81%AA%E3%81%9C%E3%81%A7%E3%81%99%E3%81%8B%EF%BC%9F%E4%BD%95%E3%81%8B%E4%BB%95%E6%A7%98%E4%B8%8A%E3%81%AE%E5%88%B6%E9%99%90%E3%81%8C%E3%81%82%E3%82%8B%E3%81%AE%E3%81%A7%E3%81%97%E3%82%87%E3%81%86%E3%81%8B%EF%BC%9F%3C%2FP%3E%3CP%3E%E5%8A%A9%E3%81%91%E3%81%A6%E3%81%8F%E3%82%8C%E3%81%A6%E3%81%82%E3%82%8A%E3%81%8C%E3%81%A8%E3%81%86!!%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2054015%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3ERe%3AS32K310%20CAN%E5%89%B2%E3%82%8A%E8%BE%BC%E3%81%BF%E5%8F%97%E4%BF%A1%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2054015%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F213197%22%20target%3D%22_blank%22%3E%40Embedded_novice%3C%2FA%3E%E3%80%81%3C%2FP%3E%0A%3CP%3E1.FlexCAN%E3%81%8C%E3%83%89%E3%83%A9%E3%82%A4%E3%83%90%E3%83%BC%E3%81%A8%E3%81%A9%E3%81%AE%E3%82%88%E3%81%86%E3%81%AB%E9%80%A3%E6%90%BA%E3%81%99%E3%82%8B%E3%81%8B%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%E3%81%AF%E3%80%81%E6%AC%A1%E3%81%AE%E3%83%88%E3%83%AC%E3%83%BC%E3%83%8B%E3%83%B3%E3%82%B0%E3%82%92%E3%81%94%E8%A6%A7%E3%81%8F%E3%81%A0%E3%81%95%E3%81%84%3A%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Fpwmxy87654%2Fattachments%2Fpwmxy87654%2FS32K%2F44963%2F2%2FS32K3_RTD_Training_CAN%2520(2).pdf%22%20target%3D%22_self%22%3ERTD%E3%81%8A%E3%82%88%E3%81%B3%E4%BD%8E%E3%83%AC%E3%83%99%E3%83%AB%E3%83%89%E3%83%A9%E3%82%A4%E3%83%90%E3%83%BC%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%9FFLEXCAN%E3%80%82%3C%2FA%3E%26nbsp%3B%E5%89%B2%E3%82%8A%E8%BE%BC%E3%81%BF%E3%83%A2%E3%83%BC%E3%83%89%E3%81%A7%E3%83%A1%E3%83%83%E3%82%BB%E3%83%BC%E3%82%B8%E3%82%92%E5%8F%97%E4%BF%A1%E3%81%99%E3%82%8B%E3%81%AB%E3%81%AF%E3%80%81%E5%89%B2%E3%82%8A%E8%BE%BC%E3%81%BF%E3%83%89%E3%83%A9%E3%82%A4%E3%83%90%E3%83%BC(IntCtrl)%E3%82%92%E8%A8%AD%E5%AE%9A%E3%81%97%E3%80%81FlexCAN%E3%83%87%E3%83%BC%E3%82%BF%E6%83%85%E5%A0%B1%E6%A7%8B%E9%80%A0%E4%BD%93%E5%86%85%E3%81%A7polling%20%3D%20FALSE%E3%82%92%E9%81%B8%E6%8A%9E%E3%81%97%E3%80%81%E3%80%8C%3CSTRONG%3EFlexCAN_Ip_Receive%3C%2FSTRONG%3E%E3%80%8D%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%99%E3%82%8B%E5%BF%85%E8%A6%81%E3%81%8C%E3%81%82%E3%82%8A%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%0A%3CP%3E%E3%81%93%E3%81%AE%E4%BE%8B%E3%81%AF%E3%80%81%E3%82%B3%E3%83%9F%E3%83%A5%E3%83%8B%E3%83%86%E3%82%A3%E3%81%AE%E6%8A%95%E7%A8%BF%E3%81%8B%E3%82%89%E3%82%AC%E3%82%A4%E3%83%80%E3%83%B3%E3%82%B9%E3%81%A8%E3%81%97%E3%81%A6%E4%BD%BF%E7%94%A8%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%99%3A%20%3CA%20href%3D%22https%3A%2F%2Fcommunity.nxp.com%2Ft5%2FS32K-Knowledge-Base%2FExample-S32K344-FlexCAN-Ip-TX-RX-EnhanceRXFIFO-DMA-test-S32DS3-5%2Fta-p%2F2015832%22%20target%3D%22_blank%22%3ETX%2FRX%2FEnhanceRXFIFO%20DMA%E3%83%86%E3%82%B9%E3%83%88%E3%81%AE%E4%BE%8BS32K344%20FlexCAN_Ip%20S32DS3.5%20RTD400%20-%20NXP%E3%82%B3%E3%83%9F%E3%83%A5%E3%83%8B%E3%83%86%E3%82%A3%3C%2FA%3E%E3%80%82%3C%2FP%3E%0A%3CP%3E2.%20CanIf_RxIndication%20API%E3%81%AE%E3%81%93%E3%81%A8%E3%82%92%E8%A8%80%E3%81%A3%E3%81%A6%E3%81%84%E3%82%8B%E3%81%AE%E3%81%A7%E3%81%99%E3%81%AD%3CSPAN%3E%E3%80%82%E5%89%8D%E3%81%AE%E5%9B%9E%E7%AD%94%E3%81%A7%E8%BF%B0%E3%81%B9%E3%81%9F%E3%82%88%E3%81%86%E3%81%AB%E3%80%81%E4%BB%A3%E3%82%8F%E3%82%8A%E3%81%ABFlexCAN_Ip_Receive%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%99%E3%80%82%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%3CSPAN%3EBest%20regards%2C%3CBR%20%2F%3EJuli%C3%A1n%3C%2FSPAN%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E