Настройка удаленной отладки GDB-server.: различия между версиями
Перейти к навигации
Перейти к поиску
A.sushkov (обсуждение | вклад) Нет описания правки |
A.sushkov (обсуждение | вклад) Нет описания правки |
||
| Строка 35: | Строка 35: | ||
####systemctl start GDB.service | ####systemctl start GDB.service | ||
###Ключи запуска ./JLinkGDBServer лежат в файле '''script''' | ###Ключи запуска ./JLinkGDBServer лежат в файле '''script''' | ||
##Samba: | ##Samba для удобного обмена файлами между OrangePi и Windows машинами: | ||
### | ###В конец файла /etc/samba/smb.conf добавим следующий раздел: | ||
####[share_anon] comment = Dir for Anon path = /var/share_anon public = yes writable = yes read only = no guest ok = yes | |||
###Вводим команды: | |||
####systemctl enable smbd | |||
####mkdir /var/share_anon | |||
####chmod 777 /var/share_anon | |||
####systemctl start smbd | |||
Версия от 09:08, 31 мая 2024
На примере OrangePi Lite, все необходимое в папке: \\ds\Common\Distrib\GDB
- Готовим загрузочную microSD (минимум 4Gb):
- Форматируем в FAT32 утилитой HPUSBFW.
- С помощью USBImager записываем на нее файл Armbian_community_24.8.0-trunk.6_Orangepilite_jammy_current_6.6.31_xfce_desktop.img.xz (утилита сам умеет на лету распаковывать архив).
- Грузимся в Linux, настраиваем пароли, WiF, прочее.
- Ставим пакет JLink_Linux_V796i_arm.deb
- Прошивка из ST-Link в JLink:
- В Windows утилитой STLinkReflash можно перепрошить st-link в jlink, у меня сработала версия 161007 именно STLinkReflash.exe (хотя пишут что нужна STLinkReflashFixed.exe, тоже есть в архиве).
- Проверяем в диспетчере устройств, что программатор определяется как jlink
- Теперь его можно втыкать в OrangePi.
- Запуск GDB сервера на OrangePi:
- Переходим в папку /opt/SEGGER/JLink_V796i
- Запускаем ./JLinkGDBServer -select usb=773154043 -if SWD -device stm32f446vc
- Где -select usb=<серийник jlink> - необязательно указывать (если только их несколько)
- -if SWD - интерфейс подключения Jlink к отлаживаемой плате
- -device stm32f446vc - микроконтроллер на отлаживаемой плате
- Отладка из CubeIDE:
- В Debug Configuration -> Debugger выбираем "SEGGER J-LINK", GDB Connection Settings -> Connect to remote GDB server, Host name or IP address: <IP адрес OrangePI>, Port number: 2331 (по умолчанию).
- Можно нажать кнопку Show Command Line Options и подсмотреть ключи для пункта 3.2
- Жмем Debug, наслаждаемся удаленной отладкой.
- Что можно добавить:
- OpenVPN:
- Конфигфайл помещаем в /etc/openvpn, называем client.conf
- Вводим команды:
- openvpn --config /etc/openvpn/client.conf --daemon
- systemctl enable openvpn@client
- Автозапуск JLinkGDBServer:
- Помещаем файл script в /etc/default/, GDB.service в /etc/systemd/system/, выполняем команды:
- chmod 664 /etc/systemd/system/GDB.service
- chmod 777 /etc/default/script
- systemctl daemon-reload
- systemctl enable GDB.service
- systemctl start GDB.service
- Ключи запуска ./JLinkGDBServer лежат в файле script
- Помещаем файл script в /etc/default/, GDB.service в /etc/systemd/system/, выполняем команды:
- Samba для удобного обмена файлами между OrangePi и Windows машинами:
- В конец файла /etc/samba/smb.conf добавим следующий раздел:
- [share_anon] comment = Dir for Anon path = /var/share_anon public = yes writable = yes read only = no guest ok = yes
- Вводим команды:
- systemctl enable smbd
- mkdir /var/share_anon
- chmod 777 /var/share_anon
- systemctl start smbd
- В конец файла /etc/samba/smb.conf добавим следующий раздел:
- OpenVPN: