LabVIEW Embedded — комплексная среда разработки для ARM микроконтроллеров
Недавно National Instruments представила NI LabVIEW Embedded Module for ARM Microcontrollers расширение графической среды разработки LabVIEW, которое предназначено для программирования ARM7, ARM9 и CortexM3 микроконтроллеров. Компания ARM является ведущим разработчиком 32битных встраиваемых процессоров с сокращенным набором команд и ее доля на рынке составляет более 75%. Более 10 млн устройств на основе процессоров с ARMархитектурой отгружается каждый день. Лицензированную интеллектуальную собственность ARM используют большинство крупнейших производителей полупроводниковых компонентов, включая Analog Devices, Atmel, Luminary Micro, NXP, Freescale Semiconductor, Intel и Texas Instruments.

Преимущества микроконтроллеров
Микроконтроллеры это интегрированные микропроцессоры, которые включают память, периферийные устройства и внешние интерфейсы, так же как CPU, но смонтированы они на одном чипе. Это делает их наиболее экономически выгодным решением при проектировании встраиваемых систем и идеальным для управляющих и работающих по прерыванию приложений. Микроконтроллеры ARM применяются для решения широкого спектра задач. Они работают в различных устройствах от игровых приставок Sony PlayStation 3 до промышленных и медицинских приборов, таких как портативные стимуляторы мышц BIAC.
Новые возможности LabVIEW Embedded
Модуль построен на основе технологии LabVIEW Embedded, которая дает возможность программировать встраиваемые системы, применяя хорошо зарекомендовавший себя основной принцип LabVIEW потоковое графическое программирование. Кроме того, в распоряжении пользователя сотни функций для быстрого анализа и обработки данных, возможность работы с портами ввода/вывода и интерактивный интерфейс для отладки приложений. Возможно управлять кэшпамятью, наблюдать за ходом выполнения приложения благодаря обновлению элементов на front panel практически в реальном времени через JTAG, последовательный интерфейс или TCP/IPсоединение. Модуль для ARMмикроконтроллеров также имеет генератор Скода, который переносит на С блокдиаграммы, созданные в LabVIEW.
Управление проектом
Другой особенностью модуля LabVIEW для встраиваемых ARM микроконтроллеров является мастер проектов, который автоматизирует конфигурирование и все начальные установки, что позволяет быстро начать работу над новым проектом.
Для создания приложения для ARM достаточно создать пустой проект LabVIEW в менеджере проектов и добавить целевую платформу ARM, а затем построить спецификацию для него. Или же можно воспользоваться мастером создания проектов для ARM, который позволит полностью пройти процесс конфигурации проекта шаг за шагом. После создания проекта для ARM возможно добавлять в него отдельные элементы, такие как уже созданные виртуальные приборы, файлы библиотек .lib, внешний код на С и т. д.
После того как выбрана целевая платформа для проекта, становятся доступны только те программные модули, функции, элементы управления и индикации, которые поддерживаются данной целевой платформой. Необходимо заметить, что не все типы данных и элементы пользовательского интерфейса доступны для применения при программировании ARM. После создания ARMпроекта можно загружать и запускать программный код на целевой ARMплатформе.
Полный спектр функций для ввода/вывода сигналов
Функции ввода/вывода сигналов доступны через Elemental I/O. Каждой целевой платформе соответствует определенный набор таких элементов. Имеется возможность программно оперировать элементами ввода/вывода, конфигурировать тип сигналов и назначать элементам уникальные имена.
Модуль LabVIEW для встраиваемых ARMмикроконтроллеров предоставляет возможность работать с вводом/выводом цифровых, аналоговых и сигналов с широтноимпульсной модуляцией.
На различных целевых платформах доступно программное чтение/запись цифрового сигнала либо через физическую линию связи, либо через порт набор физических линий.
Также можно читать аналоговые сигналы, такие как напряжение, оцифровывать и оперировать полученными значениями программно. Для аналогового вывода сигналов используется встроенный ЦАП микроконтроллера. Специализированная функция аналогового вывода преобразует цифровое значение сигнала в аналоговое и выводит через соответствующий порт контроллера.
Для вывода сигналов с широтноимпульсной модуляцией необходимо задать соответствующей функции вывода длительность импульса, период и полярность сигнала.
Модуль имеет программный симулятор, что дает возможность запускать программы, которые разрабатываются для микроконтроллера на ПК без дополнительных аппаратных средств. Также можно использовать программный симулятор совместно с NI Multisim, программой моделирования и анализа электрических цепей с ориентацией на интегральные схемы (SPICE), для симуляции всей проектной схемы прохождения сигналов, что позволяет получить всеобъемлющую среду для симуляции работы встраиваемых систем.
Обработка прерываний
Очень большое значение в процессе разработки встраиваемых систем для ARM микроконтроллеров имеют прерывания. Прерывания это программные сигналы, которые генерируются различными аппаратными узлами по какомулибо событию, например нажатию клавиши. Модуль содержит менеджер прерываний, который упрощает работу с приложениями, управляемыми прерываниями. Он позволяет запускать LabVIEWкод, когда контроллер получает специфическое аппаратное прерывание. Управляет прерываниями либо отдельный виртуальный прибор, либо цикл заданной длительности (Timed Loop), который может содержать инструкции для, например, завершения приложения, если получено прерывание. Специализированный менеджер прерываний позволяет легко настраивать ожидание и регистрацию определенных для конкретной целевой платформы аппаратных прерываний.
Поддержка популярных последовательных интерфейсов
Модуль LabVIEW для встраиваемых ARMмикроконтроллеров имеет функции для работы с последовательным интерфейсом SPI и последовательной шиной данных I2C. Готовые программные функции для работы с этими протоколами позволят конфигурировать данные интерфейсы, передавать и читать через них данные.
Управление памятью
Поддерживаемые модулем LabVIEW для встраиваемых ARMмикроконтроллеров целевые платформы имеют, по крайней мере, 32 кбайт внутренней памяти на чипе. Некоторые приложения, созданные в LabVIEW Embedded, потребуют использования флэш-памяти целевой платформы. Например, тестовая плата Keil MCB2300 имеет 512 кбайт флэшпамяти, что вполне достаточно для большинства приложений. Нужно использовать менеджер управления памятью (memory mapping) для того, чтобы поместить критичный по времени исполнения код и данные во внутреннюю память.
Оценочные средства
В дополнение к программному обеспечению NI предлагает два комплекта разработки: оценочную плату Keil MCB2370 с NXP ARM7 микроконтроллером и оценочный комплект Stellaris LM3S8962 с Luminary Micro CortexM3 микроконтроллером.
Более рациональный подход к программированию
Модуль LabVIEW для встраиваемых ARMмикроконтроллеров представляет собой комплексную среду разработки, с помощью которой можно разрабатывать различные встраиваемые системы. Он позволяет программировать все компоненты микроконтроллера, в том числе аналоговый и цифровой ввод/вывод. Этот продукт позволяет адаптировать мощнейшую среду разработки LabVIEW под программирование ARMмикроконтроллеров.
«Интуитивно понятная графическая среда разработки LabVIEW является идеальной платформой для разработчиков, обладающих недостаточным опытом программирования на C/C++, которые разрабатывают приложения для ARMмикроконтроллеров, говорит Alistair Greenhill, директор ARM по производству для массового рынка. Опытным разработчикам LabVIEW предоставляет средства для более быстрого и более рационального подхода к программированию».