RT1052 MemManage_Handler called by receiving SIGSTOP

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

RT1052 MemManage_Handler called by receiving SIGSTOP

1,342 Views
huijieshen
Contributor II

Dear all:

   I use i.MXRT 1052 board to test the littlevgl_demo to test littlevgl on freertos. I do some modification to make it running on flash and some change to RGB clock parameter. I also change the function as follows:

static void AppTask(void *param)
{
lv_port_pre_init();
lv_init();
lv_port_disp_init();
// lv_port_indev_init();
demo_create();
PRINTF(" littlevgl task running\r\n");
int i = 0;
int j = 0;

for (;;)
{
lv_tick_inc(5);
lv_task_handler();
vTaskDelay(5);
i ++;

if ( i% 100 == 0 ) {
PRINTF(" littlevgl task running\r\n");
j ++;
}
if ( j % 2 == 0 ) {
set_ta_text("Hello World \r\n");
} else {
set_ta_text("MCUXpresso Semihosting Telnet console for evkbimxrt1050 \r\n");
}
}
}

I comments out the touch screen since I have not finished porting my code. 

After download it to flash and make it run . I found MemManger_handler is called in about 2 minutes. So

the program is failed. 

The debug windows shows as attachment

I summerize the change I make to the demo code:

1. change the DCD parameter since the default will not running correctly in my board

2. change the evkbimxrt1050_flexspi_nor_config.c since my flash is different

3. change #define LCD_xxx to make screen works

4. change LCD clock to make the screen not flash

5. add function set_ta_text(char *) will will change text of one in the first tab in tabview

I want to know what make this happens  and how can I find the root cause. 

Best Regards

Labels (2)
0 Kudos
4 Replies

1,332 Views
jeremyzhou
NXP Employee
NXP Employee

Hi,

Thank you for your interest in NXP Semiconductor products and for the opportunity to serve you. I think I need more information to figure the cause out, so I was wondering if you can clarify the below inquires.
1)Whether it will trigger MemManage_Handler when the MCU executes a specific line of code, or above interrupt happen randomly.
2) Please share the value of MemManage Status Register (MMFSR) and Debug Exception and Monitor Control Register (DEMCR) when entering the MemManage_Handler.
3) Whether the phenomenon happens when running the code on the MIMXRT1050 board.
4) Which demo do you use as a start point? In further, what's the version number of the SDK library?
Looking forward to your reply.
Have a great day,
TIC

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

 

0 Kudos

1,327 Views
huijieshen
Contributor II

Dear:

    After last reply , I run the code again and this time another fault happend. HardFault happend.

This time, the littevgl task is deleted when I checking the task status in IDE.

   I attached my project code too.

  

 

Best Regards

0 Kudos

1,295 Views
jeremyzhou
NXP Employee
NXP Employee

Hi,
According to your information, frankly, it's not very useful.
So I'd like to remind you to answer my below questions, as it can help me to figure the phenomenon out.
1)Whether it will trigger MemManage_Handler when the MCU executes a specific line of code, or above interrupt happen randomly.
2) Please share the value of MemManage Status Register (MMFSR) and Debug Exception and Monitor Control Register (DEMCR) when entering the MemManage_Handler.
3) Whether the phenomenon happens when running the code on the MIMXRT1050 board.
4) Which demo do you use as a start point? In further, what's the version number of the SDK library?
Looking forward to your reply.
Have a great day,
TIC

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

0 Kudos

1,328 Views
huijieshen
Contributor II

Thank you for your reply:

   1.   I use SDK version 2.8.6 (4112020-11-23) and my ide is MCUXpresso IDE v11.2.1 [Build 4149] [2020-10-07] which runs on ubuntu linux. 

    2.  I start from the example evkbimxrt1050_littlevgl_demo

    3.  In original demo , the touch screen input will make ui move. But since I have not 

port the touch screen yet, So I decide to set the text area with different text value in the AppTask. The following is code I added to AppTask, which will just set different text value in a text area widget

i ++;

if ( i% 100 == 0 ) {
    PRINTF(" littlevgl task running %d\r\n",i );
    j ++;
}
  if ( j % 2 == 0 ) {
    set_ta_text("Hello World \r\n");
  } else {
    set_ta_text("MCUXpresso Semihosting Telnet console for evkbimxrt1050 \r\n");
   }
}

I disabled the touch screen code to make sure it will cause trouble. 

In the demo.c I add the code 

void set_ta_text(char *text) {
      lv_ta_set_text(ta,text);   // ta is global static in this file
}

I burn the image to flash and in 10 minute, The 

MemMange_Handler will be called. 

The CFSR / MMSR / DFSR/ABFSR says all 0 in Fault window while  IPSR = 0x04

I also photo these value in the attachment.

If I make set_ta_text() do nothing, the MemManage_Handler will not be called ( I test at least for 4 hours) .  

I think I should first check the dcd.c and xor config so I also attached them. 

 

 

Best Regards

0 Kudos