CANFD Bit Rate Select (bsr)

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

CANFD Bit Rate Select (bsr)

ソリューションへジャンプ
1,269件の閲覧回数
dougpaulsen
Contributor IV

Greetings:

Using MCUXpress 11.3 and SDK_2.x_LPCXpresso55S06 version 2.10.0, and executing sample project lpcxpresso55s06_mcan_interrupt_transer the CANFD Bit Rate Select bit, although set in the parameters passed in to lower level SDK functions is (according to my Picoscope CANFD decoding) not actually set in the CANFD transmitted header.  Indeed, I'm finding the data is transmitted at the selected 500k arbitration rate, not the specified 1M data rate, exactly as one would expect without the bsr bit being set.  This morning's task is to drill down into the SDK code to see where the brs bit is lost.

There appears to have been a fix for this published for an MPC SDK.  Is there a similar fix for the LPC55S06?  Or alternately am I overlooking something...?

Thanks for your thought!

タグ(1)
0 件の賞賛
1 解決策
1,268件の閲覧回数
dougpaulsen
Contributor IV

I perhaps have found a simple solution.  In project lpcxpresso55s06_mcan_interrupt_transfer, and in file mcan_interrupt_tranfer.c - function main(), the following structure is defined:

   mcan_config_t    mcanConfig;

Somewhere before the SDK function call:

   MCAN_Init(EXAMPLE_MCAN, &mcanConfig, MCAN_CLK_FREQ);

insert the following:

   mcanConfig.enableCanfdSwitch = 1; 

Initial testing results look good!

元の投稿で解決策を見る

0 件の賞賛
1 返信
1,269件の閲覧回数
dougpaulsen
Contributor IV

I perhaps have found a simple solution.  In project lpcxpresso55s06_mcan_interrupt_transfer, and in file mcan_interrupt_tranfer.c - function main(), the following structure is defined:

   mcan_config_t    mcanConfig;

Somewhere before the SDK function call:

   MCAN_Init(EXAMPLE_MCAN, &mcanConfig, MCAN_CLK_FREQ);

insert the following:

   mcanConfig.enableCanfdSwitch = 1; 

Initial testing results look good!

0 件の賞賛