РадиоЛоцман - Все об электронике

Микроконтроллер G80 с поддержкой .NET Micro Framework

GHI Electronics G80

Микроконтроллеры с поддержкой платформы .NET Micro Framework дают возможность программистам, ранее писавшим программы только для ПК, с легкостью создавать ПО для встраиваемых приложений. Одной из компаний, активно продвигающих эту технологию, была и остается GHI Electronics. В прошлом году GHI Electronics представила новый чип G80 с поддержкой .NET Micro Framework на базе 180 МГц 32-бит ARM Cortex-M4 микроконтроллера STM32F427VG.

Микросхема G80 с поддержкой .NET Micro Framework от GHI Electronics 
Рис. 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): максимальную скорость разработки, минимизацию затрат, высокую надежность кода, простоту удовлетворения нужд конечных потребителей.

Преимущества использования G80 и .NET Micro Framework 
Рис. 2. Преимущества использования G80 и .NET Micro Framework.

Не сложно привести примеры конкретных целевых приложений для G80: торговые автоматы, терминалы самообслуживания, измерительные приборы, сетевые датчики, центральные блоки систем сигнализации, промышленные блоки и модули и т. д.

Чтобы максимально ускорить знакомство с G80, следует воспользоваться отладочным набором G80 Development Board (Рис. 3).

Отладочная плата G80 Development Board 
Рис. 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 Logo

GHI Electronics – американская компания, основанная в 2003 году. Один из основных партнеров компании Microsoft по продвижению технологий .NET Micro Framework и .NET Gadgeteer. В настоящее время GHI Electronics представляет свою продукцию в четырех основных сегментах: микросхемы для .NET Micro Framework, модули для .NET Gadgeteer, микросхемы памяти с поддержкой файловых систем, модули Raspberry Pi.

Посмотреть подробные характеристики микросхем памяти от компании GHI Electronics

JLCPCP: 2USD 2Layer 5PCBs, 5USD 4Layer 5PCBs

Для комментирования материалов с сайта и получения полного доступа к нашему форуму Вам необходимо зарегистрироваться.
Имя
Фрагменты обсуждения:Полный вариант обсуждения »
  • Абсолютно согласен со сказанным в первой части заметки. Различия в подходах к программированию очевидны. Более того, глубоко убеждён, что лишь embedded программирование на текущем уровне можно считать тем программированием, о котором писали в своих книгах Кнут, Ритчи, Страуструп и другие, если позволите, пророки. Также, опираясь на близкое знакомство с .NET, С++, С# для ПК убеждён, что переход к следующему уровню абстракции для встраиваемых приложений, т.е. к рассматриваемой .NETMF, приведёт к появлению громадного количества необоснованно раздутого кода. Это тот случай, когда упор делается на скорость написания ПО, а не быстродействие алгоритмов и эффективность программ на конкретном железе. За это и за автоматическую генерацию кода разработчикам, видимо, придётся платить. И там, где хватило бы STM32F2 будет стоять STM32F4. Простите за тавтологию, ведь об этом, собственно, и сказано в заметке. Всё же интересно, кто-нибудь имеет опыт использования NETMF? Не получается ли так, что вместо одного трактора, тянущего три плуга, три трактора тянут один.
  • "языки программирования" для написания программ для ПЛК созданы для электриков и КИПовцев, никакого отношения к эмбеддингу это не имеет. ну а .NET Micro Framework вообще спорное решение - скорость разработки, конечно, возрастает, но и оптимизация начинает хромать. раньше хардкорные эмбеддеры даже от чистого С нос воротили, говорили, что это для ламеров (хотя С - это, по сути, платформонезависимый ассемблер), а теперь предлагается разрабатывать ПО для встраиваемого решения на таком высокоуровневом языке. куда катится этот мир )