Здравствуйте форумчане! Прошу вашей помощи!
Столкнулся с проблемой при выводе звука на LPC 2366: в контроллере 32 кб оперативки, 256 флэш-памяти; звуковые фрагменты в hex-виде лежат в массиве. Если массив меньше 32 кб - все компилируется и играет, но если больше 32 кб - компилятор выдает ошибку переполнения, т.е. при работе с массивом программа помещает его полностью в оперативку. Но главная загвоздка в том, что даже если не использовать массив больше 32 кб, а просто объявить его, то компилятор все-равно ругается точно так же. Мне подсказали, что надо организовать буфер в оперативке. Однако все равно непонятно, как записать сэмпл звуковой, допустим в 64 кб, но чтобы компилятор принял его? Другими словами как ещё, кроме массива, можно записать эти самые 64 кб в код?
Работаю в KEIL, при компиляции выдает вот что:
compiling main.c... linking... .\1.axf: Error: L6406E: No space in execution regions with .ANY selector matching main.o(.data). .\1.axf: Error: L6407E: Sections of aggregate size 0x10c54 bytes could not fit into .ANY selector(s).
|