Метка: .NET5

.NET IoT. Часть 1. Разбираемся с ШИМ (PWM — Pulse Width Modulation)

В Linux с ШИМ (PWM)  уже работали в публикации LED, ШИМ (PWM), КНОПКА. Управление PWM осуществлялось через виртуальную файловую систему sysfs. Далее, в публикации Работа с GPIO в Linux. Часть 7. Управление подсветкой (backlight) экрана используя ШИМ (PWM) использовали устройство в Linux pwm-backlight, которое создавало интерфейс для управления подсветкой по пути . Теперь будем управлять PWM из .NET кода, язык программирования C#. Среда .NET работает с PWM посредством обертки над файловой системой sysfs, поэтому для продолжения чтения желательно ознакомится с материалом публикации  LED, ШИМ (PWM), КНОПКА.

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

Управляем контактами GPIO из C# .NET 5 в Linux на одноплатном компьютере Banana Pi M64 (ARM64) и Cubietruck (ARM32)

Когда заходит речь про программирование на C# .NET для одноплатных компьютеров, то разговоры крутятся только в основном вокруг Raspberry Pi на Windows IoT. А как же Banana/Orange/Rock/Nano Pi, Odroid, Pine64 и другие китайские одноплатные компьютеры работающие на Linux? Так давайте это исправим, установим .NET 5 на Banana Pi BPI-M64 (ARM64) и Cubietruck (ARM32), и будем управлять контактами GPIO из C# в Linux. В первой части серии постов, подключим светодиод и кнопку для отработки прерываний и рассмотрим библиотеку Libgpiod (спойлер, библиотеку так же можно использовать в C++, Python) для доступа к контактам GPIO.

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

Удаленная отладка приложения на .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), и Banana Pi BPI-M64(ARM64), работающие на Armbian.

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

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

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

Что нового в .NET 5.0

10 ноября 2020 вышел в долгожданный релиз фреймворка .NET 5, который является развитием .NET Core в долгой эволюции фреймворка .NET. .NET 5.0 — это первый релиз на пути к унификации платформы .NET, позволяющей более плавно мигрировать с .NET Framework. Что мы получили с выходом .NET 5? В первую очередь это объединение различных фреймворков построенных на .NET — теперь нет Core, Mono, Xamarin – а есть единый .net5 target. Фактически, .net5 target пришел на замену netcoreapp и netstandard. Дополнительно можно выбрать платформу операционной системы, например: net5.0-android, net5.0-ios, или net5.0-windows (ссылка). Фреймворк стал действительно кроссплатформенным. В нем есть базовый набор классов и зависимые от конкретной операционной системы дополнения. В частности, для Windows есть поддержка привычного WinForms, который был выпущен и проверен ранее в .NET Core 3.1.

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