Initialization of Ext. Pin interrupt in dual core MCU (M4+M0)

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Initialization of Ext. Pin interrupt in dual core MCU (M4+M0)

1,072 Views
ericchan
Contributor I

Dear NXP Staff,

I am using LPCXpresso54114 EV board to develop my code. 
One of a IO pin is trigger INT0 interrupt in M0 core, another IO pin is trigger INT1 interrupt in M4 core.
I setup the interrupts in each cores respectively(see attached pic)
But I found the interrupt in M4 core is not work. But when I  "NOT" start the secondary core, the interrupt in M4 is resumed normal. Please advice how to handle the initialization of interrupt function in dual core application?

Same question is also in IO initialization.

Thanks,
Eric

0 Kudos
5 Replies

1,059 Views
Alice_Yang
NXP TechSupport
NXP TechSupport

Hello ericchan,

 

Just configure interrupt can pins configuration in two project as one core project.

You can send your whole project to me ,I help to check it .

 

Regards,

Alice

0 Kudos

1,051 Views
ericchan
Contributor I

Dear Alice,

Please find attached file as NXP code with both core M4 & M0 projects.
Please help to check and advise how I can made the two Ext. Pin interrupt work in both cores.

Also I will define different IO pins, some is controlled by M4 core and some is controlled by M0, so I should define the IO pins together or I should define separately  under different cores?


Thanks,
Eric

0 Kudos

1,029 Views
Alice_Yang
NXP TechSupport
NXP TechSupport

Hello ericchan,

 

Why do you want to use two cores to process interrupt, if there isn't specific requirement, recommend you use one core.

I haven't find a demo that use two cores to do interrupts.

And also  Slave core is not must to use:

2020-11-02_16-00-30.jpg

 

Regards,

Alice

 

 

0 Kudos

1,024 Views
ericchan
Contributor I

Dear Alice,

We need two cores to process different interfaces which need fast response to another side of external processor. And each interface have a external interrupt trigger pin(CS) to initial the transmission. (see attached pic). That's why we need dual cores to process interrupts.

Please advise how we can achieve this target.

Thanks,
Eric

0 Kudos

998 Views
Alice_Yang
NXP TechSupport
NXP TechSupport

Hello Eric,

I debug your project, find the issue.

In function PINT_Init(PINT), disable all the PINT interrupt, and clear PINT callback array, so in core1 project call this function, the interrupt in Core0 can't work.

So please in Core1 project you can call CLOCK_EnableClock(kCLOCK_Pint); instead that function, I test on my side, it can work, attach it for you.

 

Hope it helps,

Alice