Метка: ARM

Работа с GPIO в Linux. Часть 6. Библиотека Libgpiod

В 2017 году Bartosz Golaszewski начал разработку библиотеки Libgpiod и утилит для работы с GPIO. Библиотека libgpiod инкапсулирует вызовы ioctl и структуры данных за простым API в Linux, и предназначена для замены доступа к GPIO через виртуальную файловую систему sysfs. Используемый в библиотеке новый интерфейс chardev гарантирует, что все выделенные ресурсы будут освобождены после закрытия файлового дескриптора устройства, и добавляет несколько новых функций, которых нет в устаревшем интерфейсе sysfs (например, опрос событий, установка/чтение нескольких значений одновременно). В публикации будет установка библиотеки Libgpiod из исходного текста и работа с GPIO через утилиты на примере светодиода и кнопки. Практическая часть будет выполнятся…

Читать далее »

Сборка Docker контейнеров для ARM архитектуры используя Buildx

Сборка Docker контейнеров тема достаточно популярная и известная. Сборка для платформ x86 не представляет никаких проблем, все работает из коробки. Но как собрать Docker образ для ARM32 и ARM64 архитектуры? Если взять плату Banana Pi BPI-M64 с 64-разрядным ARM процессором, то на ней можно собрать образ для архитектуры ARM64, ARMv8, aarch64. Но для этого необходимо задействовать плату, и скорость сборки будет весьма низкая. Для сборки контейнеров помимо привычных инструментов, есть инструмент Buildx — позволяющий собирать образы для различных архитектур на x86 процессоре. В публикации будет детальный разбор, как собирать Docker образы для ARM процессоров и загружать их в публичный Docker…

Читать далее »

.NET nanoFramework — платформа для разработки приложений на C# для микроконтроллеров

.NET nanoFramework — это бесплатная платформа с открытым исходным кодом, основанная на .NET и предназначена для малых встраиваемых устройств, микроконтроллеров. С ее помощью можно разрабатывать различные устройства для Интернета вещей, носимые устройства, научные приборы, робототехнические устройства, можно создавать прототипы и даже использовать на промышленном оборудование. .NET nanoFramework является малой версией «большого» .NET Framework предназначенного для настольных систем. Разработка приложений ведется на языке C# в среде разработки Visual Studio. Сама платформа является исполнительной средой .NET кода, это позволяет абстрагироваться от аппаратного обеспечения и дает возможность переносить программный код с одного микроконтроллера на другой, который тоже поддерживает .NET nanoFramework. Программный код на…

Читать далее »

Установка Docker для ARM и 64-bit ARM (Armbian, Linux)

Контейнеризация приложений в Docker уже стала де-факто стандартом для систем на Linux. Многие думают что Docker технология предназначена только для серверов, больших дата-центров. Но на самом деле контейнеризация приложений для одноплатных компьютеров на ARM является отличным решением т.к. позволяет с легкостью удаленно обновлять приложение, контролировать доступные ресурсы, и обеспечивать надежность и доступность путем отката к предыдущему рабочему варианту. Публикация содержит пошаговое  руководство как установить Docker и docker-compose для одноплатных компьютеров на ARM процессоре 32-bit и 64-bit, предполагается что на компьютере установлена Armbian (Linux). В качестве платформы для установки и запуска Docker будем использовать Cubietruck (ARM32), и Banana Pi BPI-M64(ARM64), работающие…

Читать далее »

Удаленная отладка приложения на .NET 5.0 в Visual Studio Code для ARM на примере Banana Pi BPI-M64 и Cubietruck (Armbian, Linux)

Пост содержит подробное руководство как организовать удаленную отладку разрабатываемого приложения на .NET 5.0 в Visual Studio Code для устройства на ARM процессоре, на устройстве установлена Armbian (Linux). Благодаря кроссплатформенности .NET 5.0, разработанное приложение будет одинаково работать как в Windows, так и в Linux. Но все становится сложнее, если необходимо взаимодействовать с подсистемами Linux. Каждый раз компилировать в Windows и переносить исполняемые файлы ручным способом на Linux не очень удобно. Один из рабочих примеров для подобного решения является задача отладки взаимодействия приложения на C# в Linux с устройством подключенным по протоколу RS232. В качестве платформы запуска будем использовать Cubietruck (ARM32), и…

Читать далее »

Создание первого приложения на .NET 5.0 в Visual Studio Code для ARM

В этой публикации вы узнаете, как создать первое консольное приложение на .NET 5.0 в Visual Studio Code, затем его скомпилировать для различных платформ(ARM32, ARM64), с дальнейшем запуском на платах Banana Pi BPI-M64 и Cubietruck.

Читать далее »

Установка .NET 5.0 для ARM на примере Banana Pi BPI-M64 и Cubietruck (Armbian, Linux)

В конце прошлого года вышел релиз фреймворка .NET 5.0 прекрасно работающий на Linux, для 32-х и 64-х разрядных процессоров архитектуры ARM. Нужно воплощать эру прихода пост-ПК и «Вендекапец». Будем производить установку .NET 5.0 на плату Cubietruck (ARM32), и Banana Pi BPI-M64(ARM64) в ОС Armbian основанной на Linux, дистрибутив Ubuntu. Никакой эмуляции платформ, только реальное железо.

Читать далее »