ARM

Материал из ВИКИЦМИТ
Перейти к навигации Перейти к поиску


Установка GNU Arm Embedded Toolchain на Linux

Набор инструментов GNU Arm Embedded содержит интегрированные и проверенные пакеты с компилятором GCC, библиотеками и другими инструментами, необходимыми для разработки программного обеспечения с нуля. Эти наборы инструментов предназначены для устройств, основанных на 32-битных процессорах Arm Cortex-A, Cortex-R и Cortex-M.

Наборы инструментов доступны для кросс-компиляции в операционных системах Microsoft Windows (x86 32 / 64bit), Linux (x86_64 и 64-bit Arm) и Mac OS X.

Эти наборы инструментов основаны на инструментах с открытым исходным кодом GNU Free Software Foundation (FSF) и newlib.code

Оказалось, что ARM решила упростить нашу жизнь (сарказм), отказавшись от использования PPA - на их странице на панели запуска теперь есть объявление:
«... все новые двоичные пакеты и пакеты с исходным кодом больше не будут выпускаться на Launchpad ... ". Итак, чтобы использовать их последнюю версию arm-none-eabi-gdb, вам нужно установить gcc-arm-embedded вручную.

Remove arm-none-eabi-gcc from your system:
sudo apt remove gcc-arm-none-eabi
Загрузите последнюю версию (Linux x86_64 Tarball) с их веб-сайта, проверьте ее MD5. Распаковать в какую-нибудь директорию. я использовал /usr/share/ :
sudo tar xjf gcc-arm-none-eabi-your-version.bz2 -C /usr/share/
Create links so that binaries are accessible system-wide:
sudo ln -s /usr/share/gcc-arm-none-eab/bin/arm-none-eabi-gcc /usr/bin/arm-none-eabi-gcc
sudo ln -s /usr/share/gcc-arm-none-eabi/bin/arm-none-eabi-g++ /usr/bin/arm-none-eabi-g++
sudo ln -s /usr/share/gcc-arm-none-eabi/bin/arm-none-eabi-gdb /usr/bin/arm-none-eabi-gdb
sudo ln -s /usr/share/gcc-arm-none-eabi/bin/arm-none-eabi-size /usr/bin/arm-none-eabi-size
установить зависимости. «Полные инструкции по установке» ARM, перечисленные в файле readme.txt, не сообщают вам, какие существуют зависимости - вы должны выяснить это методом проб и ошибок. В моей системе мне приходилось вручную создавать символические ссылки, чтобы заставить ее работать:
sudo apt install libncurses-dev
sudo ln -s /usr/lib/x86_64-linux-gnu/libncurses.so.6 /usr/lib/x86_64-linux-gnu/libncurses.so.5
sudo ln -s /usr/lib/x86_64-linux-gnu/libtinfo.so.6 /usr/lib/x86_64-linux-gnu/libtinfo.so.5
Проверьте на работоспособность:
arm-none-eabi-gcc --version
arm-none-eabi-g++ --version
arm-none-eabi-gdb --version
arm-none-eabi-size --version

Настраиваем бесплатную сборку для написания и отладки программ под микроконтроллеры на основе ядра ARM под Windows 10

Данный материал призван помочь начинающим быстро и без проблем настроить полностью бесплатную инфраструктуру для работы с микроконтроллерами, а так же понять, каким образом происходит сборка итогового бинарного файла. Производитель и модель микроконтроллера на этапе настройки этой инфраструктуры неважны. Главное, чтобы в его основе лежало ядро ARM.

ARM toolchain for Windows

Это руководство основано на текущей версии Windows - Windows 10, но, за исключением некоторых визуальных аспектов, шаги, необходимые для подготовки набора инструментов, должны быть идентичны для всех последних версий этой системы. В этом тексте я предполагаю, что вы используете 64-битную версию системы. Если это не так, вам придется адаптировать шаги к вашей настройке. По большей части статьи требуемые изменения должны быть минимальными, однако в некоторых случаях могут быть более сложными. Обратите внимание, что шаги, представленные в этом руководстве, не являются единственно правильным подходом. Просто они оказались простыми и рабочими, требующими минимального количества легко воспроизводимых шагов. Если вы опытный пользователь и знаете, что делаете, то рассматривайте эту статью как простое руководство и описание требований.

Eclipse IDE for Embedded C/C++ Developers

IDE для разработчиков встроенных C / C ++. Он включает в себя подключаемые модули управляемой кросс-сборки (Arm и RISC-V) и подключаемые модули отладки (SEGGER J-Link, OpenOCD, pyocd и QEMU), а также ряд шаблонов для создания готовых к запуску проектов

Creating and configuring a project in Eclipse
Eclipse debugging setup for ARM microcontrollers