8289 views|12 replies

82

Posts

0

Resources
The OP

Under what circumstances will it enter: MemManageException [Copy link]

                                 I often get MemManageException when debugging the file system recently. I have no idea what to do now. Please give me some advice.
This post is from stm32/stm8

Latest reply

                                 The method is worth learning from. Let's analyze the stack structure after entering the fault. How to analyze it specifically?  Details Published on 2010-4-24 19:37

63

Posts

0

Resources
2
                                 Put a breakpoint in MemManageException. After debugging stops at this breakpoint, look through the stack to see which function was executed last. This backtracking should provide clues.
This post is from stm32/stm8

65

Posts

0

Resources
3
                                 I know that the execution will jump to this function at any point, but what causes it and how to solve it?
This post is from stm32/stm8

77

Posts

0

Resources
4
                                 I have been working on this problem for a whole day but still can't solve it. Does the moderator have any better suggestions?
This post is from stm32/stm8

77

Posts

0

Resources
5
                                 Still no clue after searching further?
This post is from stm32/stm8

79

Posts

0

Resources
6
I know that the execution will jump to this function at any point, but what causes it and how to solve it?
It's hard to say what causes it. Generally, it is caused by out-of-bounds memory access. You can only find out the specific cause by finding the source according to the method I mentioned in the second floor.
This post is from stm32/stm8

92

Posts

0

Resources
7
                                 There is a register Memory Manage Fault Status Register in the NVIC part. You can find the specific cause by checking that register. If you can't analyze it, send us the code of the problematic part.
This post is from stm32/stm8

80

Posts

0

Resources
8
                                 There is a dedicated error status register, which has never been used before
This post is from stm32/stm8

65

Posts

0

Resources
9
                                 Is there such a register? I think it is difficult to point out the direct cause of the error in one step. It is still necessary to debug step by step.
This post is from stm32/stm8

76

Posts

0

Resources
10
The abnormal interruption is set to power off and modified to return directly.
It will return to the statement where the error occurred.
This post is from stm32/stm8

86

Posts

0

Resources
11
The source code is based on stm32zet6 + K9F1G08 + FATFS. This project was able to run normally before, but I changed it a little bit and it kept entering an exception. When I changed it back, it still entered the same exception. I hope some friends can take some time to help me take a look. Thank you very much. I have not been able to solve it.

nand_fatfs.rar (3.47 MB)

This post is from stm32/stm8

80

Posts

0

Resources
12
I know where to jump to this function, but what causes it and how to solve it?
Since
I know where to jump to, it should be easy to find the problem by looking at the disassembly.
Analyze the stack structure after entering the fault, and find the instruction that caused the fault according to r15.
This is what I have always done.
This post is from stm32/stm8

92

Posts

0

Resources
13
                                 The method is worth learning from. Let's analyze the stack structure after entering the fault. How to analyze it specifically?
This post is from stm32/stm8

Guess Your Favourite
Find a datasheet?

EEWorld Datasheet Technical Support

Related articles more>>

    EEWorld
    subscription
    account

    EEWorld
    service
    account

    Automotive
    development
    circle

    Robot
    development
    community

    Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号
    快速回复 返回顶部 Return list