Микроконтроллеры с поддержкой платформы .NET Micro Framework дают возможность программистам, ранее писавшим программы только для ПК, с легкостью создавать ПО для встраиваемых приложений. Одной из компаний, активно продвигающих эту технологию, была и остается GHI Electronics. В прошлом году GHI Electronics представила новый чип G80 с поддержкой .NET Micro Framework на базе 180 МГц 32-бит ARM Cortex-M4 микроконтроллера STM32F427VG.
Рис. 1. | Микросхема G80 с поддержкой .NET Micro Framework от GHI Electronics. |
В настоящее время существует условное деление программистов на две категории. Первая категория занимается написанием ПО для ПК (десктопы, серверы, ноутбуки и т.д.). Вторая разрабатывает ПО для встраиваемых систем (микроконтроллеры, ПЛК и т.д.). Различия в самом подходе к программированию у них достаточно значительные. Если в первом случае это программирование в «чистом» виде с высоким уровнем абстракции и огромными ресурсами в виде памяти, то во втором случае это написание программ с конкретной привязкой к железу и чувствительными ограничениями в производительности и памяти.
Программисту, всю жизнь создававшему программы для ПК, сложно перейти к работе со встроенными системами. Для этого нужно изучить множество тонких моментов аппаратной реализации микроконтроллеров. Однако существует платформа .NET Micro Framework (NETMF), которая решает эту проблему.
Вначале стоит пару слов сказать о «старшем брате» NET MF, а точнее о платформе .NET Framework. Эта платформа была разработана для повышения уровня стандартизации и унификации при написании программных приложений. Она позволяет создавать программы, не привязанные к конкретной операционной системе или конкретному аппаратному обеспечению. Конечно, это приводит к увеличению затрачиваемых ресурсов, а сама платформа .NET Framework применяется только для ПК, но не для микроконтроллеров.
Чтобы платформа эффективно работала на микроконтроллерах, из .NET Framework пришлось выбросить все «лишнее» и добавить все «необходимое». Под «необходимым» понимаются аппаратные библиотеки, например, для работы с входами/ выходами. Так появилась NETMF.
При работе с NETMF тонкости аппаратной часть оказываются скрытыми от программиста. Он использует достаточно абстрактные библиотеки, а их низкоуровневую реализацию берет на себя производитель чипа.
Использование .NET Micro Framework дает целый ряд преимуществ:
- все ПО как для ПК, так и для микроконтроллеров, пишется в одной среде Microsoft Visual Studio IDE;
- не требуется разбираться в тонкостях аппаратной реализации;
- .NET Micro Framework – открытое и бесплатное программное обеспечение;
- один и тот же код будет запускаться на разных микроконтроллерах без изменений;
- полная поддержка режимов отладки (точки остановки, пошаговое выполнение и т.д.);
- надежность, подтвержденная множеством успешно реализованных проектов;
- поддержка основных популярных интерфейсов (SPI, UART, I2C и т.д.);
- любой программист, работающий с .NET, легко справится с программированием в NETMF.
Одним из верных сторонников NETMF с самого момента ее появления в 2009 году стала компания GHI Electronics. По призванию менеджмента Microsoft, GHI Electronics не только способствовала распространению NETMF, но и вложила множество сил в ее развитие и улучшение. Не удивительно, что эта компания занимает лидирующие позиции в данном направлении. Доказательство этого – новый чип G80 с поддержкой .NET Micro Framework на базе 180 МГц 32-бит ARM Cortex-M4 микроконтроллера STM32F427VG.
G80 – это комбинация мощного микроконтроллера и программной платформы .NET Micro Framework.
В свое распоряжение пользователь получает следующее аппаратное обеспечение:
- мощное микропроцессорное ядро 180 МГц 32-бит ARM Cortex-M4 с поддержкой операций с числами с плавающей запятой;
- относительно большой объем памяти: 256 Кбайт Flash, 156 Кбайт ОЗУ;
- развитую периферию: порты ввода/ вывода, каналы ШИМ, ЦАП, АЦП;
- популярные коммуникационные интерфейсы: UART, SPI, I2C, Ethernet (TCP/IP, PPP), CAN, 1-Wire, USB Host/ client.
С точки зрения программирования, .NET Micro Framework, реализованная в чипе G80, имеет целый ряд достоинств:
- доступность различных форм представления данных: массивы, классы, коллекции и т.д.;
- поддержка потоков, событий, делегатов, таймеров, прерываний;
- поддержка файловых систем и криптографии;
- управление динамическим потреблением мощности;
- поддержка дисплеев и файлов Bitmap, GIF, JPEG, WPF, шрифтов, сенсорных приложений и распознавания жестов;
- доступность аппаратных функций: аналоговые входы/ выходы, цифровые входы/ выходы, аппаратные прерывания и т.д.;
- поддержка коммуникационных интерфейсов: I2C, Interrupts, OneWire, PWM, SPI, UART(Serial Port);
- поддержка сетевых протоколов: DHCP, DNS, HTTP, TCP, UDP и т.д.;
- и многое другое.
Таким образом, новая микросхема G80 дает пользователю множество преимуществ (Рис. 2): максимальную скорость разработки, минимизацию затрат, высокую надежность кода, простоту удовлетворения нужд конечных потребителей.
Рис. 2. | Преимущества использования G80 и .NET Micro Framework. |
Не сложно привести примеры конкретных целевых приложений для G80: торговые автоматы, терминалы самообслуживания, измерительные приборы, сетевые датчики, центральные блоки систем сигнализации, промышленные блоки и модули и т. д.
Чтобы максимально ускорить знакомство с G80, следует воспользоваться отладочным набором G80 Development Board (Рис. 3).
Рис. 3. | Отладочная плата G80 Development Board. |
G80 Development Board представляет из себя плату размерами 152.4 × 104.1 × 19.3 мм, главными особенностями которой являются чип G80 и 1.8'' цветной SPI-дисплей. Кроме того, к услугам пользователя предлагаются: колодка для подключения цифровых и аналоговых входов/выходов, широкий выбор коммуникационных интерфейсов (UART, SPI, I2C, Ethernet (TCP/IP, PPP), CAN, 1-Wire, USB Host/client), слот для SD-карты памяти.
Характеристики микросхем G80SC-SM-501:
- Процессор: STM32F427VG, 180 МГц, 32-бит ARM Cortex-M4;
- Платформа: .Net Micro Framework;
- Доступная память Flash: 256 Кбайт;
- Доступная память ОЗУ: 156 Кбайт;
- Число портов ввода/вывода: 78;
- Число портов ШИМ: 26;
- Число аналоговых входов: 16;
- Число аналоговых выходов: 2;
- Коммуникационные интерфейсы: 4×UART, 2×SPI, I2C, Ethernet (TCP/IP, PPP), 2×CAN, 1-Wire, USB Host/client;
- Отладка: USB Client;
- Встроенный графический контроллер: есть (работа по SPI);
- Поддерживаемые форматы изображений: BMP, GIF, JPG;
- Поддержка карт памяти: есть;
- Файловая система: FAT16/FAT32;
- Диапазон рабочих температур: -40…+85 °C;
- Габаритные размеры: 16.2 × 16.2 × 1.6 мм (LQFP100).
Характеристики отладочной платы G80 Development Board Part (наименование # G80DB-SM-483):
- Процессор: G80;
- Число портов ввода/вывода: 42;
- Число портов ШИМ: 186;
- Число аналоговых входов: 16;
- Число аналоговых выходов: 2;
- Коммуникационные интерфейсы: 4×UART, 2×SPI, I2C, Ethernet (TCP/IP, PPP), 2×CAN, 1-Wire, USB Host / client;
- Отладка: USB Client;
- Дисплей: 1.8’’ цветной SPI-дисплей;
- Слот для SDкарт: есть;
- Диапазон рабочих температур: -40…+85 °C;
- Габаритные размеры: 152.4 × 104.1 × 19.3 мм;
- Масса: 96 г.
О компании
GHI Electronics – американская компания, основанная в 2003 году. Один из основных партнеров компании Microsoft по продвижению технологий .NET Micro Framework и .NET Gadgeteer. В настоящее время GHI Electronics представляет свою продукцию в четырех основных сегментах: микросхемы для .NET Micro Framework, модули для .NET Gadgeteer, микросхемы памяти с поддержкой файловых систем, модули Raspberry Pi.
Посмотреть подробные характеристики микросхем памяти от компании GHI Electronics