Современный этап развития микроконтроллеров связан с появлением широкого круга задач, требующих увеличения разрядности процессорного ядра до 16/32 разрядов и перехода на языки программирования высокого уровня. Увеличивается число прикладных областей, задачи которых решаются с помощью операционных систем реального времени, функционирующих на микроконтроллерных платформах. Высокопроизводительные 32-разрядные микроконтроллеры с архитектурой ARM7 и ARM9, Cortex-МЗ и другие стерли границу между ранее обособленными областями встраиваемых систем - компьютерной, на основе 32-разрядных процессоров с программированием на языках высокого уровня, и контроллерной, на основе 8-разрядных микроконтроллеров с программированием на ассемблере. Но и старые архитектуры не исчезли. Такие фирмы как Atmel, Analog Devices, Winbond, Silicon Laboratories и ряд других использовали новые возможности микроэлектроники для выпуска на основе ядра 8051 микроконтроллеров с расширенными наборами периферийных модулей. Благодаря этому архитектура 8051, которой многие прочили забвение, получила второе дыхание и стала стандартом "де-факто".
В целом можно заключить, что современный специалист в области встраиваемых систем должен владеть практическими навыками проектирования на основе широкой гаммы 8-, 16- и 32-разрядных микроконтроллеров с применением нескольких языков программирования. Задача обучения, повышения квалификации и переподготовки в настоящее время важна не только для образовательных учреждений, но и для индивидуальных специалистов, которые нуждаются в периодическом тренинге. В связи с этим весьма актуальными выглядят универсальные учебные средства по микроконтроллерам, наращиваемые по возможностям и позволяющие освоить широкую номенклатуру элементной базы и программных средств.
Компания MikroElektronika (Сербия) имеет значительный опыт разработки и производства аппаратных и программных учебных средств для микроконтроллеров. Ее изделия отличаются хорошей методической проработкой комплекса задач, связанных с передачей практического опыта проектирования.
Комплект аппаратных средств от фирмы MikroElektronika включает универсальный лабораторный стенд на основе платы UNI-DS3 (рис. 1) и набора микроконтроллерных плат специализации, а также платы расширения. В настоящее время лабораторный стенд поддерживает 8-разрядные микроконтроллеры 8051 и AVR (Atmel), PICmicro (Microchip), 16-разрядные микроконтроллеры dsPIC, 32-разрядные ARM7 микроконтроллеры NXP и "системы на кристалле" PSoC фирмы Cypress Semiconductor.
Аппаратные средства лабораторного стенда представляют собой конструктор из набора функциональных модулей. На универсальной плате установлены функциональные модули ввода/вывода и стабилизатор напряжения питания. На рис. 1 видно, что продуманное расположение функциональных модулей на плате подкреплено множеством поясняющих надписей и знаков, так что процесс работы становится во многом интуитивно понятен до чтения документации. Кроме фиксированного набора модулей ввода/вывода на плате стенда, производитель выпускает функциональные модули в виде небольших плат расширения. Все линии портов микроконтроллера на универсальной плате выведены на девять штыревых разъемов 2x5 выводов, к которым возможно подключение внешних плат.
Рис. 1. Универсальный лабораторный стенд на основе платы UNI-DS3
На универсальной плате в качестве устройств ввода могут использоваться кнопки, подключенные ко всем линиям портов микроконтроллеров, 12-разрядный АЦП, часы реального времени, считыватель MMC/SD-карт. Для отображения данных на плате имеются светодиоды на всех линиях портов микроконтроллера, а также предусмотрены посадочные места со штыревыми разъемами для установки алфавитно-цифрового и графического дисплеев. Вывод данных может производиться на 12-разрядный ЦАП. Для двунаправленного обмена установлены драйверы и разъемы RS-232, RS-485, CAN и Ethernet.
Универсальный лабораторный стенд UNI-DS3 имеет развитую систему коммутации, которая позволяет выборочно подключать к линиям портов микроконтроллера устройства ввода/вывода и формировать аппаратную конфигурацию микроконтроллерной системы в соответствии с требованиями проекта.
На плате универсального стенда имеется разъем, в который может быть установлена одна из плат специализации. На этих платах находятся целевые микроконтроллеры и схемы их ближайшего обрамления, включая интегрированные программаторы. На платах специализации для микроконтроллеров PIC, dsPIC программаторы совмещают функции внутрисхемных отладчиков mikrolCD. В настоящее время набор плат специализации следующий:
- UNI-DS3 64 PIN AVR CARD - для изучения микроконтроллеров семейства AVR фирмы Atmel, одного из самых распространенных в практике отечественного проектирования. На плате (рис. 2) установлен микроконтроллер ATmega128, имеющий 8-разрядное ядро с Fmax=16 МГц, 128 Кбайт флэш-памяти программ, 4 Кбайт ОЗУ 4 Кбайт EEPROM, 8 каналов 10-разрядного АЦП.
- UNI-DS3 40 PIN PIC CARD. Плата предназначена для изучения новых 8-разрядных микроконтроллеров семейства PIC. На ней установлен микроконтроллер PIC18F4520, разработанный на основе технологии nanoWatt. Напряжение питания может составлять от 2,0 до 5,5В.
- UNI-DS3 80 PIN PIC CARD. Плата предназначена для изучения 8-разрядных микроконтроллеров семейства PIC. На ней установлен микроконтроллер PIC18F8520 со встроенным умножителем 8x8. Линии портов снабжены драйверами, обеспечивающими ток до 25 мА. Микроконтроллер способен адресовать до 2 Мбайт внешней памяти.
- UNI-DS3 48 PIN PSOC CARD - позволяет изучать применение БИС типа "система на кристалле" (PSoC) фирмы Cypress Semiconductor. На плате установлена БИС CY8C27643, объединяющая на одном кристалле микроконтроллер, цифровые и аналоговые блоки, а также программируемые элементы внутренней коммутации. БИС этого типа позволяют создать индивидуальную схему для обработки смешанного набора сигналов и заменить несколько традиционных компонентов микроконтроллерных систем.
- UNI-DS3 40 PIN 8051 CARD - позволяет изучать микроконтроллеры 8051, ставшие уже классикой. На плате установлен микроконтроллер AT89S8253 фирмы Atmel. Он имеет 8-разрядное ядро, 12 Кбайт ISP флэш-памяти программ, 2 Кбайта EEPROM, три 16-разрядных счетчика/таймера, порты SPI и UART, WDT-таймер, два режима пониженного энергопотребления.
Рис. 2. Плата специализации UNI-DS3 64 PIN AVR CARD
- UNI-DS3 64 PIN ARM CARD. Плата предназначена для изучения 32-разрядных микроконтроллеров семейства ARM7. На плате установлен микроконтроллер LPC2148 фирмы NXP. Он характеризуется небольшой стоимостью при высокой производительности ядра и функциональной мощности периферийных блоков, быстрой реакцией на прерывания и низким энергопотреблением. Это позволяет рассматривать его во многих случаях в качестве варианта замены 8-разрядных микроконтроллеров.
- UNI-DS3 80 PIN DSPIC CARD. Плата предназначена для изучения 16-разрядных микроконтроллеров семейства dsPIC, имеющих особую группу команд и аппаратные ресурсы для цифровой обработки сигналов. На плате установлен микроконтроллер dsPIC 30F6014A. Процессорное ядро dsPIC работает с 24-разрядными командами, причем 3-операндные команды преобразования данных выполняются за один машинный цикл (4 периода тактовой частоты).
В соответствии с концепцией универсального стенда как конструктора, производитель выпускает более полусотни функциональных модулей ввода/вывода в виде небольших плат расширения. Одни из них уже имеются на универсальной плате, а другие позволяют расширить набор функций. Все модули могут быть присоединены к универсальной плате стенда через штыревые разъемы, на которые выведены порты микроконтроллеров.
В набор функциональных модулей, уже имеющихся на плате, входит модуль 12-разрядного ЦАП (рис.3). Он может быть подключен для увеличения количества аналоговых выходов.
На рис. 3 видно, что этот модуль, как и некоторые другие внешние модули, является настраиваемым. Конфигурация переключателей должна соответствовать типу микроконтроллера на установленной плате специализации.
Рис. 3. Плата расширения 12-разрядного ЦАП
Из функциональных модулей, отсутствующих на плате, можно обратить внимание на модули трехосевого акселерометра, инфракрасного датчика движения и цифрового потенциометра. Внешние платы акселерометра и датчика движения при подключении добавляют к набору модулей ввода группу датчиков и позволяют проводить натурные эксперименты.
Плата расширения на базе 3-осевого акселерометра выполнена на основе микросхемы ADXL330. С ее помощью возможно как измерение динамического ускорения при движении, ударах и вибрации, так и измерение наклона в статике.
Плата датчика движения включает пас-сивный инфракрасный датчик типа AMN11112, формирующий на выходе значение логической "1" при обнаружении движения объекта, излучающего энергию в инфракрасном диапазоне.
Плата цифрового потенциометра реализована на базе микросхемы МСР41010, которая обеспечивает полное активное сопротивление 10 КОм и 256 ступеней регулирования. Изучение цифрового потенциометра полезно, поскольку демонстрирует реализацию пассивного компонента электронных цепей в виде программируемой интерфейсной микросхемы.
Интересны платы МРЗ-плееров, а также плата аудиоусилителя, позволяющие добавить к стенду канал воспроизведения цифрового звука.
На сайте производителя доступны схемы всех плат расширения и их подключения к стенду, а также примеры программ обслуживания.
Разработка прикладных программ для микроконтроллеров универсального стенда может осуществляться с использованием систем программирования на языках mikroC, mikroBasic, mikroPascal от компании MikroElektronika. В настоящее время имеются следующие версии систем:
- mikroC для микроконтроллеров 8051, PIC (PIC12/ 16/18), dsPIC (dsPIC24/30/33), Sensory RSC-4x;
- mikroPascal для микроконтроллеров PIC (PIC12/ 16/18), dsPIC (dsPIC24/30/33), Atmel AVR;
- mikroBasic для микроконтроллеров Р1С(Р1С12/16/18), dsPIC (dsPIC24/30/33), Atmel AVR.
Все перечисленные системы имеют похожие оболочки (IDE - integrated development environment) с удобным многооконным интерфейсом пользователя. Вид рабочего экрана системы mikroC dsPIC приведен на рис. 4.
Каждая система включает полный набор инструментальных модулей - редактор текста, компилятор, редактор связей, библиотекарь, отладчик и программатор флэш-памяти микроконтроллера.
Компания MikroElektronika поддерживает создание прикладных программ для микроконтроллеров большим количеством функций обслуживания периферийных устройств. В набор входят функции обслуживания АЦП и ЦАП, символьных и графических дисплеев, стандартных интерфейсов (UART, SPI, I2C, CAN) и многие другие. Использование этих функций позволяет быстро продвигаться по пути приобретения практических навыков интеграции программного обеспечения и аппаратуры стенда ME-UNI-DS3. Системы программирования на языке С, разумеется, включают его стандартные функции.
После установки системы программирования в директории ProgramFilesV.Aexamples можно найти демонстрационные программы работы с периферийными устройствами, входящими в набор функциональных модулей платы ME-UNI-DS3.
Аппаратно-программный комплекс позволяет выполнять как автономную отладку разрабатываемой программы с использованием программно-логической модели, так и комплексную отладку аппаратуры и ПО в реальном времени с использованием аппаратного отладчика IDE (In-Circuit Debugger). При отладке возможны пошаговый режим выполнения команд, выполнение фрагмента программы до курсора, отладка с использованием механизма контрольных точек. Возможность наблюдения за изменением значений переменных и регистров специальных функций предоставляет окно "Watch".
Рис. 4. Среда разработки mikroC dsPIC
Создание проекта значительно ускоряют такие встроенные инструменты (Tools) как ASCII Chart (средство формирования кодов, удобное при работе с дисплеями), USART Terminal (средство визуального программирования универсального последовательного порта), Segment Display Decoder (средство формирования кодов для 7-сегментно-го индикатора). Например, инструмент Filter designer tool системы mikroC dsPIC является средством формирования исходного текста фрагмента программы, описывающего определенный в диалоговом окне тип фильтра с указанными параметрами. При работе с этим инструментом результаты проектирования представляются в виде графиков, отражающих характеристики фильтра, и в виде собственно исходного текста фрагмента программы.
В комплект поставки каждой системы программирования входят руководство пользователя интегрированной системы и описание языка программирования.
Современной тенденцией является непрерывное и быстрое обновление версий аппаратного и программного обеспечения средств отладки, в том числе и учебных. По этой причине многие производители переносят основной объем информационной поддержки своих изделий на свои корпоративные сайты. Компания MikroElektronika следует этой тенденции, на ее сайте можно ознакомиться с демонстрационными версиями систем программирования, ограниченными по размеру компилируемого кода (2 кбайта).
Статья предоставлена редакцией журнала Электроника. Другие статьи журнала "Электроника" можно прочитать на сайте журнала.
Здравствуйте! Прочел статью и заметил полезность этого набора,где я могу преобрести его ?