Настройка проекта ChibiOS в Keil
Заходим в настройки проекта:
![](https://radiotech.kz/assets/files/2023-01-25/1674660199-95936-skrinsot-2014-06-03-134817.png)
Вкладка Target, необходимо изменить опцию IRAM2. Здесь IRAM1 внутренняя RAM память МК равна 0x2000=8192 байта или 8кб. IRAM2 - это начало стека, явно устанавливается равным 1 байту. Стек используется для потоков ChibiOS.
![](https://radiotech.kz/assets/files/2023-01-25/1674660229-8244-skrinsot-2014-06-03-134526.png)
Вкладки Output, Listing и User в принципе не требуют изменения.
Вкладка С/С++. Здесь в общем самые важные настройки: Поле Define заполняется строкой heap_base=Image$$RW_IRAM1$$ZI$$Limit heap_end=Image$$RW_IRAM2$$Base
![](https://radiotech.kz/assets/files/2023-01-25/1674660262-224334-skrinsot-2014-06-03-141014.png)
В Include Paths указываются пути до заголовочных файлов.
![](https://radiotech.kz/assets/files/2023-01-25/1674660289-54466-skrinsot-2014-06-03-142205.png)
Вкладка Asm тоже требует настройки. В поле Misc Controls прописываем --cpreproc
![](https://radiotech.kz/assets/files/2023-01-25/1674660312-718446-skrinsot-2014-06-03-142337.png)
Инклуды для Asm:
![](https://radiotech.kz/assets/files/2023-01-25/1674660330-340741-skrinsot-2014-06-03-142341.png)
Вкладка Linker не требует настройки. Debug и Utilities настраивается на использование ST-Link