Главная » .NET

.NET IoT. Часть 5. Обработка прерываний (interrupt) на примере событий кнопки

Работа с кнопкой уже была продемонстрирована в публикации Управляем контактами GPIO из C# .NET 5 в Linux, но без детального рассмотрения прерываний (interrupt). Поэтому на этом моменте остановимся подробнее. Рассмотрим как работает прерывание, какие бывают триггеры срабатывания, и сделаем пример на C# используя библиотеку Libgpiod. Для примера будем использовать туже самую кнопку.

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

Программируем микроконтроллеры ESP32 и STM32 на C# (nanoFramework)

.NET nanoFramework — это бесплатная платформа с открытым исходным кодом, основанная на .NET и предназначена для малых встраиваемых устройств, микроконтроллеров. С её помощью можно разрабатывать различные устройства для Интернета вещей, носимые устройства, научные приборы, робототехнические устройства, можно создавать прототипы и даже использовать на промышленном оборудовании. В первой части мы познакомились с платформой .NET nanoFramework, её архитектурой, основными возможностями, посмотрели примеры программного кода. Теперь перейдем к практике, установим nanoFramework на микроконтроллеры серии ESP32 и STM32, напишем первый «Hello World!», поработаем с аппаратными интерфейсами, и оценим переносимость кода с «большого» .NET на платформу nanoFramework.

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

.NET IoT. Часть 4. Шина I2C, подключение датчика Bosh BME280

В публикации Работа с GPIO в Linux. Часть 5. Device Tree overlays. Шина I2C, подключение датчиков Bosh BMx познакомились с шиной I2C и подключили датчик BME280, считывали значения через Sysfs. Теперь попробуем считать значения температуры, влажности, и атмосферного давления из .NET кода.

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

.NET IoT. Часть 3. Подключение датчика температуры DS18B20

Датчика температуры DS18B20 уже подключали в Linux, значение температуры считывали, используя виртуальную файловую систему Sysfs. Теперь будем считывать температуру датчика DS18B20 из dotnet кода.

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

Простая установка .NET 6 в Armbian/Linux для ARM (Raspberry/Banana/Orange/Rock/Nano Pi)

В публикации Установка .NET 5.0 для ARM выполняли установку фреймворка .NET 5.0 для Linux, на 32-х и 64-х разрядные процессоры архитектуры ARM. Для установки необходимо было выяснить архитектуру процессора и в соответствие с этим выбрать правильный пакет, затем его установить. Для упрощения процесса установки в одно действие, Microsoft подготовила скрипт dotnet-install.sh которому достаточно в качестве параметров указать версию фреймворка и путь установки. Разбираться в разрядности процессора не требуется, все максимально просто. Поэтому в данной публикации выполним установку Runtime среды и SDK .NET платформы версии 6.0, и конечно же 5.0 версии, на Linux платформу, в том числе и на x86 устройство.

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

.NET IoT. Часть 2. Мигаем светодиодом (LED) используя библиотеку Libgpiod

Управление контактами GPIO в Linux на C# .NET IoT, уже было рассмотрено в публикации Управляем контактами GPIO из C# .NET 5 в Linux. Дабы не повторятся желательно ознакомится с выше указанной публикацией. Но для работы с GPIO в .NET IoT необходимо разобраться с нумерацией ножек процессора и иметь в наличие как минимум светодиод. Но что делать если на руках только одноплатный компьютер? В большинстве случаев на плате компьютера распаяны светодиоды, которые подключены к контроллеру GPIO (gpiochip). Таким образом, данные светодиоды доступны для управления из C# .NET IoT. В зависимости от дистрибутива, светодиоды могут быть задействованы в ОС как устройства, которые необходимо выключить в конфигурации дерева устройств Linux. На плате Banana Pi BPI-M64 размещено три светодиода красного, зеленого и синего цвета. Красный светодиод занят под функцию индикации подачи электропитания. Два остальных светодиода доступны для любых задач. Будем управлять встроенным синим светодиодом из .NET кода.

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

.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), КНОПКА.

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