logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

stm32l152rb - section `.bss' will not fit in region `ram'

minimima 15 Maj 2014 20:48 2037 4
  • #1 13604448
    minimima
    Poziom 11  
    Posty: 5
    Po napisaniu programu z wykorzystaniem z systemem FreeRTOS, nie mogę go skompilować. Od 2 dni googlam i bez rezultatu.

    Oto kod źródłowy programu.
    Kod: C / C++
    Zaloguj się, aby zobaczyć kod


    A to odpowidź kompilatora:

    Kod: Bash
    Zaloguj się, aby zobaczyć kod

    Problem wyskakuje przy odpalaniu samego Scheduler, i przy tworzeniu zadań. po za komentowaniu komand xTaskCreate i vTaskStartScheduler();. kompilator kończy z sukcesem.
    Proszę jakieś wskazówki albo link do rozwiązania którego ni umm znaleźć.

    Dzięki wilkie z góry
  • #2 13604627
    krru
    Poziom 33  
    Posty: 1819
    Pomógł: 230
    Ocena: 214
    Masz zadeklarowane za mało ramu. Szczególy mogą być w pliku nowy2.map (nie pamiętam, czy przy takim błędzie ten plik jest zapisywany). Natomiast definicje obszarów pamięci pobierane są z pliku: C:\CooCox\CoIDE\configuration\ProgramData\nowy2/arm-gcc-link.ld
  • #3 13605657
    gaskoin
    Poziom 38  
    Posty: 4159
    Pomógł: 436
    Ocena: 102
    Najlepiej pokaż ten skrypt linkera. Nie używałem coocox ale może też pokaż konfigurację mikrokontrolera bo może wybrałeś zły/nie wybrałeś go w ogóle.
  • #4 13605745
    grko
    Poziom 33  
    Posty: 1386
    Pomógł: 247
    Ocena: 141
    Jeszcze możesz mieć zdefiniowaną zbyt dużą stertę FreeRTOS'a. Szukaj definicji

    Kod: C / C++
    Zaloguj się, aby zobaczyć kod


    Tablicę na której działa heap FreeRTOS'a masz w pliku heap_2.c. Oczywiście wielkość sterty powinieneś dostosować do ilości pamięci RAM dostępnej w Twoim MCU.
  • #5 13647264
    minimima
    Poziom 11  
    Posty: 5
    Dzięki za pomoc problem rozwiązany.
    Dzięki GrzegorzKostka.

    Temat zamknięty.
REKLAMA