Description
What MCU/Processor/Board and compiler are you using?
STM32F407ZGT6
What do you want to achieve?
I want to successfully deploy LVGL on the STM32F407ZGT6 platform.
What have you tried so far?
I adjusted the stack and heap sizes in the startup file. I changed them to (0x2000, 0x5000).I also attempted to modify the buffer size.
Code to reproduce
Add the relevant code snippets here.
The code block(s) should be between ```c
and ```
tags:
/*You code here*/
Stack_Size EQU 0x5000
AREA STACK, NOINIT, READWRITE, ALIGN=3
Stack_Mem SPACE Stack_Size
__initial_sp
; <h> Heap Configuration
; <o> Heap Size (in Bytes) <0x0-0xFFFFFFFF:8>
; </h>
Heap_Size EQU 0x2000
AREA HEAP, NOINIT, READWRITE, ALIGN=3
__heap_base
Heap_Mem SPACE Heap_Size
__heap_limit
PRESERVE8
THUMB
#define LV_MEM_SIZE (120 * 1024U) /*[bytes]*/
static block_header_t * block_locate_free(control_t * control, size_t size)
{
int fl = 0, sl = 0;
block_header_t * block = 0;
if(size) {
mapping_search(size, &fl, &sl);
/*
** mapping_search can futz with the size, so for excessively large sizes it can sometimes wind up
** with indices that are off the end of the block array.
** So, we protect against that here, since this is the only callsite of mapping_search.
** Note that we don't need to check sl, since it comes from a modulo operation that guarantees it's always in range.
*/
if(fl < FL_INDEX_COUNT) {
block = search_suitable_block(control, &fl, &sl);
}
}
if(block) {
tlsf_assert(block_size(block) >= size);
remove_free_block(control, block, fl, sl);//(It stopped)
}
return block;
}
## Screenshot and/or video
If possible, add screenshots and/or videos about the current state.
![6491cc07176021f74304ec4e71a1813|690x282](upload://qYXJwO1FuBeHLgK6jf5An91OLdf.png)