Подписка на новости

Опрос

Нужны ли комментарии к статьям? Комментировали бы вы?

Реклама

 

2001 №7

Интегрированная среда разработки программ микроконтроллеров фирмы Fujitsu

Гаврилюк Сергей  
Крылов Евгений  

При описании 16-разрядных Flash-микроконтроллеров семейства F2MC-16LX фирмы Fujitsu упоминался компакт-диск со средствами разработки программ для микроконтроллеров этого семейства. Данная статья посвящена описанию интегрированной среды разработки программ Softune, выполненной с учетом запросов разработчиков программ и позволяющей организовать достаточно удобный и эффективный процесс разработки программы пользователя.

При разработке программ для микроконтроллеров семейства F2MC-16LX используется уже третья версия среды разработки Softune (Softune.V3), работающая под управлением операционных систем Windows 2000/95/98/NT4.0. В стандартную конфигурацию пакета входят:

  • ANSI C-компилятор.
  • Макроассемблер.
  • Компоновщик (линкер).
  • Симулятор.
  • Эмулятор.

Кроме того, в расширенный пакет входят:

  • Модуль контроля C Checker.
  • Модуль анализа C Analyser.
  • Конфигуратор операционной системы REALOS.
  • Модуль анализа операционной системы REALOS.
  • Модуль отладки многозадачной операционной системы REALOS.

Структура интегрированной среды разработки Softune.V3 показана на рис. 1.

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

Рис. 1. Структура интегрированной среды разработки Softune.V3

Основным компонентом, содержащим всю необходимую для разработки информацию, в Softune Workbench является Проект. В Softune Workbench процесс разработки может проводиться как одним программистом, так и группой разработчиков, каждый из которых работает над своим участком программы. При совместном использовании файлов их взаимодействие обеспечивается вызываемыми средствами управления исходными кодами (Source Code Management Tool) и средствами преобразования типа файла (File Type Conversion Tools). Таким образом, каждый разработчик, участвующий в совместной разработке проекта, может сконфигурировать наиболее удобное для себя окружение и работать в привычном именно для него окружении разработки.

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

С помощью диалоговых окон установки Softune Workbench позволяет запускать и конфигурировать компилятор C, ассемблер и средства компоновки. Более того, непосредственно в Softune Workbench встроены три отладчика, используемые на различных этапах разработки. Для каждой конкретной ситуации может быть выбрано соответствующее окружение отладки.

Рис. 2. Softune Workbench

Выбор линий связи с переходниками и платами эмулятора, настройка окон отладки обеспечиваются специальным мастером установки.Отладчики обеспечивают:

  • отладку на уровне исходных кодов (C, Ассемблер или смешанная)/Исходное (по записи) представление файлов;
  • возможность установки точек прерывания кодов/данных (6 HW, 65536 SW) на каждой строке исходного кода;
  • навигационные функции: Go, Go to line, Step, Step out, Step over, Call function, Reset;
  • функции часов: автоматическое обновление (x sec), форматы Hex, Bin и др., структурирование;
  • просмотр глобальных и локальных переменных;
  • окно регистров: конфигурирование, измененный регистр окрашивается красным цветом;· окно памяти: форматирование, символьное и прямое редактирование, ASCII;
  • окно дизассемблера и встроенный ассемблер;
  • окно трассировки (различные режимы отображения), включая функцию обратной трассировки;
  • смешанные функции: повторитель стека, измерение временных промежутков, отображение векторов;
  • симулятор: активация и регистрация портов IO, симуляция прерываний;
  • средства управления: ввод команд log- и batch-файлы.

В стандартную поставку пакета Softune входит так называемый «файл информации о CPU» (CPU information file), содержащий необходимую при открытии проекта информацию о каждом микроконтроллере семейства, то есть информацию о размещении портов I/O, емкости памяти, начальных адресах и другую. Для конкретно используемого микроконтроллера такая информация может быть задана автоматически и при необходимости скорректирована.

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

Как уже отмечалось, в состав пакета входят языковые средства: ANSI C-компилятор, генерирующий посредством препроцессора и собственно компилятора исходный ассемблерный файл и обеспечивающий при установке соответствующих опций координацию с символическими отладчиками симулятора и эмулятора и оптимизацию; ассемблер, преобразующий машинные команды и псевдокоманды в объектный код; комплект компоновщика, используемый для объединения объектных модулей, в составе собственно компоновщика, библиотеки и преобразователя порядка данных в ROM.Рассмотрим подробнее средства, дополняющие Softune до расширенного пакета.

Softune C Checker представляет собой инструмент, воспринимающий написанную на языке C исходную программу, указывающий на те строки, характеристики и производительность которых могут быть улучшены, и распечатывающий диагностические сообщения, используемые при разработке программного обеспечения. Данный инструмент предоставляет информацию, позволяющую повысить эффективность разработки программ и подготовки объектных кодов. Инструмент поддерживает встроенные функции компиляторов C микроконтроллеров фирмы Fujitsu.

Softune C Checker обеспечивает выполнение следующих функций:

  • устранение ошибок кодирования на ранних этапах;
  • возможность разобраться в новых программах за короткое время;
  • возможность создания качественного кода C даже начинающим разработчикам;
  • максимальное использование опыта программирования;
  • использование с CPU Fujitsu программных ресурсов CPU других фирм;
  • понимание возможностей компиляторов C фирмы Fujitsu.

Softune C Checker проверяет коды на удобство сопровождения, расширяемость и перемещаемость, указывая на области, в которых качество и характеристики могут быть улучшены. После этого пользователь может переписать код.

Рис. 3. Встроенные отладчики

Softune C Analyzer обеспечивает отображение и распечатку структуры исходных программ, написанных на языке C, и состояния данных, используемых программой. Это может быть использовано для повышения эффективности разработки программ и кодов объектных программ, и это средство соответствует также встроенным возможностям компилятора Softune C семейства F2MC-16LX.

Softune C Analyzer разработан для следующих целей:

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

Структура и использование данных в исходной C-программе отображаются визуально. Внутренняя структура данных, дерево функционирования, использование стека и другая информация могут быть собраны и сохранены в файле.

Еще одним модулем Softune является модуль встраиваемой операционной системы реального времени REALOS с модулями конфигуратора (REALOS Configurator) и анализатора (REALOS Analyser).

Softune REALOS, разработанная в ответ на быстрый рост потребности в обработке в масштабе реального времени и работающая, в частности, на микроконтроллерах семейства F2MC-16LX (REALOS/907), является управляемой событиями многозадачной операционной системой, соответствующей требованиям спецификации µTRON 2.01, ориентированной на управление оборудованием.

Рис. 4. Функции REALOS/907
Рис. 5. Структура прикладной программы

Ядро Softune REALOS/907 системы является основой прикладной системы и выполняет функции контроля и управления. Главными функциями ядра являются: управление задачами, их синхронизацией и связью между ними, управление временными промежутками и динамически изменяемыми массивами памяти (memorypool).

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

Программы, выполняющие обычную обработку

  • Задачи. Задачи являются наименьшими исполняемыми блоками программ и программными блоками, на основе которых распределяется процесс обработки. Обработка в прикладной системе организуется через координацию работы множества задач. Поскольку Softune REALOS/ 907 является многозадачной операционной системой, то множество задач ранжируется по приоритетному признаку и процессорное время на выполнение задачи выделяется на основе приоритетов. Такое распределение называется планированием.
  • Обработчик инициирования. Первым после запуска ядра начинает работать обработчик инициирования. Данный обработчик инициирует задачи и выполняет различные задания по инициированию.
  • Обработчик прерывания. Эта процедура выполняется при генерации прерывания. Запросы прерывания от периферийных устройств принимает обработчик прерывания, который затем запрашивает обработку задачи.
  • Обработчики временных промежутков. Это обработчики, работающие циклически, и обработчики сигналов предупреждений, срабатывающие в заданный момент времени. Данные обработчики работают как составные части обработчика системной синхронизации.Программы, работающие в нестандартных ситуациях
  • Обработчики исключений. Обработчики исключений начинают работать при возникновении нестандартной ситуации в процессе выполнения задачи или работы обработчика. Обработка исключительной ситуации происходит в ряде нестандартных случаев, возникающих в процессе нормальной обработки.
Рис. 6. Последовательность выполнения задач

На рис. 6 показана структура прикладной программы, а на рис. 6 — последовательность выполнения задачПредставленная на рис. 6 диаграмма показывает случай, когда во время выполнения задачи C запрашивается обработка задач A и B и когда принимается внешний запрос прерывания (задача D).

Задачи, работающие под Softune REALOS/ 907, контролируются управляемой событиями системой планирования на основе приоритетов. Обычно ядро ранжирует задачи на основе состояния задачи и уровня ее приоритета. Затем задачи, находящиеся в состоянии READY, выполняются последовательно, начиная с задачи с наивысшим приоритетом. Если имеется несколько задач с одинаковым приоритетом, то они выполняются в той последовательности, в которой они переходили в состояние READY.

В заключение отметим, что для работы интегрированной среды Softune необходим совместимый с IBM PC/AT главный компьютер с установленной ОС Windows 2000/95/98/NT 4.0 и следующими возможностями:

  • процессор — Pentium 150 МГц или выше (рекомендуется Pentium 200 МГц или выше);
  • объем оперативной памяти 48 Мбайт или более (рекомендуется не менее 64 Мбайта;
  • не менее 50 Мбайт свободного пространства на жестком диске.

В данной статье рассматривались только те средства, которые могут быть использованы для программирования микроконтроллеров семейства F2MC-16LX. Однако на компакт-диске, который можно приобрести в Консультационно-техническом центре по микроконтроллерам (КТЦ-МК) совместно с ПО для микроконтроллеров семейства F2MC-16LX, размещены программные средства для программирования и других микроконтроллеров и микропроцессоров фирмы Fujitsu и, что не менее важно, руководства пользователей и описания как программных средств, так и руководства пользователей и описания самих микроконтроллеров. Кроме того, на компакт-диске размещено большое количество примеров и рекомендаций по применению устройств.

Другие статьи по данной теме:

Сообщить об ошибке