Метка: Banana Pi BPI-M64

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

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

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

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

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

Распиновка GPIO для Banana Pi BPI-M64

Для удобства схема GPIO и разъемов Banana Pi BPI-M64 вынесена в отдельный пост. Все схемы и datasheet доступны в репозитории GitHub Banana Pi BPI-M64. Что такое GPIO и для каких задач используется почитать пост Работа с GPIO на примере Banana Pi BPI-M64. Часть 1. Интерфейс sysfs LED и DS18B20. Datasheet на процессор AllWinner A64 репозиторий GitHub Allwinner-SoC/Allwinner A64 Интерфейсы На плате доступны интерфейсы: 40-pins совместимый с Raspberry Pi 3; MIPI DSI (Display Serial Interface); MIPI CSI Interface; UART (debug port) JST 1.25MM 6-pin разъем для подключения 3.7V литиевой батареи

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

Работа с 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 интерфейсу.

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