Соколов Ю.П. Микроконтроллеры семейства MCS-51 (2002) (1095895), страница 11
Текст из файла (страница 11)
На этом этапеокончательно определяется тип микроконтроллера и важнейших схемобрамления (память, ПЛИС, интерфейс, АЦП, и т. п.).На этапе разработки структуры МПС окончательно определяется состав имеющихся и подлежащих разработке аппаратных модулей,протоколы обмена между модулями, типы разъемов. Поскольку МПСвстраивается в изделие, выполняется предварительная проработкаконструкции плат. В части программного обеспечения определяютсясостав и связи программных модулей, язык программирования.
Здесьже производится выбор средств проектирования и отладки.Стадия создания программы образует внутренний, часто повторяющийся цикл. Она состоит из этапов разработки исходного текста,трансляции, отладки программы на модели и коррекции исходного текста. Содержание этих этапов существенно зависит от используемыхсистемных средств.
В настоящее время ресурсы микропроцессоров имикроконтроллеров достаточны для поддержки программирования наязыках высокого уровня. Это позволяет использовать все преимущества структурного программирования, разрабатывать программное обеспечение как проект с использованием раздельно транслируемых модулей. В настоящее время самым мощным средством разработки программного обеспечения для микропроцессоров и микроконтроллеровявляются интегрированные кросс-системы программирования на языках высокого уровня типа Паскаль, Си. Например, интегрированнаясистема разработки программного обеспечения Паскаль-51 содержит всвоем составе редактор текста, компилятор с редактором связей, библиотеку стандартных функций периода выполнения и отладчик. Такиесистемы позволяют значительно сократить затраты времени на выполнение этого внутреннего цикла. Однако программы, написанные наязыках высокого уровня, имеют больший объем и более низкое быстродействие, чем аналогичные программы, написанные на языке ассемблера.
Поэтому язык ассемблера продолжает широко использоваться, особенно при ограниченных ресурсах МПС и необходимостиобеспечить выполнение контролируемых интервалов времени.На этих этапах обнаруживаются и устраняются синтаксические илогические ошибки программы. Синтаксические ошибки связаны с нарушением синтаксиса команд, директив транслятора и использованиемне определенных ранее меток и имен. Логические ошибки приводят кнеправильному функционированию программы. Они связаны с ошибками программы (указан неверный переход при ветвлении, записана не48та команда и т.д.) и ошибками алгоритма.
Содержание этих этапов приразработке программ на языке ассемблера приведено ниже.Стадия создания аппаратуры представляет другой внутреннийцикл, выполняемый параллельно с первым. Она содержит разработкуобщей принципиальной схемы, разводку топологии плат, монтаж макета и его автономную отладку.
Эти этапы можно считать завершеннымипосле того, как «оживает» системная магистраль МПС и через нееможно обратиться к памяти, устройствам ввода/вывода. Время выполнения этого этапа зависит от имеющегося набора опробованных функционально-топологических модулей и квалификации разработчика.Распространенными системами проектирования, используемыми наэтапе ввода принципиальной схемы и разработки топологии, являютсяPCAD и OrCAD (CAD – computer aided design – автоматизированноепроектирование).
Эффективность работы с ними значительно зависитот имеющегося в распоряжении разработчика объема библиотек используемых элементов.Этап совместной отладки аппаратуры и программного обеспечения в реальном масштабе времени является самым трудоемкими обязательно требует использования таких высокопроизводительныхсредств, как внутрисхемный эмулятор, эмулятор ПЗУ, логический анализатор. Выбор одного из перечисленных средств обусловлен используемым методом отладки. На этом этапе выявляются динамическиеошибки, возникающие при взаимодействии программных и аппаратныхсредств в реальном масштабе времени. Эти ошибки обусловлены различными задержками распространения сигналов по линиям системноймагистрали и взаимными помехами между линиями, возникающими приих неудачном взаимном расположении. Динамические ошибки обнаружить значительно сложнее из-за нерегулярности их появления.Для локализации динамических ошибок используются логическиеанализаторы.
Логические уровни сигналов системной магистрали илиотдельных шин и линий в режиме приема постоянно записываются впамять типа FIFO. Прекращение записи производится при появлениивыбранного события (совпадение заданного и фактического адреса наША, кодов команд на ШД или появление короткого импульса помехи). Вэто время в памяти содержится вся предшествующая данному событиюинформация. Анализируя предысторию события, записанную в памяти,можно определить и причину появления сбоя в работе МПС.
Информация на дисплее может быть представлена в графическом виде, в видедвоичного, шестнадцатеричного кода или мнемоники команд. Логические анализаторы состояний выполняют запись с тактовой частотойМПС. Для фиксации быстро протекающих процессов используютсявременные логические анализаторы, у которых тактовая частота записив память значительно превышает тактовую частоту МПС.Совместная отладка аппаратных и программных средств в реальном масштабе времени выполняется с помощью эмуляторов ПЗУ ивнутрисхемных эмуляторов под управлением инструментальной ЭВМ.49Внутрисхемный эмулятор (ВСЭ) включается между микроконтроллером(микропроцессором) и остальной частью целевой МПС.
Для этого в панельку микроконтроллера вставляется промежуточная панелька, связанная коротким кабелем с ВСЭ, в которую вставляется микроконтроллер. ВСЭ имеет доступ ко всем ресурсам целевой МПС, что позволяетуправлять ее работой, отслеживать поведение системной магистрали,памяти, устройств ввода/вывода [8,9,10].Этап завершается, когда аппаратура и программное обеспечениесовместно обеспечивают выполнение всех шагов алгоритма работысистемы. В конце этапа код программы записывается с помощью программатора в энергонезависимую память микроконтроллера и проверяется работа МПС без участия эмулятора.
На этапе отладки целесообразно использовать микроконтроллеры с репрограммируемой памятью. Отладка на этом этапе ведется в лабораторных условиях с питанием от источников, обеспечивающих максимальную защиту аппаратуры. Часть внешних источников информации может моделироваться.Этап интеграции контроллера в изделие заключается в повторении работ по совместной отладке аппаратуры и управляющей программы, но при работе в собственном отсеке изделия, при питании отштатного источника, с информацией от штатных устройств и датчиков.Осложнения на данном этапе возникают, как правило, из-за электромагнитной несовместимости исполнительных устройств разрабатываемой МПС. Особенно много времени на этом этапе уходит на ликвидацию одиночных сбоев, их обнаружение и локализацию.
Облегчить решение этой задачи помогает использование логических анализаторов.На этом же этапе выполняется калибровка прибора с занесением параметров в память МПС.Испытание изделия с МПС можно разделить на комплексные испециальные. Особенностью комплексных испытаний является то, чтодля наблюдение за МПС в реальных условиях не всегда применимылабораторные средства отладки. Автономные специализированныесредства отладки менее развиты и при этом существенно дороже. Специальные испытания (на электромагнитную совместимость, климатические и т. п.) проводятся по стандартным методикам.
После успешногопроведения испытаний записывается файл с окончательной версиейкода управляющей программы для программатора или заводаизготовителя микроконтроллеров, который осуществит масочное программирование внутренней памяти программ.3.2. Средства проектирования МПСКомплекс инструментальных средств, необходимых для проектирования МПС включает средства:• разработки программного обеспечения,• ввода принципиальной схемы и проектирования топологии печатной платы,• автономной отладки аппаратуры,50• совместной отладки аппаратуры и программного обеспечения вреальном масштабе времени,• программирования БИС памяти программ и программируемой логики.Общепринятым подходом в настоящее время является использование в качестве ведущего процессора (host-processor) инструментальных средств персональной ЭВМ типа IBM PC. Это позволяет разработчику инструментария переложить на нее общесистемные задачи и сосредоточиться в каждом случае на реализации специфических функцийпроектирования и отладки.
Одновременно персональная ЭВМ служит вкачестве объединяющего ядра, в том числе конструктивного, и средством коммуникации в вычислительных сетях. Пользователь получаетвозможность, кроме средств проектирования, пользоваться широкимнабором прикладного программного обеспечения для MS DOS и Windows.Для разработки и отладки МПС необходимы программные (кросссредства разработки и отладки прикладных программ программирования, система проектирования печатных плат) и аппаратные (логическийанализатор, программатор, эмулятор ПЗУ, внутрисхемный эмулятор)средства.
Аппаратные средства представляют приборы и системы различной категории сложности и стоимости. Их можно реализовать в видевиртуальных измерительных приборов на персональной ЭВМ, что повышает оперативность работы и одновременно значительно сокращаетзатраты на аппаратуру.3.3. Разработка программного обеспечения на языкеассемблераСтадия создания программы на языке ассемблера, образующаявнутренний цикл, представлена на рис. 29. Она содержит этапы разработки текста программы исходного модуля, трансляции ассемблером,редактирования связей, загрузки, отладки программы на модели и коррекции исходного текста.Разработка программы.
На этом этапе создается исходный текстпрограммы на языке ассемблера. В ассемблере доступны все ресурсыпрограммируемой МПС, поэтому программы на ассемблере имеютменьший объем и выполняются быстрее, чем те же программы на языках высокого уровня. Однако создание программы на языке ассемблераболее трудоемко, чем на языках высокого уровня.