Я работаю над проектом, который требует не менее 500 КБ памяти. У меня есть SDK с этим кодом, определяющим стек и кучу, и он работает нормально.Stack_Size EQU 0x00004000
AREA STACK, NOINIT, READWRITE, ALIGN=3
Stack_Mem SPACE Stack_Size
__initial_sp
; Heap Configuration
; Heap Size (in Bytes)
;
Heap_Size EQU 0x00200000
AREA HEAP, NOINIT, READWRITE, ALIGN=3
__heap_base
Heap_Mem SPACE Heap_Size
__heap_limit
< /code>
Тем не менее, я пытаюсь интегрировать камеру и функцию ЖК -экрана в этот SDK, и когда я это сделаю, самые высокие значения стека и кучи, которые, по крайней мере, будут подняться на ЖК -экран, показаны ниже. Любые значения выше этого, и ЖК-экран остается черным, а приложение не работает.Stack_Size EQU 0x00004000
AREA STACK, NOINIT, READWRITE, ALIGN=3
Stack_Mem SPACE Stack_Size
__initial_sp
; Heap Configuration
; Heap Size (in Bytes)
;
Heap_Size EQU 0x00002B50
AREA HEAP, NOINIT, READWRITE, ALIGN=3
__heap_base
Heap_Mem SPACE Heap_Size
__heap_limit
< /code>
Мне нужны размеры стека и куча во втором примере кода, чтобы соответствовать размерам в первом примере кода, чтобы я не застрял в цикле исключения с жесткой ошибкой из -за отсутствия памяти. Почему увеличение размера кучи усугубляет мой проект? Значит, почему это даже не работает, когда я увеличивает размер кучи? это объем памяти, который у меня есть. Разве это не означает, что у меня есть 2 МБ оперативной памяти? чтобы BLE & BHE SRAM, соответственно.
Подробнее здесь: https://stackoverflow.com/questions/249 ... tm32-board
ОЗУ, куча и память стека для платы STM32 ⇐ C++
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение