|
В этой статье описан компиляция и запуск проекта [1] на плате BluePill (микроконтроллер stm32f103c8t6) в среде операционной системы Ubuntu.
1. Установите Code::Blocks и тулчейн, если это еще еще не установлено:
sudo apt update sudo apt install codeblocks codeblocks-contrib build-essential gdb sudo apt install gcc-arm-none-eabi gdb-arm-none-eabi openocd
2. Скачайте проект:
git clone hhttps://github.com/fabiovila/bluepill-freertos.git
В текущем каталоге появится папка bluepill-freertos, зайдите в неё командой cd:
cd bluepill-freertos
3. Откройте в любом текстовом редакторе файл Cortex-M3-F103.cbp. Внесите в него следующие исправления.
- Удалите строки:
< Add library="usr/arm-none-eabi/lib/thumb/libm.a" /> < Add library="usr/arm-none-eabi/lib/thumb/libc_nano.a" />
- Переименуйте имена папок thirdparty в имена ThirdParty. На Windows это делать необязательно, потому что она одинаково обрабатывает имена файловой системы с заглавными и строчными буквами, но в Linux это приедет к ошибкам компиляции.
4. Двойным щелчком мыши на файле Cortex-M3-F103.cbp откройте проект. Запустится среда разработки Code::Blocks.

5. Выберите в меню Settings -> Compiler..., откроется диалог настройки компилятора. В выпадающем списке "Selected compiler" выберите "GNU GCC Compiler" и кликните на Copy. Появится окно с предложением указать имя для нового профиля настроек компилятора, введите любое понятное имя, например "Cortex-M3 (STM32F103)" и кликните OK.

6. Настройте в новом профиле компилятора "Cortex-M3 (STM32F103)" названия исполняемых файлов тулчейна, для этого выберите закладку "Toolchain executables" и введите правильные имена для компиляторов, линкера и библиотекаря:

После исправления имен кликните OK и закройте диалог.
Замечание: имена исполняемых файлов тулчейна можно подсмотреть в папке /usr/bin:
ls -1 /usr/bin | grep "arm\-none\-"
7. Выберите в меню Build -> Rebuild (Ctrl+F11), или кликните на кнопку с круглыми синими стрелками:

Проект перекомпилируется, и в каталоге bin/Release вы увидите двоичный скомпилированный код:
$ ls -1 bin/Release/
CM3
CM3.bin
CM3.hex
CM3.s19
[Как прошить код]
Подключите вашу платку BluePill к отладчику ST-Link V2 через интерфейс SWD, для этого понадобится 4 провода:
+3.3V SWCLK SWDIO GND
Запустите прошивку:
st-flash write bin/Release/CM3.bin 0x8000000
После прошивки нажмите на кнопку RESET платки BluePill, зеленый светодиод начнет медленно мигать.
[Ссылки]
1. bluepill-stm32-freertos. 2. bluepill-stm32. |