Метка: Armbian

Удаленная отладка приложения на .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 для 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. Никакой эмуляции платформ, только реальное железо.

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

Отладочная плата Cubietruck

Команда Cubieteam, одни из первых начали делать одноплатные мини-компьютеры на процессорах компании AllWinner Tech. Первый open-source-hardware продукт команда разработала еще в августе 2012 года. Cubieteam — небольшая команда, с несколькими молодыми людьми, у которых нет опыта ведения бизнеса, умения управления компанией, но очень любит современные технологии. Команда Cubieteam объедена общей мечтой: «Создание дешевого мини-компьютера и обмен технологиями с гиками со всего мира». Для нас было большой неожиданностью, когда мы получили более чем 90 000 $ для начала производства Cubieboard. Эти деньги мы получили от энтузиастов, друзей, и желающих получить заветную плату, путем предоплаты. За прошлый год множество людей связывалось с…

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

Управление режимами работы процессора ARM Allwinner A64 с помощью подсистемы CPUfreq

Одна из самых отличительных характеристик процессоров на архитектуре ARM от x86, является высокая энергоэффективность. Это достигается путем изменение тактовый частоты работы ядер в зависимости от вычислительной нагрузки системы. Если система находится в режиме ожидания, то частота ядер может снижаться до минимальных значений, а то и вовсе, ОС переведет ядро в режим сна. Чем ниже тактовая частота, тем медленнее работает устройство и тем меньше энергии оно потребляет (и наоборот). Подаваемое напряжение на ядра(ядро) ARM будет регулироваться в зависимости от тактовой частоты, эти режимы работы записаны в ядро ОС или находятся в дереве устройств Linux.  Для энергоэффективной работы недостаточно простого набора соотношений…

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

Работа с 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.

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