Початковий завантажувач STM32
Код для початкового завантажувача PX4 доступний на Github у репозиторії Bootloader.
Підтримувані плати
- FMUv2 (Pixhawk 1, STM32F4)
- FMUv2 (Pixhawk 2, STM32F4)
- FMUv4 (Pixracer 3 і Pixhawk 3 Pro, STM32F4)
- FMUv5 (Pixhawk 4, STM32F7)
- TAPv1 (TBA, STM32F4)
- ASCv1 (TBA, STM32F4)
Збираємо початковий завантажувач
sh
git clone https://github.com/PX4/Bootloader.git
cd Bootloader
git submodule init
git submodule update
make
Після цього кроку, розмаїття elf-файлів для усіх підтримуваних плат будуть присутні в директорії Bootloader.
Прошиваємо початковий завантажувач
WARNING
Правильна послідовність живлення є критичною для деяких плат, щоб потім дозволити доступ JTAG / SWD. Виконайте ці кроки точно так, як описано.
Інструкції нижче дійсні для Blackmagic / Dronecode адаптерів. Для інших JTAG адаптерів будуть потрібні інші, але подібні кроки. Розробники, які намагаються прошити завантажувач повинні мати необхідні знання. Якщо ви не знаєте, як це зробити, то ймовірно, слід переглянути, чи дійсно вам потрібно щось змінювати у початковому завантажувачі.
Послідовність наступна:
- Від'єднати кабель JTAG
- Під'єднайте USB-кабель живлення
- Під'єднати кабель JTAG
Black Magic / Dronecode адаптери
Використовуємо правильний послідовний порт
- На LINUX:
/dev/serial/by-id/usb-Black_Sphere_XXX-if00
- На MAC OS: переконайтесь що використовуєте порт cu.xxx, а не порт tty.xxx:
tar ext /dev/tty.usbmodemDDEasdf
sh
Наступні інструкції стосуються J-Link GDB server.
Попередня підготовка
Завантажте програмне забезпечення J-Link з сайту Segger та встановіть його за їхніми інструкціями.
Запустити JLink GDB сервер
Команда використовується для запуску сервера для польотних контролерів що використовують STM32F427VI SoC:
sh
--device
/SoC є спільним для пристроїв:
Під'єднайтесь до GDB
sh
Усунення несправностей
Якщо будь-який з наведених нижче команд не знайдено, ви або не використовуєте Blackmagic probe або його програмне забезпечення застаріло. Спершу оновіть прошивку адаптера.
Якщо Ви отримуєте наступне повідомлення про помилку:
Відключити плату (лишивши JTAG підключеним) та запустіть
sh
Це вимкне живлення пристрою й уможливить наступний цикл прошивки.