1.1 KiB
1.1 KiB
В файле l502_user_process.c объявлен большой массив uint32_t TX_buff[100000]. Для его размещения в большой (32Мб) SDRAM, а не в маленькой (несколько десятков Кб) L1, используется один из вариантов:
#include "l502_sdram_noinit.h"непосредственно перед объявлением__attribute__((section(".sdram_noinit")))в объявлении (т.е. объявление выглядит так: )
Поптытки решить с ChatGPT: https://chatgpt.com/share/687a5c3d-9194-8013-88c9-60e68295c834, баг с большим массивом blackfin and ChatGPT
Проблема: несмотря ни на что компилятор помещает большие массивы, объявленные с соотвестсвующей директивой, в l502_user_process.c в MEM_L1_DATA_A.
workaround
объявлять массивы в l502_stream.c, затем подключать их в l502_user_process.c через extern.