<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>Model-Based Design Toolbox (MBDT)のトピックFlexCAN with DMA feature</title>
    <link>https://community.nxp.com/t5/Model-Based-Design-Toolbox-MBDT/FlexCAN-with-DMA-feature/m-p/1496346#M7553</link>
    <description>&lt;P&gt;Hi folks,&lt;/P&gt;&lt;P&gt;I have MPC5775B based board.&lt;/P&gt;&lt;P&gt;I want to use Rx FIFO Transfer type to DMA mode instead of interrupt mode for FlexCAN module(or also if possible for MCAN).&lt;/P&gt;&lt;P&gt;I'm working over Matlab generated code.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot_1.png" style="width: 999px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/188044iA28BCD4F60FB9074/image-size/large?v=v2&amp;amp;px=999" role="button" title="Screenshot_1.png" alt="Screenshot_1.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;I setuped simple MPC5775B project and try to use CAN Bus with EDMA feature(I set the FEATURE_CAN_HAS_DMA_ENABLE (1) on MPC5775B_features.h, and compile project without code regeneration)&lt;/P&gt;&lt;P&gt;ı got the compilation error.&lt;/P&gt;&lt;LI-CODE lang="c"&gt;&amp;gt;&amp;gt; !CAN_DMA.bat
 
C:\Users\xxxxxx\Desktop\NXP\CAN_DMA\CAN_DMA_mbd_rtw&amp;gt;set MATLAB=C:\Program Files\MATLAB\R2018b  
 
C:\Users\xxxxxx\Desktop\NXP\CAN_DMA\CAN_DMA_mbd_rtw&amp;gt;"C:\Program Files\MATLAB\R2018b\bin\win64\gmake" -f CAN_DMA.mk  GENERATE_ERT_S_FUNCTION=0 INCLUDE_MDL_TERMINATE_FCN=1 COMBINE_OUTPUT_UPDATE_FCNS=1 MULTI_INSTANCE_CODE=0 INTEGER_CODE=0 ISPROTECTINGMODEL=NOTPROTECTING  
Cleaning... 
RELATIVE_PATH_TO_ANCHOR is .. 
==== Removing object files from build directory ==== 
Copying necessary files to build directory... 
Compiler details : "C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/powerpc-eabivle-4_9/bin/powerpc-eabivle-gcc"  -DCPU_MPC5775B -mcpu=e200z7 -DSTART_FROM_FLASH --sysroot="C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/e200_ewl2" -g3 -mbig -mvle -O1 -mregnames -mlsp -specs=ewl_c9x.specs -mhard-float -Wall -c -std=c99 -fdata-sections -ffunction-sections -funsigned-char -fmessage-length=0 -nostdinc -fno-jump-tables  -DTURN_ON_CPU0 -I. -I.. -I../instrumented -I.. -I"C:\Program Files\MATLAB\R2018b\simulink\include" -I"C:\Program Files\MATLAB\R2018b\extern\include" -I"C:\Program Files\MATLAB\R2018b\rtw\c\src" -I"C:\Program Files\MATLAB\R2018b\rtw\c\libsrc" -I"C:\Program Files\MATLAB\R2018b\rtw\c\src\ext_mode\common" -I"C:\Program Files\MATLAB\R2018b\rtw\c\src\ext_mode\tcpip" -I"C:\Program Files\MATLAB\R2018b\rtw\c\src\ext_mode\serial" -I"C:\Program Files\MATLAB\R2018b\rtw\c\src\ext_mode\custom" -IC:\Users\xxxxxx\Desktop\NXP\CAN_DMA -IC:\Users\xxxxxx\Desktop\NXP\CAN_DMA\CAN_DMA_mbd_rtw -IC:\PROGRA~1\MATLAB\R2018b\extern\include -IC:\PROGRA~1\MATLAB\R2018b\simulink\include -IC:\PROGRA~1\MATLAB\R2018b\rtw\c\src -IC:\PROGRA~1\MATLAB\R2018b\rtw\c\src\ext_mode\common -IC:\PROGRA~1\MATLAB\R2018b\rtw\c\ert  -I"C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/e200_ewl2/EWL_C/include" -I"C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/e200_ewl2/EWL_C/include/pa"    -I"./common" -I"./inc" -I"./src/clock/MPC57xx" -I"./src/clock/MPC5777C" -I"./src/sim/MPC5775B" -I"./src/power/MPC57xx" -I"./src/pins/siul2" -I"./src/pins/siu" -I"./MPC5775B/include" -I"../common" -I"../inc" -I"../src/clock/MPC57xx" -I"../src/clock/MPC5777C" -I"../src/sim/MPC5775B" -I"../src/power/MPC57xx" -I"../src/pins/siul2" -I"../src/pins/siu" -I"../MPC5775B/include" -I"../instrumented/common" -I"../instrumented/inc" -I"../instrumented/src/clock/MPC57xx" -I"../instrumented/src/sim/MPC5775B" -I"../instrumented/src/power/MPC57xx" -I"../instrumented/src/pins/siul2" -I"../instrumented/MPC5775B/include"     
Assembler details : "C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/powerpc-eabivle-4_9/bin/powerpc-eabivle-gcc" -c  -g3 -mbig -mvle -mregnames  -DTURN_ON_CPU0  
Product: CAN_DMA.mot 
Build product type: executable 
Building file core0_intc_sw_handlers.o... 
"C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/powerpc-eabivle-4_9/bin/powerpc-eabivle-gcc" -c  -g3 -mbig -mvle -mregnames  -DTURN_ON_CPU0 -I..  -o core0_intc_sw_handlers.o core0_intc_sw_handlers.S 
Building file interrupt_vectors.o... 
"C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/powerpc-eabivle-4_9/bin/powerpc-eabivle-gcc" -c  -g3 -mbig -mvle -mregnames  -DTURN_ON_CPU0 -I..  -o interrupt_vectors.o interrupt_vectors.S 
Building file startup_MPC5775B.o... 
"C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/powerpc-eabivle-4_9/bin/powerpc-eabivle-gcc" -c  -g3 -mbig -mvle -mregnames  -DTURN_ON_CPU0 -I..  -o startup_MPC5775B.o startup_MPC5775B.S 
Building file CAN_DMA.o... 
"C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/powerpc-eabivle-4_9/bin/powerpc-eabivle-gcc"  -DCPU_MPC5775B -mcpu=e200z7 -DSTART_FROM_FLASH --sysroot="C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/e200_ewl2" -g3 -mbig -mvle -O1 -mregnames -mlsp -specs=ewl_c9x.specs -mhard-float -Wall -c -std=c99 -fdata-sections -ffunction-sections -funsigned-char -fmessage-length=0 -nostdinc -fno-jump-tables  -DTURN_ON_CPU0 -I. -I.. -I../instrumented -I.. -I"C:\Program Files\MATLAB\R2018b\simulink\include" -I"C:\Program Files\MATLAB\R2018b\extern\include" -I"C:\Program Files\MATLAB\R2018b\rtw\c\src" -I"C:\Program Files\MATLAB\R2018b\rtw\c\libsrc" -I"C:\Program Files\MATLAB\R2018b\rtw\c\src\ext_mode\common" -I"C:\Program Files\MATLAB\R2018b\rtw\c\src\ext_mode\tcpip" -I"C:\Program Files\MATLAB\R2018b\rtw\c\src\ext_mode\serial" -I"C:\Program Files\MATLAB\R2018b\rtw\c\src\ext_mode\custom" -IC:\Users\xxxxxx\Desktop\NXP\CAN_DMA -IC:\Users\xxxxxx\Desktop\NXP\CAN_DMA\CAN_DMA_mbd_rtw -IC:\PROGRA~1\MATLAB\R2018b\extern\include -IC:\PROGRA~1\MATLAB\R2018b\simulink\include -IC:\PROGRA~1\MATLAB\R2018b\rtw\c\src -IC:\PROGRA~1\MATLAB\R2018b\rtw\c\src\ext_mode\common -IC:\PROGRA~1\MATLAB\R2018b\rtw\c\ert  -I"C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/e200_ewl2/EWL_C/include" -I"C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/e200_ewl2/EWL_C/include/pa"    -I"./common" -I"./inc" -I"./src/clock/MPC57xx" -I"./src/clock/MPC5777C" -I"./src/sim/MPC5775B" -I"./src/power/MPC57xx" -I"./src/pins/siul2" -I"./src/pins/siu" -I"./MPC5775B/include" -I"../common" -I"../inc" -I"../src/clock/MPC57xx" -I"../src/clock/MPC5777C" -I"../src/sim/MPC5775B" -I"../src/power/MPC57xx" -I"../src/pins/siul2" -I"../src/pins/siu" -I"../MPC5775B/include" -I"../instrumented/common" -I"../instrumented/inc" -I"../instrumented/src/clock/MPC57xx" -I"../instrumented/src/sim/MPC5775B" -I"../instrumented/src/power/MPC57xx" -I"../instrumented/src/pins/siul2" -I"../instrumented/MPC5775B/include"     -o CAN_DMA.o CAN_DMA.c 
In file included from devassert.h:22:0, 
                 from device_registers.h:411, 
                 from CAN_DMA.h:24, 
                 from CAN_DMA.c:17: 
C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/e200_ewl2/EWL_C/include/stdbool.h:45:0: warning: "true" redefined 
  #define true       1 
 ^ 
In file included from CAN_DMA.h:23:0, 
                 from CAN_DMA.c:17: 
rtwtypes.h:27:0: note: this is the location of the previous definition 
 #   define true                        (1U) 
 ^ 
In file included from devassert.h:22:0, 
                 from device_registers.h:411, 
                 from CAN_DMA.h:24, 
                 from CAN_DMA.c:17: 
C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/e200_ewl2/EWL_C/include/stdbool.h:46:0: warning: "false" redefined 
  #define false       0 
 ^ 
In file included from CAN_DMA.h:23:0, 
                 from CAN_DMA.c:17: 
rtwtypes.h:23:0: note: this is the location of the previous definition 
 #   define false                       (0U) 
 ^ 
In file included from CAN_DMA.h:27:0, 
                 from CAN_DMA.c:17: 
flexcan_hw_access.h: In function 'FLEXCAN_SetRxFifoDMA': 
flexcan_hw_access.h:1208:31: error: 'CAN_MCR_DMA_MASK' undeclared (first use in this function) 
     base-&amp;gt;MCR = (base-&amp;gt;MCR &amp;amp; ~CAN_MCR_DMA_MASK) | CAN_MCR_DMA(enable? 1UL : 0UL); 
                               ^ 
flexcan_hw_access.h:1208:31: note: each undeclared identifier is reported only once for each function it appears in 
flexcan_hw_access.h:1208:5: warning: implicit declaration of function 'CAN_MCR_DMA' [-Wimplicit-function-declaration] 
     base-&amp;gt;MCR = (base-&amp;gt;MCR &amp;amp; ~CAN_MCR_DMA_MASK) | CAN_MCR_DMA(enable? 1UL : 0UL); 
     ^ 
CAN_DMA.c: In function 'CAN_DMA_initialize': 
CAN_DMA.c:126:62: warning: passing argument 3 of 'FLEXCAN_DRV_ConfigRxFifo' from incompatible pointer type 
     FLEXCAN_DRV_ConfigRxFifo(0, FLEXCAN_RX_FIFO_ID_FORMAT_A, &amp;amp;id_filter_table); 
                                                              ^ 
In file included from CAN_DMA.h:26:0, 
                 from CAN_DMA.c:17: 
flexcan_driver.h:716:6: note: expected 'const struct flexcan_id_table_t *' but argument is of type 'struct flexcan_id_table_t (*)[8]' 
 void FLEXCAN_DRV_ConfigRxFifo( 
      ^ 
gmake: *** [CAN_DMA.o] Error 1 
&amp;gt;&amp;gt; &lt;/LI-CODE&gt;&lt;P&gt;I also try same configuration on s32 Power Studio i couldn't change the Configuration List "RX FIFO Transfer type" Using Interrupts to Using DMA.&lt;/P&gt;&lt;P&gt;when i insert the below code on the MPC5775B.h within CAN MCR macros&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;#define CAN_MCR_DMA_MASK                         0x8000u
#define CAN_MCR_DMA_SHIFT                        15u
#define CAN_MCR_DMA_WIDTH                        1u
#define CAN_MCR_DMA(x)                           (((uint32_t)(((uint32_t)(x))&amp;lt;&amp;lt;CAN_MCR_DMA_SHIFT))&amp;amp;CAN_MCR_DMA_MASK)&lt;/LI-CODE&gt;&lt;P&gt;The error is disappear, but i'm not sure this is proper way to use DMA with FlexCAN&lt;/P&gt;&lt;P&gt;How can i use DMA mode instead of interrupts mode for MBDT based MPC5775B projects?&lt;/P&gt;&lt;P&gt;Regards,&lt;BR /&gt;Attila.&lt;/P&gt;</description>
    <pubDate>Wed, 27 Jul 2022 11:50:21 GMT</pubDate>
    <dc:creator>engineer_attila</dc:creator>
    <dc:date>2022-07-27T11:50:21Z</dc:date>
    <item>
      <title>FlexCAN with DMA feature</title>
      <link>https://community.nxp.com/t5/Model-Based-Design-Toolbox-MBDT/FlexCAN-with-DMA-feature/m-p/1496346#M7553</link>
      <description>&lt;P&gt;Hi folks,&lt;/P&gt;&lt;P&gt;I have MPC5775B based board.&lt;/P&gt;&lt;P&gt;I want to use Rx FIFO Transfer type to DMA mode instead of interrupt mode for FlexCAN module(or also if possible for MCAN).&lt;/P&gt;&lt;P&gt;I'm working over Matlab generated code.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Screenshot_1.png" style="width: 999px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/188044iA28BCD4F60FB9074/image-size/large?v=v2&amp;amp;px=999" role="button" title="Screenshot_1.png" alt="Screenshot_1.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;I setuped simple MPC5775B project and try to use CAN Bus with EDMA feature(I set the FEATURE_CAN_HAS_DMA_ENABLE (1) on MPC5775B_features.h, and compile project without code regeneration)&lt;/P&gt;&lt;P&gt;ı got the compilation error.&lt;/P&gt;&lt;LI-CODE lang="c"&gt;&amp;gt;&amp;gt; !CAN_DMA.bat
 
C:\Users\xxxxxx\Desktop\NXP\CAN_DMA\CAN_DMA_mbd_rtw&amp;gt;set MATLAB=C:\Program Files\MATLAB\R2018b  
 
C:\Users\xxxxxx\Desktop\NXP\CAN_DMA\CAN_DMA_mbd_rtw&amp;gt;"C:\Program Files\MATLAB\R2018b\bin\win64\gmake" -f CAN_DMA.mk  GENERATE_ERT_S_FUNCTION=0 INCLUDE_MDL_TERMINATE_FCN=1 COMBINE_OUTPUT_UPDATE_FCNS=1 MULTI_INSTANCE_CODE=0 INTEGER_CODE=0 ISPROTECTINGMODEL=NOTPROTECTING  
Cleaning... 
RELATIVE_PATH_TO_ANCHOR is .. 
==== Removing object files from build directory ==== 
Copying necessary files to build directory... 
Compiler details : "C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/powerpc-eabivle-4_9/bin/powerpc-eabivle-gcc"  -DCPU_MPC5775B -mcpu=e200z7 -DSTART_FROM_FLASH --sysroot="C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/e200_ewl2" -g3 -mbig -mvle -O1 -mregnames -mlsp -specs=ewl_c9x.specs -mhard-float -Wall -c -std=c99 -fdata-sections -ffunction-sections -funsigned-char -fmessage-length=0 -nostdinc -fno-jump-tables  -DTURN_ON_CPU0 -I. -I.. -I../instrumented -I.. -I"C:\Program Files\MATLAB\R2018b\simulink\include" -I"C:\Program Files\MATLAB\R2018b\extern\include" -I"C:\Program Files\MATLAB\R2018b\rtw\c\src" -I"C:\Program Files\MATLAB\R2018b\rtw\c\libsrc" -I"C:\Program Files\MATLAB\R2018b\rtw\c\src\ext_mode\common" -I"C:\Program Files\MATLAB\R2018b\rtw\c\src\ext_mode\tcpip" -I"C:\Program Files\MATLAB\R2018b\rtw\c\src\ext_mode\serial" -I"C:\Program Files\MATLAB\R2018b\rtw\c\src\ext_mode\custom" -IC:\Users\xxxxxx\Desktop\NXP\CAN_DMA -IC:\Users\xxxxxx\Desktop\NXP\CAN_DMA\CAN_DMA_mbd_rtw -IC:\PROGRA~1\MATLAB\R2018b\extern\include -IC:\PROGRA~1\MATLAB\R2018b\simulink\include -IC:\PROGRA~1\MATLAB\R2018b\rtw\c\src -IC:\PROGRA~1\MATLAB\R2018b\rtw\c\src\ext_mode\common -IC:\PROGRA~1\MATLAB\R2018b\rtw\c\ert  -I"C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/e200_ewl2/EWL_C/include" -I"C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/e200_ewl2/EWL_C/include/pa"    -I"./common" -I"./inc" -I"./src/clock/MPC57xx" -I"./src/clock/MPC5777C" -I"./src/sim/MPC5775B" -I"./src/power/MPC57xx" -I"./src/pins/siul2" -I"./src/pins/siu" -I"./MPC5775B/include" -I"../common" -I"../inc" -I"../src/clock/MPC57xx" -I"../src/clock/MPC5777C" -I"../src/sim/MPC5775B" -I"../src/power/MPC57xx" -I"../src/pins/siul2" -I"../src/pins/siu" -I"../MPC5775B/include" -I"../instrumented/common" -I"../instrumented/inc" -I"../instrumented/src/clock/MPC57xx" -I"../instrumented/src/sim/MPC5775B" -I"../instrumented/src/power/MPC57xx" -I"../instrumented/src/pins/siul2" -I"../instrumented/MPC5775B/include"     
Assembler details : "C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/powerpc-eabivle-4_9/bin/powerpc-eabivle-gcc" -c  -g3 -mbig -mvle -mregnames  -DTURN_ON_CPU0  
Product: CAN_DMA.mot 
Build product type: executable 
Building file core0_intc_sw_handlers.o... 
"C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/powerpc-eabivle-4_9/bin/powerpc-eabivle-gcc" -c  -g3 -mbig -mvle -mregnames  -DTURN_ON_CPU0 -I..  -o core0_intc_sw_handlers.o core0_intc_sw_handlers.S 
Building file interrupt_vectors.o... 
"C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/powerpc-eabivle-4_9/bin/powerpc-eabivle-gcc" -c  -g3 -mbig -mvle -mregnames  -DTURN_ON_CPU0 -I..  -o interrupt_vectors.o interrupt_vectors.S 
Building file startup_MPC5775B.o... 
"C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/powerpc-eabivle-4_9/bin/powerpc-eabivle-gcc" -c  -g3 -mbig -mvle -mregnames  -DTURN_ON_CPU0 -I..  -o startup_MPC5775B.o startup_MPC5775B.S 
Building file CAN_DMA.o... 
"C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/powerpc-eabivle-4_9/bin/powerpc-eabivle-gcc"  -DCPU_MPC5775B -mcpu=e200z7 -DSTART_FROM_FLASH --sysroot="C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/e200_ewl2" -g3 -mbig -mvle -O1 -mregnames -mlsp -specs=ewl_c9x.specs -mhard-float -Wall -c -std=c99 -fdata-sections -ffunction-sections -funsigned-char -fmessage-length=0 -nostdinc -fno-jump-tables  -DTURN_ON_CPU0 -I. -I.. -I../instrumented -I.. -I"C:\Program Files\MATLAB\R2018b\simulink\include" -I"C:\Program Files\MATLAB\R2018b\extern\include" -I"C:\Program Files\MATLAB\R2018b\rtw\c\src" -I"C:\Program Files\MATLAB\R2018b\rtw\c\libsrc" -I"C:\Program Files\MATLAB\R2018b\rtw\c\src\ext_mode\common" -I"C:\Program Files\MATLAB\R2018b\rtw\c\src\ext_mode\tcpip" -I"C:\Program Files\MATLAB\R2018b\rtw\c\src\ext_mode\serial" -I"C:\Program Files\MATLAB\R2018b\rtw\c\src\ext_mode\custom" -IC:\Users\xxxxxx\Desktop\NXP\CAN_DMA -IC:\Users\xxxxxx\Desktop\NXP\CAN_DMA\CAN_DMA_mbd_rtw -IC:\PROGRA~1\MATLAB\R2018b\extern\include -IC:\PROGRA~1\MATLAB\R2018b\simulink\include -IC:\PROGRA~1\MATLAB\R2018b\rtw\c\src -IC:\PROGRA~1\MATLAB\R2018b\rtw\c\src\ext_mode\common -IC:\PROGRA~1\MATLAB\R2018b\rtw\c\ert  -I"C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/e200_ewl2/EWL_C/include" -I"C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/e200_ewl2/EWL_C/include/pa"    -I"./common" -I"./inc" -I"./src/clock/MPC57xx" -I"./src/clock/MPC5777C" -I"./src/sim/MPC5775B" -I"./src/power/MPC57xx" -I"./src/pins/siul2" -I"./src/pins/siu" -I"./MPC5775B/include" -I"../common" -I"../inc" -I"../src/clock/MPC57xx" -I"../src/clock/MPC5777C" -I"../src/sim/MPC5775B" -I"../src/power/MPC57xx" -I"../src/pins/siul2" -I"../src/pins/siu" -I"../MPC5775B/include" -I"../instrumented/common" -I"../instrumented/inc" -I"../instrumented/src/clock/MPC57xx" -I"../instrumented/src/sim/MPC5775B" -I"../instrumented/src/power/MPC57xx" -I"../instrumented/src/pins/siul2" -I"../instrumented/MPC5775B/include"     -o CAN_DMA.o CAN_DMA.c 
In file included from devassert.h:22:0, 
                 from device_registers.h:411, 
                 from CAN_DMA.h:24, 
                 from CAN_DMA.c:17: 
C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/e200_ewl2/EWL_C/include/stdbool.h:45:0: warning: "true" redefined 
  #define true       1 
 ^ 
In file included from CAN_DMA.h:23:0, 
                 from CAN_DMA.c:17: 
rtwtypes.h:27:0: note: this is the location of the previous definition 
 #   define true                        (1U) 
 ^ 
In file included from devassert.h:22:0, 
                 from device_registers.h:411, 
                 from CAN_DMA.h:24, 
                 from CAN_DMA.c:17: 
C:\Users\xxxxxx\AppData\Roaming\MathWorks\Add_ons\Toolboxes\NXP_MBDToolbox_MPC57xx\tools/S32DS/build_tools/e200_ewl2/EWL_C/include/stdbool.h:46:0: warning: "false" redefined 
  #define false       0 
 ^ 
In file included from CAN_DMA.h:23:0, 
                 from CAN_DMA.c:17: 
rtwtypes.h:23:0: note: this is the location of the previous definition 
 #   define false                       (0U) 
 ^ 
In file included from CAN_DMA.h:27:0, 
                 from CAN_DMA.c:17: 
flexcan_hw_access.h: In function 'FLEXCAN_SetRxFifoDMA': 
flexcan_hw_access.h:1208:31: error: 'CAN_MCR_DMA_MASK' undeclared (first use in this function) 
     base-&amp;gt;MCR = (base-&amp;gt;MCR &amp;amp; ~CAN_MCR_DMA_MASK) | CAN_MCR_DMA(enable? 1UL : 0UL); 
                               ^ 
flexcan_hw_access.h:1208:31: note: each undeclared identifier is reported only once for each function it appears in 
flexcan_hw_access.h:1208:5: warning: implicit declaration of function 'CAN_MCR_DMA' [-Wimplicit-function-declaration] 
     base-&amp;gt;MCR = (base-&amp;gt;MCR &amp;amp; ~CAN_MCR_DMA_MASK) | CAN_MCR_DMA(enable? 1UL : 0UL); 
     ^ 
CAN_DMA.c: In function 'CAN_DMA_initialize': 
CAN_DMA.c:126:62: warning: passing argument 3 of 'FLEXCAN_DRV_ConfigRxFifo' from incompatible pointer type 
     FLEXCAN_DRV_ConfigRxFifo(0, FLEXCAN_RX_FIFO_ID_FORMAT_A, &amp;amp;id_filter_table); 
                                                              ^ 
In file included from CAN_DMA.h:26:0, 
                 from CAN_DMA.c:17: 
flexcan_driver.h:716:6: note: expected 'const struct flexcan_id_table_t *' but argument is of type 'struct flexcan_id_table_t (*)[8]' 
 void FLEXCAN_DRV_ConfigRxFifo( 
      ^ 
gmake: *** [CAN_DMA.o] Error 1 
&amp;gt;&amp;gt; &lt;/LI-CODE&gt;&lt;P&gt;I also try same configuration on s32 Power Studio i couldn't change the Configuration List "RX FIFO Transfer type" Using Interrupts to Using DMA.&lt;/P&gt;&lt;P&gt;when i insert the below code on the MPC5775B.h within CAN MCR macros&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="c"&gt;#define CAN_MCR_DMA_MASK                         0x8000u
#define CAN_MCR_DMA_SHIFT                        15u
#define CAN_MCR_DMA_WIDTH                        1u
#define CAN_MCR_DMA(x)                           (((uint32_t)(((uint32_t)(x))&amp;lt;&amp;lt;CAN_MCR_DMA_SHIFT))&amp;amp;CAN_MCR_DMA_MASK)&lt;/LI-CODE&gt;&lt;P&gt;The error is disappear, but i'm not sure this is proper way to use DMA with FlexCAN&lt;/P&gt;&lt;P&gt;How can i use DMA mode instead of interrupts mode for MBDT based MPC5775B projects?&lt;/P&gt;&lt;P&gt;Regards,&lt;BR /&gt;Attila.&lt;/P&gt;</description>
      <pubDate>Wed, 27 Jul 2022 11:50:21 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Model-Based-Design-Toolbox-MBDT/FlexCAN-with-DMA-feature/m-p/1496346#M7553</guid>
      <dc:creator>engineer_attila</dc:creator>
      <dc:date>2022-07-27T11:50:21Z</dc:date>
    </item>
    <item>
      <title>Re: FlexCAN with DMA feature</title>
      <link>https://community.nxp.com/t5/Model-Based-Design-Toolbox-MBDT/FlexCAN-with-DMA-feature/m-p/2149723#M10387</link>
      <description>&lt;P&gt;have you solved these&amp;nbsp; ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 11 Aug 2025 05:06:53 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Model-Based-Design-Toolbox-MBDT/FlexCAN-with-DMA-feature/m-p/2149723#M10387</guid>
      <dc:creator>peter09</dc:creator>
      <dc:date>2025-08-11T05:06:53Z</dc:date>
    </item>
  </channel>
</rss>

