LPC1517 SCTimer Interrupt stops suddenly

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

LPC1517 SCTimer Interrupt stops suddenly

Jump to solution
981 Views
athmesh_n
Contributor IV

Controller   :   LPC1517

IDE             :   MCUXpresso

I'm using SCTimer 3 for using delay for ms, it is working for 60 delays, and then interrupt stops without any reason.

SCT3 IRQ Handler:

 LPC_SCT3->EVFLAG = 0x01;
 count++;

Delay function:

 SCT3_START_ms;
 while(count<period);
 SCT3_STOP;

SCT3_START_ms definition:

 count=0;
 LPC_SCT3->CTRL_U |= (1<<2);
 LPC_SCT3->MATCH[0].U=(SystemCoreClock/1000-1);
 LPC_SCT3->MATCHREL[0].U=(SystemCoreClock/1000-1);
 LPC_SCT3->CTRL_U &= ~(1<<2);

this worked normally for upto 59 counts, and then MATCH0 turned from normal value to 0xffff, also the SystemCoreClock became 0.

is there any specific reason for this weird change?

Thank you

Labels (1)
Tags (3)
0 Kudos
Reply
1 Solution
865 Views
athmesh_n
Contributor IV

The above problem solved as SystemCoreClock is not globally initialized and hence, due to memory optimization the SystemCoreClockbecame zero.

View solution in original post

0 Kudos
Reply
2 Replies
866 Views
athmesh_n
Contributor IV

The above problem solved as SystemCoreClock is not globally initialized and hence, due to memory optimization the SystemCoreClockbecame zero.

0 Kudos
Reply
865 Views
athmesh_n
Contributor IV

Either declare SystemCoreClock globally, or call GetSystemCoreClock() function.

0 Kudos
Reply