GNU MCU ECLIPSE С ПЛАГИНОМ CLOUDBEAR - ИНСТРУКЦИЯ ВЕРСИЯ 1.0.0 CLOUDBEAR - АВТОР

Страница создана Роман Мартынов
 
ПРОДОЛЖИТЬ ЧТЕНИЕ
GNU MCU ECLIPSE С ПЛАГИНОМ CLOUDBEAR - ИНСТРУКЦИЯ ВЕРСИЯ 1.0.0 CLOUDBEAR - АВТОР
CloudBEAR

  GNU MCU Eclipse с плагином CloudBEAR
                       Инструкция
                        Версия 1.0.0

Автор:    Евгений Линский 

Соавторы: Виталий Гайдук

                   Дата: 15 сентября 2021 г.
GNU MCU ECLIPSE С ПЛАГИНОМ CLOUDBEAR - ИНСТРУКЦИЯ ВЕРСИЯ 1.0.0 CLOUDBEAR - АВТОР
Содержание
   Введение                                                                                                                                           3

1 Установка и настройка                                                                                                                               4
  1.1 ОС Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                                                .   .   .   .   .   .   4
      1.1.1 Установка пакетов в ОС Windows . . . . . . . . . . . . . . .                                                      .   .   .   .   .   .   4
      1.1.2 Настройка терминала . . . . . . . . . . . . . . . . . . . . . .                                                   .   .   .   .   .   .   4
      1.1.3 Настройка переменных окружения . . . . . . . . . . . . . .                                                        .   .   .   .   .   .   4
  1.2 ОС Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                                              .   .   .   .   .   .   4
      1.2.1 Установка пакетов в CentOS . . . . . . . . . . . . . . . . . .                                                    .   .   .   .   .   .   4
      1.2.2 Установка пакетов в Ubuntu . . . . . . . . . . . . . . . . . .                                                    .   .   .   .   .   .   5
      1.2.3 Настройка терминала . . . . . . . . . . . . . . . . . . . . . .                                                   .   .   .   .   .   .   5
      1.2.4 Настройка переменных окружения . . . . . . . . . . . . . .                                                        .   .   .   .   .   .   5
  1.3 Установка плагина CloudBEAR . . . . . . . . . . . . . . . . . . . .                                                     .   .   .   .   .   .   5
      1.3.1 Установка плагина через пользовательский интерфейс . . .                                                          .   .   .   .   .   .   5
      1.3.2 Установка плагина через командную строку в ОС Windows                                                             .   .   .   .   .   .   7
      1.3.3 Установка плагина через командную строку в ОС Linux . .                                                           .   .   .   .   .   .   7

2 Использование Eclipse                                                                                                                                8
  2.1 Начало работы с Eclipse . . . .     .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    8
  2.2 Создание и импорт проекта . .       .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .    8
  2.3 Редактирование и компиляция         .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   11
  2.4 Настройка проекта . . . . . . .     .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   14
  2.5 Отладка . . . . . . . . . . . . .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   16
  2.6 Удаленная отладка . . . . . .       .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   .   19

                                                      2
GNU MCU ECLIPSE С ПЛАГИНОМ CLOUDBEAR - ИНСТРУКЦИЯ ВЕРСИЯ 1.0.0 CLOUDBEAR - АВТОР
CloudBEAR       GNU MCU Eclipse с плагином CloudBEAR. Инструкция        Версия 1.0.0

Введение
     GNU MCU Eclipse (далее Eclipse) — это интегрированная среда разработки (ИСР),
включающая дополнительный набор плагинов для разработки ПО для встраиваемых
устройств, использующих микропроцессоры с системой команд RISC-V.
     Плагин CloudBEAR для Eclipse содержит исходные файлы окружений (исходные
тексты на C, скрипты для компоновщика и т.д.), которые позволяют разрабатывать про-
екты под разные процессорные комплексы CloudBEAR. Для сборки проектов, созданных
с помощью плагина CloudBEAR, используется набор инструментов разработчика RISC-V
GNU toolchain (компилятор, компоновщик, отладчик и т.д.), а для их отладки в процес-
сорном комплексе CloudBEAR — утилита OpenOCD с поддержкой RISC-V.

15 сентября 2021 г.                                                               3
GNU MCU ECLIPSE С ПЛАГИНОМ CLOUDBEAR - ИНСТРУКЦИЯ ВЕРСИЯ 1.0.0 CLOUDBEAR - АВТОР
CloudBEAR         GNU MCU Eclipse с плагином CloudBEAR. Инструкция         Версия 1.0.0

1       Установка и настройка
    Дистрибутив Eclipse можно загрузить на официальном сайте Eclipse Foundation. Те-
кущая версия плагина была протестирована с версией 2019-09.

1.1      ОС Windows
     Eclipse под ОС Windows представляет из себя zip архив, который не требует уста-
новки и может быть распакован с помощью штатных средств Проводника Windows.
     В дальнейшем предполагается, что Eclipse распакован в директорию %USERPROFILE%\tools.

1.1.1     Установка пакетов в ОС Windows
     Для работы Eclipse необходимо установить дистрибутив Java SE Runtime Environment.
После установки необходимо добавить в переменную среды PATH путь к директории с ис-
полняемым файлом java.exe (например, C:\Program Files\Java\jre1.8.0_202\bin).
     Для сборки примеров ИСР Eclipse использует утилиты, которых нет по умолчанию
в Windows. Архив с утилитами необходимо загрузить по ссылке, распаковать и добавить
в переменную среды PATH путь к директории с исполняемыми файлами
(например, %USERPROFILE%\GNU MCU Eclipse\Build Tools\2.12-20190422-1053\bin).
     RISC-V GNU toolchain и OpenOCD, которые поставляются в виде zip архивов, необ-
ходимо распаковать в %USERPROFILE%\tools.

1.1.2     Настройка терминала
        Никакой специальной настройки терминала не требуется.

1.1.3     Настройка переменных окружения
        Необходимо настроить следующие переменные среды:

TOOL_DIR=%USERPROFILE%\tools
PATH=%PATH%;%TOOL_DIR%\bin;%TOOL_DIR%\eclipse
TOOLCHAIN_PATH=%TOOL_DIR%

1.2      ОС Linux
     Eclipse под ОС Linux представляет из себя дистрибутив (tar архив), который не тре-
бует установки и может быть распакован с помощью штатных средств Linux.
     Для распаковки Eclipse в Linux можно использовать команду:
tar -xf eclipse-cpp-*-linux-gtk-x86_64.tar.gz
        В дальнейшем предполагается, что Eclipse распакован в директорию /opt/eclipse.

1.2.1     Установка пакетов в CentOS
     Перед использованием Eclipse необходимо установить RISC-V GNU toolchain, OpenOCD
с поддержкой RISC-V и OpenJDK 8. Для этого требуется выполнить следующие команды.
     Для Centos:

15 сентября 2021 г.                                                                  4
GNU MCU ECLIPSE С ПЛАГИНОМ CLOUDBEAR - ИНСТРУКЦИЯ ВЕРСИЯ 1.0.0 CLOUDBEAR - АВТОР
CloudBEAR       GNU MCU Eclipse с плагином CloudBEAR. Инструкция           Версия 1.0.0

sudo dnf install riscv-gnu-toolchain-elf-*.x86_64.rpm
sudo dnf install riscv-openocd-*.x86_64.rpm
sudo dnf -y install java-1.8.0-openjdk

1.2.2   Установка пакетов в Ubuntu
     Перед использованием необходимо установить RISC-V GNU toolchain, OpenOCD с
поддержкой RISC-V и OpenJDK 8. Для этого требуется выполнить следующие команды.
     Для Ubuntu:
sudo apt install riscv-gnu-toolchain-elf_*_amd64.deb
sudo apt install riscv-openocd_*_amd64.deb
sudo apt install install openjdk-8-jdk

1.2.3   Настройка терминала
     Для того, чтобы Eclipse мог подключиться к терминалу и перехватить стандартный
вывод программы, печатаемый через UART, необходимо убедиться, что у группы dialout
есть права на чтение и запись в устройства /dev/ttyUSBx, т.е. доступ к этим устройствам
не требует специальных привилегий (sudo).
     В случае отсутствия прав на чтение/запись одно из возможных решений — скон-
фигурировать права на этапе включения устройства. Для этого необходимо выполнить
следующую последовательность команд:
cp /lib/udev/rules.d/50-udev-default.rules /etc/udev/rules.d/50-udev-default.rules
echo 'KERNEL=="ttyUSB*", MODE="0666"' >> /etc/udev/rules.d/50-udev-default.rules
     Для корректной работы терминала, через который процессорный комплекс выпол-
няет вывод (например, /dev/ttyUSB1), необходимо выполнить его настройку следующей
командой:
stty -F /dev/ttyUSB1 115200 icanon -inlcr -igncr -icrnl -ocrnl -onlcr -onocr -onlret
Параметры для терминала, задаваемые с помощью stty, позволяют редактировать вводи-
мые строки, а также отключают модификацию терминалом символов CR и LF во вводимых
и выводимых строках.

1.2.4   Настройка переменных окружения
    Затем необходимо инициализировать переменные окружения с помощью следующих
команд:
export PATH="$PATH:/opt/cloudbear/bin:/opt/eclipse"
export TOOLCHAIN_PATH="/opt/cloudbear"

1.3     Установка плагина CloudBEAR
1.3.1   Установка плагина через пользовательский интерфейс
     Установка плагина возможна двумя способами: через пользовательский интерфейс
Eclipse (одинаково на Windows и Linux) и через командную строку.
     Для установки через интерфейс нужно перейти в пункт меню Help - Install New
Software. В появившемся окне нажать кнопку Add и далее вписать адрес репозито-
рия в поле Location (рис. 1) - https://eclipse.cloudbear.ru/mcu. Затем нужно вы-
брать сам плагин для установки, отметив пункт GNU ARM & RISC-V C/C++ Cross
Development Tools или нажав кнопку Select All (рис. 2). После этого нажать Next.

15 сентября 2021 г.                                                                    5
GNU MCU ECLIPSE С ПЛАГИНОМ CLOUDBEAR - ИНСТРУКЦИЯ ВЕРСИЯ 1.0.0 CLOUDBEAR - АВТОР
CloudBEAR       GNU MCU Eclipse с плагином CloudBEAR. Инструкция         Версия 1.0.0

В следующем окне можно увидеть список всех пакетов, которые будут установлены пла-
гином (рис. 3). В следующем окне установки необходимо подтвердить пользовательское
соглашение, выбрав пункт I accept the terms of the license agreement и завершив кноп-
кой Finish. Затем требуется подтвердить установку неподписанного ПО, нажав кнопку
Install anyway, и перезапустить Eclipse по требованию (кнопка Restart Now).

             Рис. 1: Добавление репозитория с плагином CloudBEAR

                      Рис. 2: Установка плагина CloudBEAR

15 сентября 2021 г.                                                                6
GNU MCU ECLIPSE С ПЛАГИНОМ CLOUDBEAR - ИНСТРУКЦИЯ ВЕРСИЯ 1.0.0 CLOUDBEAR - АВТОР
CloudBEAR       GNU MCU Eclipse с плагином CloudBEAR. Инструкция         Версия 1.0.0

                              Рис. 3: Список пакетов

1.3.2   Установка плагина через командную строку в ОС Windows
     При выборе этого способа предполагается, что произведена настройка переменных
окружения. Вначале с сайта CloudBEAR по следующей ссылке необходимо загрузить тек-
стовый файл со списком пакетов для плагина CloudBEAR.
     Затем в командной строке необходимо выполнить следующие команды:

user> set /p MCU_LIST=         eclipsec -application org.eclipse.equinox.p2.director -consoleLog
-noSplash -repository https://eclipse.cloudbear.ru/mcu -installIU %MCU_LIST%

1.3.3   Установка плагина через командную строку в ОС Linux
    При выборе этого способа предполагается, что произведена настройка переменных
окружения. Для установки через командную строку нужно выполнить следующие коман-
ды:
curl -sL https://eclipse.cloudbear.ru/mcu/mcu-bundles.txt | \
xargs eclipse -application org.eclipse.equinox.p2.director -consoleLog -noSplash \
-repository https://eclipse.cloudbear.ru/mcu -installIU

15 сентября 2021 г.                                                                  7
GNU MCU ECLIPSE С ПЛАГИНОМ CLOUDBEAR - ИНСТРУКЦИЯ ВЕРСИЯ 1.0.0 CLOUDBEAR - АВТОР
CloudBEAR       GNU MCU Eclipse с плагином CloudBEAR. Инструкция          Версия 1.0.0

2     Использование Eclipse
      Этот раздел включает в себя описание наиболее частых действий в Eclipse.

2.1    Начало работы с Eclipse
      Запустить Eclipse можно командой:
eclipse
      Далее необходимо выбрать рабочую директорию (workspace), куда будут сохранены
все создаваемые проекты. Изменить рабочую директорию в дальнейшем можно через File
- Switch Workspace. Eclipse будет помнить рабочую директорию при следующем запуске.
      В Eclipse для режимов редактирования и отладки используются различные наборы
стандартных окон (perspectives): набор для редактирования (С/С++ perspective) и на-
бор для отладки (Debug perspective). Переключиться между наборами можно с помощью
пункта меню Window - Perspective - Open Perspective.
      Также возможна настройка собственного набора окон Window - Perspective -
Customize Perspective.

2.2    Создание и импорт проекта
     Для создания нового проекта нужно нажать File - New - С/C++ Project. Далее
выбрать С Managed Build/С++ Managed Build.
     После этого откроется окно (рис. 4), где необходимо задать имя проекта, выбрать
его тип Executable - CloudBEAR RISC-V C/C++ Project и тип набора инструмен-
тов разработчика RISC-V Cross GCC (кросс-компилятор для RISC-V), который будет
использоваться для сборки и отладки проекта (конкретный компилятор можно будет вы-
брать далее).

15 сентября 2021 г.                                                                 8
GNU MCU ECLIPSE С ПЛАГИНОМ CLOUDBEAR - ИНСТРУКЦИЯ ВЕРСИЯ 1.0.0 CLOUDBEAR - АВТОР
CloudBEAR       GNU MCU Eclipse с плагином CloudBEAR. Инструкция          Версия 1.0.0

                             Рис. 4: Создание проекта

     Далее необходимо указать (см. рис. 5) для какого процессорного комплекса (Platform)
предназначен проект. Этот выбор определяет тип окружения, файлы которого будут до-
бавлены в проект.
– Окружение CloudBEAR BM-310S RV32IMC предназначено для разработки 32-х
  битных программ для процессорного комплекса BM-310S (система команд RV32IMC;
  поддержка machine и user режимов привилегированности; отсутствие поддержки вир-
  туальной памяти).
– Окружение CloudBEAR BR-351S RV32IMAFC предназначено для разработки 32-х
  битных программ для процессорного комплекса BR-351S (система команд RV32IMAFC;
  поддержка machine и user режимов привилегированности; отсутствие поддержки вир-
  туальной памяти).
– Окружение CloudBEAR BI-671D RV64IMAFDC позволяет разрабатывать 64-х бит-
  ные программы для процессорного комплекса BI-671D (система команд RV64IMAFDC;
  поддержка двух ядер; поддержка machine, supervisor и user режимов привилегирован-
  ности).
     Все окружения поддерживают выделение динамической памяти (malloc) и ввод-
вывод по протоколу UART (scanf, printf). Опция Content позволяет указать, требуется
ли помещать в проект заранее заготовленный main.c (пример программы, выводящей
«Hello world») или просто создать пустой проект (Empty). Остальные опции задают до-

15 сентября 2021 г.                                                                  9
GNU MCU ECLIPSE С ПЛАГИНОМ CLOUDBEAR - ИНСТРУКЦИЯ ВЕРСИЯ 1.0.0 CLOUDBEAR - АВТОР
CloudBEAR       GNU MCU Eclipse с плагином CloudBEAR. Инструкция         Версия 1.0.0

полнительные ключи компиляции.
      Далее требуется задать варианты сборки: Debug (опции -g3, -O0) и Release (опции
-O2).
      После этого необходимо указать имя конкретного набора инструментов разработчи-
ка RISC-V GCC/Newlib (riscv64-unknown-elf-gcc) (кросс-компилятор под RISC-V
с библиотекой Newlib), а также путь к нему, если он не совпадает со стандартным (см.
рис. 6).
      Для завершения создания проекта нужно нажать кнопку Finish.

                 Рис. 5: Конфигурирование создаваемого проекта

15 сентября 2021 г.                                                               10
CloudBEAR       GNU MCU Eclipse с плагином CloudBEAR. Инструкция      Версия 1.0.0

                 Рис. 6: Выбор набора инструментов разработчика

     Помимо создания нового проекта, Eclipse предоставляет возможность импорта уже
существующих проектов. Для импорта проекта нужно выбрать File - Import - General
- Existing Projects into Workspace. В появившемся окне необходимо выбрать дирек-
торию с готовыми проектами (например, директорию examples).

2.3   Редактирование и компиляция
     Стандартный набор окон для редактирования и компиляции проектов на C/C++
показан на рис. 7.

15 сентября 2021 г.                                                             11
CloudBEAR       GNU MCU Eclipse с плагином CloudBEAR. Инструкция       Версия 1.0.0

                             Рис. 7: Интерфейс Eclipse

       Можно выделить следующие наиболее часто используемые элементы интерфейса:
1.   Панель инструментов (кнопки для сборки и отладки проекта);
2.   Проводник проекта (добавление/удаление файлов);
3.   Редактор кода;
4.   Outline: навигация по коду;
5.   Problems: вывод ошибок, предупреждений и уведомлений; Console: консоль для вы-
     вода сообщений от компилятора и отладчика; Terminal: окно вывода из терминала
     (используется для вывода сообщений по протоколу UART от запускаемых программ).

15 сентября 2021 г.                                                              12
CloudBEAR       GNU MCU Eclipse с плагином CloudBEAR. Инструкция       Версия 1.0.0

                           Рис. 8: Проводник проекта

      Проводник проекта (см. рис. 8) позволяет управлять проектами в рабочей дирек-
тории. По нажатию правой кнопки мыши открывается контекстное меню проекта, через
которое можно добавить или удалить файлы, а также отредактировать (см. рис. 9) на-
стройки проекта (ключи компилятора и компоновщика; используемый набор инструмен-
тов; переменные окружения; аргументы командной строки и т.п.).

                            Рис. 9: Свойства проекта

15 сентября 2021 г.                                                             13
CloudBEAR       GNU MCU Eclipse с плагином CloudBEAR. Инструкция           Версия 1.0.0

     Редактор используется для написания программ и навигации по коду. Редактор под-
держивает показ контекстной информации и автодополнение.
     Окно Outline предназначено для быстрой навигации по коду, в нем отображают-
ся основные синтаксические единицы программы (например, имена функций). Двойное
нажатие на номер строки или комбинация Shift+Ctrl+B поставит или уберёт точку
останова (breakpoint).
      Сборку проекта можно выполнить, нажав на кнопку     на панели инструментов.
      Сообщения от компилятора и отладчика выводятся в окно Console.

2.4    Настройка проекта
      Настройку параметров проекта можно произвести, выбрав пункт Properties в кон-
текстном меню Проводника проекта. Рассмотрим два типовых примера изменения настро-
ек, заданных по умолчанию: изменение скриптов компоновщика и изменение подсистемы
команд (ISA).
      Настроить скрипты компоновщика можно, выбрав следующие подпункты в диало-
говом окне: Properties - C/C++ Build - Settings - Tool Settings - GNU RISC-V
Cross C++ Linker - General (см. рис. 10). С помощью кнопок над списком скриптов
можно редактировать содержимое этого списка: добавить, удалить, изменить, переместить
выше или ниже по порядку                    . Этот список используется, если проект име-
ет несколько скриптов, которые описывают соответствие между секциями исполняемого
файла и регионами памяти (flash, flash-tcm, tcm).
     Настроить подсистему команд, которую будет использовать компилятор, можно,
выбрав подпункт Properties - C/C++ Build - Settings - Tool Settings - Target
Processor, и с помощью соответсвующих полей задать нужные расширения (см. рис. 11).

15 сентября 2021 г.                                                                  14
CloudBEAR       GNU MCU Eclipse с плагином CloudBEAR. Инструкция   Версия 1.0.0

                Рис. 10: Изменение списка скриптов компоновщика

                      Рис. 11: Редактирование ISA проекта

15 сентября 2021 г.                                                         15
CloudBEAR       GNU MCU Eclipse с плагином CloudBEAR. Инструкция           Версия 1.0.0

2.5   Отладка
      Перед запуском программы необходимо настроить терминал, который будет отобра-
жать вывод программы, запущенной в процессорном комплексе CloudBEAR, через UART
(см. рис. 12). Для этого в Eclipse существует Terminal плагин. Открыть его можно, нажав
на кнопку на панели инструментов    или воспользовавшись комбинацией Ctrl+Shift+Alt+T.

                        Рис. 12: Пример вывода в Terminal

     По умолчанию в плагине для Serial Terminal выставлена скорость передачи дан-
ных 115200. Если текст в Terminal выводится неправильно — убедитесь, что выставлено
корректное значение скорости.

                          Рис. 13: Окно настроек Terminal

      Обратите внимание, что в ОС Windows имя порта, которое используется терминалом,
имеет формат COMX, где X — число (например, COM3).
      Отладка осуществляется через связку GDB – OpenOCD. Запуск программы вы-
полняется нажатием на кнопку         на панели инструментов. По умолчанию запускает-
ся конфигурация отладки, запускавшаяся до этого. Если до этого запускалось несколько
конфигураций, то необходимо указать нужную через выпадающее меню запуска отладки
(рис. 14). Если до этого отладка не запускалась, то нужно развернуть выпадающее меню
отладки и выбрать Debug Configurations (рис. 14), далее развернуть GDB OpenOCD
Debugging, выбрать необходимую конфигурацию и нажать Debug (рис. 15).

15 сентября 2021 г.                                                                 16
CloudBEAR       GNU MCU Eclipse с плагином CloudBEAR. Инструкция           Версия 1.0.0

                      Рис. 14: Меню выбора конфигурации отладки

                          Рис. 15: Старт отладки с OpenOCD

     После этого запустится сборка проекта. Если сборка прошла успешно, то Eclipse пере-
ключится в режим отладки (см. рис. 16) и сменит набор стандартных окон. Окно Variables
будет содержать текущие переменные, окно Breakpoints — список установленных точек
останова, окно Registers — значения аппаратных регистров, окно Memory — область па-
мяти, начиная с указанного адреса (см. рис. 17). Memory Monitor при необходимости
нужно добавить самостоятельно (см. рис. 18).

15 сентября 2021 г.                                                                  17
CloudBEAR        GNU MCU Eclipse с плагином CloudBEAR. Инструкция   Версия 1.0.0

                      Рис. 16: Вид интерфейса в режиме отладки

                                 Рис. 17: Окно Memory

                      Рис. 18: Кнопка добавления Memory Monitor

     Для переключения между режимами отладки и редактирования можно воспользо-
ваться кнопкой          , расположенной в правом верхнем углу.

15 сентября 2021 г.                                                          18
CloudBEAR       GNU MCU Eclipse с плагином CloudBEAR. Инструкция         Версия 1.0.0

     Отметим, что в окружениях CloudBEAR после выполнения функции main програм-
ма переходит к исполнению вечного цикла. Для завершения отладки необходимо её ста-
новить кнопкой    на панели инструментов или комбинацией Ctrl+F2.

2.6   Удаленная отладка
      В этом подразделе будет описано использование Eclipse в сценарии удаленной от-
ладки, когда RISC-V GNU toolchain и Eclipse установлены на один компьютер (далее
host-eclipse), а OpenOCD и тестовый стенд с процессорным комплексом CloudBEAR —
на другой компьютер (далее host-openocd).
      Предполагается, что на обоих компьютерах выполнена начальная настройка как опи-
сано в разделе 1. В частности:
 1. на компьютере host-eclipse установлены RISC-V GNU toolchain и Eclipse;
 2. на компьютере host-openocd установлена утилита OpenOCD и настроен терминал;
 3. на обоих компьютерах выполнена настройка переменных окружения.
      На компьютере host-openocd требуется выполнить следующие дополнительные дей-
ствия:
 1. открыть для входящих соединений порт 3333;
 2. загрузить конфигурационный файл OpenOCD (например, для отладчика jlink файл
    bear-fpga-jlink-rtos.cfg можно найти в директории с примерами для Eclipse);
 3. добавить в этот файл первой строкой команду bindto 0.0.0.0, которая разрешает
    OpenOCD принимать соединения с удаленных компьютеров;
 4. запустить OpenOCD командой:
   openocd -f bear-fpga-jlink-rtos.cfg
    То, что настройка host-openocd прошла успешно, можно проверить по следующему
выводу в консоль:

Open On-Chip Debugger 0.10.0+dev-g90e6e4d (2019-02-26-01:08)
Licensed under GNU GPL v2
For bug reports, read
        http://openocd.org/doc/doxygen/bugs.html
adapter speed: 12000 kHz
Info : J-Link V10 compiled Mar 2 2018 17:07:17
Info : Hardware version: 10.10
Info : VTarget = 3.322 V
Info : clock speed 12000 kHz
Info : JTAG tap: riscv.cpu tap/device found: 0x000006df (mfg: 0x36f (JSC ICC Milandr),
part: 0x0000, ver: 0x0)
Info : datacount=4 progbufsize=16
Info : Disabling abstract command reads from CSRs.
Info : Exposing additional CSR 2288
Info : Exposing additional CSR 2288
Info : Disabling abstract command writes to CSRs.
Info : Examined RISC-V core; found 2 harts
Info : hart 0: XLEN=64, misa=0x800000000014112d
Info : hart 1: XLEN=64, misa=0x800000000014112d
Info : Listening on port 3333 for gdb connections
Info : JTAG tap: riscv.cpu tap/device found: 0x000006df (mfg: 0x36f (JSC ICC Milandr),
part: 0x0000, ver: 0x0)

15 сентября 2021 г.                                                                19
CloudBEAR       GNU MCU Eclipse с плагином CloudBEAR. Инструкция         Версия 1.0.0

Ready for Rem ote Connections
Info : Listening on port 6666 for tcl connections
Info : Listening on port 4444 for telnet connections
Info : accepting 'gdb' connection on tcp/3333
Info : JTAG tap: riscv.cpu tap/device found: 0x000006df (mfg: 0x36f (JSC ICC Milandr),
part: 0x0000, ver: 0x0)

     На компьютере host-eclipse требуется выполнить следующие действия:
1. запустить Eclipse и открыть в нем проект (см. подраздел 2.2);
2. в настройке конфигурации отладки на вкладке Debugger отключить опцию Start
   OpenOCD locally (см. рис. 19) и вписать IP адрес компьютера host-openocd в поле
   Host name or IP address (см. рис. 20);
3. после этого можно начинать отладку.

               Рис. 19: Настройка удаленной отладки для OpenOCD

                  Рис. 20: Настройка удаленной отладки для GDB

      Для того, чтобы увидеть вывод терминала c компьютера host-openocd в Eclipse,
необходимо:
 1. подсоединиться к нему с помощью SSH Terminal, указав Host (IP адрес компьютера
    host-opeoncd), User и Password (см. рис. 21);
 2. в открывшейся консоли терминала выполнить команды (предполагается, что процес-
    сорный комплекс осуществляет вывод через /dev/ttyUSB1):
   stty -F /dev/ttyUSB1 115200 icanon -inlcr -igncr -icrnl -ocrnl -onlcr -onocr -onlret
   cat /dev/ttyUSB1

15 сентября 2021 г.                                                                20
CloudBEAR       GNU MCU Eclipse с плагином CloudBEAR. Инструкция    Версия 1.0.0

                        Рис. 21: Настройка SSH Terminal

   Пример работы SSH Terminal показан на рис. 22.

               Рис. 22: Настройка терминала при удаленной отладке

15 сентября 2021 г.                                                          21
Вы также можете почитать