CAN API vs. MCAN drivers

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

CAN API vs. MCAN drivers

3,505 次查看
skyguy
Contributor III

The LPC54618 SDK includes drivers for CAN called fsl_mcan.  There is also a separately available CAN API download.  They look similar internally.  Is there a reason to prefer one over the other?

0 项奖励
回复
4 回复数

2,973 次查看
danielchen
NXP TechSupport
NXP TechSupport

Hi Rick:

'Flexcan' and 'MSCAN' are the only name of the IP module. We have several CAN controllers in different MCU famililies, MSCAN, FLEXCAN,... Every can controller have different features in terms of buffers, FIFO's, mailboxes, etc...

From reference manual:

The Flexcan module is a communication controller implementing the CAN protocol according to the CAN 2.0 B protocol specification.

MSCAN is a communication controller implementing the CAN 2.0 A/B protocol as defined in the Bosch specification dated Sept 1991.

Regards

Daniel

0 项奖励
回复

2,973 次查看
skyguy
Contributor III

Thanks, Daniel.  I think I didn't make my question clear.  The LPC54618 datasheet calls the internal controller hardware the "MCAN" controller.  That was why I referred to "MCAN" (not "MSCAN").  The SDK example code for LPC54618 adds driver files named "fsl_mcan" when you include the CAN features in the driver package.  Separately, on the OM13094 product support page, there is a download for CAN/CAN-FD drivers for the LPC5461x parts.  I'm trying to figure out why there are two sets of drivers and why I should choose one over the other.

Regards,

Rick

0 项奖励
回复

2,973 次查看
danielchen
NXP TechSupport
NXP TechSupport

Hi Rick:

They are two different implementations of CAN. Both are right.  fsl_mcan is compatible with MCUXpresso SDK. CAN/CAN-FD is a stand alone project.   You need to choose fsl_mcan if you use MCUXpresso SDK.

Regards

Daniel

2,973 次查看
skyguy
Contributor III

Thanks!