Метка: .NET

Паттерн внедрение зависимостей в .NET nanoFramework для микроконтроллеров

Сегодня сломаем привычный мир инженеров и разработчиков встраиваемых систем на микроконтроллерах. В .NET существует замечательный паттерн программирования, как внедрение зависимостей (Dependency injection, DI). Суть паттерна заключается в предоставление механизма, который позволяет сделать взаимодействующие в приложение объекты слабосвязанными. Эти объекты будут связаны между собой через абстракции, например, через интерфейсы, что делает всю систему более гибкой, более адаптируемой и расширяемой. Но когда ведется разработка для микроконтроллеров, все зависимости обычно жестко завязаны на используемых устройствах, и замена датчика иногда приводит к существенному переписыванию программного кода. Напишем приложение на .NET nanoFramework для микроконтроллера ESP32, используя паттерн DI с возможностью легкой замены датчиков и LCD экрана.

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

Ультра скорость для C# кода, запуск .NET на FPGA процессоре с HASTLAYER

У многих FPGA или ПЛИС, ассоциируется с низкоуровневым программированием на языках VHDL, Verilog, или OpenCL. Платформа .NET уже давно захватила нишу микроконтроллеров, проект nanoFramework. Последние новости развития nanoFramework только доказывают твердость намерений платформы .NET освоить работу и на «железе». Казалось бы, пал последний бастион, где не было платформы .NET. Но это был далеко не последний рубеж. Как вам возможность писать код на C#, вместо хардкорного VHDL или Verilog, с последующей загрузки .NET сборок на FPGA процессоры Xilinx для непосредственного исполнения? Открытый проект Hastlayer преобразует сборки .NET в низкоуровневый код для FPGA процессоров, обеспечивая максимальный параллелизм и низкое энергопотребление.

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

Что нового в .NET nanoFramework? Подключаем LCD экран, сканируем Wi-Fi сети

В этом году платформа .NET nanoFramework для микроконтроллеров отметила юбилей. За 5 лет платформа превратилась из малоизвестного проекта в успешное коммерческое open-source решение. К инструментам разработчика добавили Visual Studio Code, теперь в Linux также можно программировать на C#, как и в Windows. Были переработаны nuget-пакеты, появилась коммерческая поддержка, обновлена документация. В практической части подключим OLED дисплей на контроллере SSD1306, доработаем драйвер под новую модификацию дисплея и отправим код в upstream, напишем сканер Wi-Fi сетей.

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

Запускаем .NET nanoFramework на Raspberry Pi Pico

Платформа .NET nanoFramework позволяет разрабатывать приложения на C# для различных микроконтроллеров. В предыдущей публикации работали с ESP32 и STM32. Одна из замечательных особенностей .NET nanoFramework заключается в возможности запускать среду исполнения поверх интерфейса POSIX в Win32 для Unit-тестирования. Это означает быструю возможность переноса среды nanoFramework Runtime на любую операционную систему поддерживаемую POSIX стандартом. Именно таким образом, в качестве эксперимента, .NET nanoFramework был перенесен на микроконтроллер Raspberry Pi Pico, для запуска поверх операционной системы реального времени (RTOS) Apache NuttX. Как это было реализовано прошу под кат.

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

500 уникальных загрузок расширения .NET FastIoT

Сегодня, 28 июля 2022 число уникальных загрузок расширения .NET FastIoT достигло 500. Расширение настраивает одноплатный компьютер, работающий под Linux, для запуска .NET приложений, и конфигурирует проекты *.csproj для удаленной отладки по ssh-туннелю. Первая публичная работающая сборка v0.1.4 была опубликована 29 декабря 2021. Практически 8 месяцев потребовалось для достижения в 500 уникальных загрузок.

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

Простая разработка IoT приложений на C# для Raspberry Pi и других одноплатников, на Linux

Многие привыкли легко и просто программировать микроконтроллеры на платформе Arduino или nanoFramework (используется C#). Но как обстоит с разработкой IoT приложений на C# .NET для одноплатных компьютеров под Linux? В ответ услышите что нужно все устанавливать из командной строки, да и еще хорошо разбираться в Linux, там не так просто как с Arduino. Для настройки удаленной отладки необходимо выполнить множество различных действий, вручную настроить конфигурацию запуска, генерировать ключи доступа для пользователя, от имени которого будет запускать отладка, и т. д. Но теперь, благодаря расширению .NET FastIoT для Visual Studio Code, это не требуется делать. Черновую работу по установке необходимых пакетов и конфигурированию проекта для удаленной отладки сделает за вас расширение. Теперь вы можете полностью сфокусироваться на своем коде, не отвлекаясь на лишние задачи.

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

Анонс. Расширение .NET FastIoT для простой разработки приложений на C# .NET под одноплатные компьютеры на Linux

Как программировать микроконтроллеры на платформе Arduino или nanoFramework (используется C#) многие знают. Но разработка IoT приложений на C# .NET для одноплатных компьютеров под Linux несколько сложнее. Необходимо установить платформу .NET, отладчик, и выполнить множество других задач. Но теперь, благодаря расширению .NET FastIoT для Visual Studio Code, эти задачи не требуется выполнять вручную.

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