Главная » Разработка встраиваемых систем

Удаленная отладка приложения на .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.

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

Работа с GPIO на примере Banana Pi BPI-M64. Часть 2. Device Tree overlays

Дерево устройств (Device Tree, DT) — это структура данных в системе Linux, состоящая из именованных узлов и свойств, описывающих оборудование, которое невозможно обнаружить путем опроса оборудования. Дерево должно включать имя базового процессора, конфигурацию его памяти и любые периферийные устройства (внутренние и внешние). DT не используется для описания программного обеспечения, хотя перечисление аппаратных модулей вызывает загрузку модулей драйверов. Пост раскрывает принцип формирования DT на примере отладочной платы Banana Pi BPI-M64, по итогу Вы сможете самостоятельно конфигурировать периферийные устройства GPIO, включая другие платы, например Raspberry Pi.

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

Работа с GPIO на примере Banana Pi BPI-M64. Часть 1. Интерфейс sysfs LED и DS18B20

Начиная с версии ядра 2.6.26, в Linux появился стандартный интерфейс для работы с контактами GPIO(general-purpose input/output — интерфейс ввода/вывода общего назначения) через виртуальную файловую систему sysfs. Работа с GPIO проходит через каталог /sys/class/gpio путём обращения к файлам-устройствам. В публикации приводится пример включение  и выключение светодиода, и получение значения температуры от датчика DS18B20 по 1-Wire интерфейсу.

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

Использование библиотеки WiringPi [BPI-WiringPi2] на Banana Pi BPI-M64

WiringPi – это библиотека для доступа к GPIO-контактам отладочной платы, изначально разрабатывалась для чипа BCM2835, используемого в Raspberry Pi. Написана на языке C, выпущена под лицензией GNU LGPLv3 и предназначена для использования в C, C++ и RTB (BASIC), а также в других языках (но для этого нужны специальные функции-обертки). Библиотека WiringPi создавалась с прицелом на схожесть с языком Wiring, который используется в Arduino. WiringPi была портирована на другие платформы, однако автор оригинальной WiringPi поддержкой этих версий не занимается. В библиотеке WiringPi доступны протоколы и интерфейсы: цифровой вход/выход, PWM (ШИМ), I2C, SPI, UART.

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