Программно-аппаратные средства разработки и отладки приложений для микроконтроллеров серии 1886

№ 7’2008
PDF версия
В статье приводится обзор новых программных и аппаратных средств разработки и отладки приложений для микроконтроллеров специального назначения серии 1886, а также основные возможности новой интегрированной среды разработки IDE1886. Отображены основные аспекты работы с аппаратными эмуляторами и отладки приложений непосредственно на микросхемах в составе аппаратуры.

Российская компания ЗАО «ПКК МИЛАНДР», специализирующаяся на разработке электронной элементной базы для военной техники, в настоящее время предлагает широкий спектр серийно выпускаемых цифро–аналоговых микросхем с приемкой «5», таких как схемы памяти, приемопередатчики различных интерфейсов, регуляторы напряжения, синтезаторы частот. Одним из основных направлений в деятельности компании является разработка и развитие серийно выпускаемых 8–разрядных микроконтроллеров серии 1886. Основные технические характеристики микроконтроллеров приведены в таблице.

Таблица. Основные технические характеристики микроконтроллеров серии 1886
Параметр 1886ВЕ1 1886ВЕ2 1886ВЕ3 1886ВЕ4 1886ВЕ5 1886ВЕ6 1886ВЕ7
Ядро RISC 8 бит RISC 8 бит RISC 8 бит RISC 8 бит RISC 8 бит RISC 8 бит RISC 8 бит
Умножение аппаратное ⁄8×8 8×8 8×8 8×8 8×8 8×8 8×8
Тактовая частота/
производительность
33 МГц/8 MIPS 33 МГц/8 MIPS 33 МГц/8 MIPS 33 МГц/8 MIPS 40 МГц/10 MIPS 40 МГц/10 MIPS 40 МГц/10 MIPS
Питание ядра,
В
4,5–5,5 4,5–5,5 4,5–5,5 4,5–5,5 3,0–5,5 3,0–5,5 3,0–5,5
Питание портов,
В
— — 3,0–5,5 3,0–5,5 — — —
Память программ Mask ROM 32К×16 Flash 32К×16
Mask ROM 256×16
Flash 32К×16
Mask ROM 256×16
Flash 32К×16
Mask ROM 256×16
EEPROM 4К×16
Mask ROM 2K×16
EEPROM 4К×16
Mask ROM 2K×16
EEPROM 2К×16
Mask ROM 2K×16
ОЗУ 902 902 902 902 902 902 128
Память данных — — EEPROM 256×8 EEPROM 256×8 EEPROM 256×8 EEPROM 256×8 EEPROM 256×8
Таймеры 4 4 1 1 3 3 1
Схема захвата 4 4 — — 2 2 —
ШИМ 3 3 — — 2 2 —
АЦП 12 каналов/
10 разрядов
12 каналов/
10 разрядов
— — 8 каналов/
10 разрядов
8 каналов/
12 разрядов
—
ЦАП — — — — — 12 разрядов —
Компаратор — — — — — 1 —
USART 2 2 1 1 1+LIN 1+LIN 1+LIN
SPI 1 1 — 1 — 1 —
I2C 1 1 — — — — —
USB — — 2 точки 4 точки — — —
CAN — — — — 6 буферов RX/TX — —
Спец. возможности — — Блок поддержки
ГОСТ 28147–89
— — — —
Встроенный
регулятор напряжения
— — На 3,3 В до 40 мА На 3,3 В до 40 мА — — На 5 В до 20 мА
Диапазон рабочих
температур, oС
–60…85 –60…85 –60…85 –60…85 –60…125 –60…125 –60…125
Тип корпуса Н18–64 Н18–64 Н16–48 Н16–48 Н14–42 Н14–42 Не определен
Статус Серийные поставки Серийные поставки Серийные поставки Серийные поставки Образцы В разработке В разработке

Серьезное внимание компания уделяет разработке программно–аппаратных средств отладки приложений для микроконтроллеров. В настоящее время уже разработаны аппаратные эмуляторы микроконтроллеров, демонстрационные отладочные платы, среда разработки и отладки программ Debug1886, а также утилита программирования внутренней памяти программ микросхем.

Рис. 1. Аппаратные эмуляторы: а) 1886ВЕ2; б) 1886ВЕ5
Рис. 1. Аппаратные эмуляторы: а) 1886ВЕ2; б) 1886ВЕ5

Аппаратные эмуляторы выполнены на базе ПЛИС, где реализована цифровая часть микроконтроллера (рис. 1), с помощью дополнительной мезонинной платы реализуется аналоговое окружение микроконтроллера. Для отладки приложений на аппаратном эмуляторе в схему микроконтроллера дополнительно интегрирован отладочный модуль, который расположен между процессорным ядром и памятью программ таким образом, чтобы «перехватывать» любое обращение в память программ (рис. 2).

Рис. 2. Отладка приложений на аппаратном эмуляторе
Рис. 2. Отладка приложений на аппаратном эмуляторе

В пошаговом режиме отладки перехватываются все обращения. Адреса обращений передаются в ПК, где в соответствии с кодом программы обратно в аппаратный эмулятор возвращается соответствующий машинный код операции. Кроме того, эмулятор может работать и в режиме реального времени. В этом случае код программы полностью загружается в память программ, модуль отладчика перехватывает только обращения по заранее заданным адресам остановки (breakpoints). Для того чтобы отладчик мог отобразить состояние внутренних регистров и ОЗУ, после перехвата он выполняет небольшую программу по сохранению контекста микроконтроллера, выгрузке необходимой информации и восстановлению контекста для дальнейшего выполнения программы. Этот процесс скрыт от пользователя.

Кроме аппаратных эмуляторов для каждого микроконтроллера разработаны демонстрационно–отладочные наборы (рис. 3).

Рис. 3. Демонстрационно отладочные платы: а) 1886ВЕ2; б) 1886ВЕ3
Рис. 3. Демонстрационно отладочные платы: а) 1886ВЕ2; б) 1886ВЕ3

Набор содержит демонстрационно–отладочную плату с контактирующим устройством для установки микроконтроллера, программатор, необходимые источники питания и диск с программным обеспечением, включающим исходные коды нескольких демонстрационных программ. На плате в зависимости от типа микроконтроллера реализованы дополнительные элементы, например интерфейсы RS–232, светодиодные индикаторы, клавиатуры и монтажное поле, где разработчик может реализовать свою часть схемы.

Начиная с микроконтроллеров 1886ВЕ5 в схему процессорного ядра введен специальный блок внутрисхемной отладки, позволяющий проводить отладку приложений непосредственно на микроконтроллере в составе разработанной аппаратуры (рис. 4). В этом режиме перехват хода выполнения программы производится непосредственно самим ядром микроконтроллера при достижении счетчиком команд заранее заданного адреса.

Рис. 4. Отладка приложений на микросхеме в составе аппаратуры
Рис. 4. Отладка приложений на микросхеме в составе аппаратуры

После этого генерируется прерывание, которое передает управление подпрограмме отладки, передающей отладчику всю необходимую информацию о состоянии микроконтроллера. После чего задается следующий адрес перехвата и управление возвращается основной программе. Обмен информацией с отладчиком может осуществляться через любой интерфейс микроконтроллера, в качестве основного в среде разработки предлагается интерфейс стандартного программатора. Программа может выполняться как в пошаговом режиме, так и в режиме реального времени с остановкой по заданному адресу.

Рис. 5. Структура интегрированной среды разработки и отладки приложений для микроконтроллеров серии 1886ВЕ
Рис. 5. Структура интегрированной среды разработки и отладки приложений для микроконтроллеров серии 1886ВЕ

В связи с новыми требованиями по разработке и отладке приложений на языке высокого уровня «С» к выпуску готовится принципиально новая интегрированная среда разработки приложений для серии 1886 (рис. 5).

Рис. 6. Вид интегрированной среды разработки и отладки приложений для микроконтроллеров серии 1886
Рис. 6. Вид интегрированной среды разработки и отладки приложений для микроконтроллеров серии 1886

К основным преимуществам следующей версии среды разработки следует отнести возможность написания и отладки программ на языке высокого уровня «С» и полностью интегрированный в одной среде процесс разработки. Среда разработки представляет собой программный пакет для работы под ОС Widows и включает следующие основные подсистемы (рис. 6):

  • Редактор — подсистема редактирования исходного кода. Редактор предназначен для создания, изменения, отображения исходного кода программ. Редактор автоматически проводит структурный разбор кода, выделяет ключевые слова, проводит форматирование и отслеживание пар скобок. Редактор позволяет работать с программным кодом, написанным на языке Си или ASM. При отладке приложений в редакторе выделяется выполняемая команда. Также в редакторе можно устанавливать точки остановки.
  • Отладчик — подсистема отладки приложений. Отладчик позволят выполнять разрабатываемую программу в пошаговом режиме с отслеживанием состояния внутренних регистров микроконтроллера.
  • Средства программирования — подсистема программирования микроконтроллеров. Позволяет проводить программирование внутренней памяти микроконтроллеров.
  • Менеджер проекта — подсистема управления процессом разработки. Менеджер отслеживает состояние всего проекта, обеспечивает связь между различными подсистемами.

Среда разработки приложений на языке Си использует сторонние компиляторы. В настоящее время возможно использование двух компиляторов:

  • HI–TECH PICC ANSI C Compiler компании HI–TECH Software;
  • компилятор российской фирмы ЗАО «Интерстрон».

Серия микроконтроллеров 1886 совместима с микроконтроллерами PIC17xxxx фирмы Microchip. Поэтому для разработки могут использоваться программные средства, предназначенные для этих схем. Выбор компилятора HI–TECH был обусловлен открытой архитектурой его конфигурационного файла, описывающего структуру и основные характеристики микроконтроллеров, что позволило добавить микроконтроллеры серии 1886 в список поддерживаемых им кристаллов. Но, наряду с этим, ведется разработка собственного компилятора. Это обусловлено областями применения самих микроконтроллеров, так как в ряде случаев могут иметь место специальные требования не только к микросхемам, но и к программному обеспечению для данного микроконтроллера, исключающие какую–либо возможность внесения недокументированных возможностей или «закладок».

Среда разработки реализована на базе проекта с открытым исходным кодом DevC++. Исходные коды этого проекта доступны в сети Интернет. На текущий момент интегрированная среда разработки приложений для микроконтроллеров 1886 проходит тестирование.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *