- •Программируемые цифровые устройства (часть 1) содержание
- •1 Микропроцессор. Основные сведения
- •Основные характеристики мп
- •1.2 Архитектура микропроцессора. Основные понятия
- •1.2.2 Состав типичного микроконтроллера
- •1.3 Структура мп устройства.
- •1.3.1 Мп с микропрограммным управлением (микропрограммируемая архитектура)
- •Структурная схема устройства микропрограммного управления
- •Структура микро эвм с микропрограммным управлением
- •1.4 Запоминающие устройства.
- •1.4.1 Оперативное запоминающее устройство
- •Статическое озу на биполярных и полевых транзисторах
- •1.4.2 Постоянные зу
- •Однократно программируемое пзу
- •1.5 Команды, форматы команд, система команд
- •1.6 Принцип работы микропроцессора.
- •1.6.1 Модель программирования микропроцессора.
- •1.7 Способы адресации
- •1.8 Основы программирования. Ассемблер.
- •1.9 Организация передачи информации в мпс. Интерфейс.
- •2 Архитектура 8- разрядных микроконтроллеров.
- •2.1 Последовательные интерфейсы микропроцессорных систем
- •2.1.1 Последовательный интерфейс rs-232c
- •2.1.2 Шина 1-Wire
- •Формат команды 1-Wire протокола
- •2.1.3 Интерфейс can4
- •Топология сети can.
- •Data frame стандарта can 2.0a.
- •Побитовый арбитраж на шине can.
- •2.2 Организация портов ввода/вывода
- •2.3 Таймеры и процессоры событий
- •2.4 Ввод/вывод аналоговых сигналов
- •Структурная схема типового модуля ацп
- •Цап на основе таймера в режиме шим
- •2.5 Контроллеры последовательного ввода/вывода
- •2.5.1 Модуль последовательного обмена uart
- •Упрощенная структура модуля uart.
- •2.5.2 Последовательный периферийный интерфейс spi
- •2.5.3 Синхронный последовательный интерфейс i2c
- •Временные диаграммы шины i2c
- •Взаимосинхронизация на шине i2c
- •2.6 Минимизация потребления энергии
- •2.7 Повышение надежности работы мк
- •2.7.1 Мониторинг напряжения питания мк
- •Временные диаграммы работы схемы por
- •Переход мк в состояние сброса по сигналам схемы por и модуля пониженного напряжения питания
- •2.7.2 Сторожевой таймер
- •Структурная схема сторожевого таймера
- •Принцип действия сторожевого таймера
- •3 Периферийные устройства
- •3.1 Генератор и схема начального сброса
- •3.2 Кнопки и датчики
- •3.3 Подключение светодиодных индикаторов
- •3.4 Подключение жидкокристаллических индикаторов
- •3.5 Комбинированное использование портов
- •3.6 Подключение реле и электромагнитных исполнительных устройств
- •3.7 Подключение мк к компьютеру через последовательный порт
- •3.8 Подключение интегрального датчика температуры с интерфейсом 1- Wire
- •4 Микроконтроллеры с архитектурой mcs-51
- •4.1 Особенности архитектуры mcs-51
- •4.2 Структура микроконтроллеров mcs-51
- •4.2.1 Внутренняя структура mcs-51
- •Структура микроконтроллера mcs-51
- •4.2.2 Организация памяти и программно доступные ресурсы
- •Организация памяти в микроконтроллерах семейства 8051
- •4.2.3 Система команд и методы адресации
- •4.3 Современные мк с архитектурой mcs-51
- •5 Микроконтроллеры с risc- архитектурой
- •5.2 Однокристальные risc- контроллеры avr
- •5.2.1 Способы адресации в микроконтроллерах avr
- •5.3 Микроконтроллеры семейства msp430
- •5.3.1 Архитектура
- •5.3.2 Система тактирования
- •5.3.3 Встроенная эмуляция
- •5.3.4 Адресное пространство
- •5.4 Сравнение микроконтроллеров различных семейств
- •6 Разработка систем на бис программируемых цифровых устройств
- •6.1 Основы проектирования систем на микроконтроллерах и плис
- •6.2 Технология разработки микропроцессорных контроллеров
- •6.2.1 Основные этапы цикла разработки микропроцессорного контроллера
- •Литература
6.2.1 Основные этапы цикла разработки микропроцессорного контроллера
Технические требования начинают цикл проектирования микропроцессорного контроллера. Особенностью именно микропроцессорных контроллеров является то, что возможности их программирования подвигают заказчика заложить максимально широкие функции управления, чтобы иметь возможность использовать контроллер для управления целой гаммой аналогичных устройств. Критерием выбора должна служить экономическая целесообразность любого увеличения объема аппаратных средств, и максимальное улучшение показателя цена/функциональные возможности. На этом этапе явно или неявно формулируются требования к типу используемого микропроцессора или микроконтроллера.
Этап разработки алгоритма управления является наиболее ответственным, т.к. ошибки этого этапа обнаруживаются при испытаниях законченного изделия и приводят к дорогостоящей переработке всей системы управления. Прорабатывается несколько вариантов алгоритма, обеспечивающих выполнение технических требований с использованием наработанных ранее функционально-топологических модулей. Основные варианты отличаются соотношением объема программного обеспечения и аппаратуры. Критерием выбора является максимальное увеличение программы и уменьшение аппаратуры при обеспечении заданных показателей быстродействия и надежности в полном диапазоне эксплуатационных воздействий. Часто определяющим требованием является возможность размещения кода управляющей программы во внутренней памяти микроконтроллера, что позволяет обеспечить ее защиту. На этом этапе окончательно определяется тип микропроцессорной БИС и важнейших схем обрамления (flash-памяти, ПЛИС, программируемых интерфейсов, АЦП и т.п.).
На этапе разработки структуры микропроцессорного контроллера окончательно определяется состав имеющихся и подлежащих разработке аппаратных модулей, протоколы обмена между модулями, типы разъемов. Поскольку контроллер встраивается в изделие, выполняется предварительная проработка конструкции плат. В части программного обеспечения определяется состав и связи программных модулей, язык программирования. На этом этапе также производится выбор средств проектирования и отладки.
Содержание этапов разработки исходного текста программы, трансляции и отладки логических связей на модели существенно зависит от используемых системных средств. Ресурсы 8- разрядных микроконтроллеров достаточны для поддержки программирования на языках высокого уровня. Это позволяет использовать все преимущества структурного программирования, разрабатывать программное обеспечение с использованием раздельно транслируемых модулей. Языки уровня ассемблера используются при необходимости обеспечить контролируемые интервалы времени. Наиболее мощным средством разработки программного обеспечения для контроллеров являются интегрированные кросс- системы программирования на языках высокого уровня типа Паскаль, Си. Паскаль, например, включает редактор текста, компилятор с редактором связей, библиотеку стандартных функций периода выполнения и символический отладчик. Такие системы позволяют резко сократить затраты времени на создание и коррекцию программного обеспечения.
Другой внутренний цикл, выполняемый параллельно, составляют этапы создания аппаратуры: разработка общей принципиальной схемы и разводка топологии плат, монтаж макета и его автономная отладка. Эти этапы можно считать завершенными после того, как начинает работать магистраль микропроцессорной системы и через нее можно обратиться к памяти и блокам ввода/вывода. Время выполнения этих этапов зависит от имеющегося набора опробованных функционально-топологических модулей и квалификации разработчика. Распространенными системами проектирования, используемыми на этапе ввода принципиальной схемы и разработки топологии являются PCAD (ACCEL EDA) и OrCad. Эффективность их использования значительно зависит от имеющегося объема библиотек используемых элементов.
Этап совместной отладки аппаратуры и программного обеспечения в реальном масштабе времени является самым трудоемким и обязательно требует использования таких высокопроизводительных средств (development tools), как схемный эмулятор, эмулятор ПЗУ, логический анализатор и генератор программируемых последовательностей. Выбор одного из перечисленных средств обусловлен используемым методом отладки. Этап завершается, когда аппаратура и программное обеспечение совместно обеспечивают выполнение всех шагов алгоритма работы системы. В конце этапа код программы управления "зашивается" с помощью программатора и проверяется работа контроллера без участия эмулятора. Отладка на этом этапе ведется в лабораторных условия с питанием от источника, обеспечивающего максимальную защиту аппаратуры. Часть внешних источников информации может моделироваться.
Этап интеграции контроллера в изделие заключается в повторении работ по совместной отладке аппаратуры и управляющей программы, но при работе в собственном отсеке изделия, питании от штатного источника, с информацией от штатных устройств и датчиков. Осложнения, как правило, возникают из-за электромагнитной несовместимости исполнительных устройств с микропроцессорной системой управления. Много времени на этом этапе уходит на ликвидацию одиночных сбоев. Эту проблему можно решить с помощью программного резервирования, но только при наличии резерва памяти программ. На этом же этапе проводится и калибровка прибора с занесением параметров во flash-память.
Испытания изделия с микропроцессорным контроллером можно разделить на комплексные и специальные. Особенностью комплексных испытаний является то, что для наблюдения за микропроцессорным контроллеров в реальных условиях не всегда применимы лабораторные средства отладки. Автономные отладочные средства менее развиты и при этом существенно дороже. Специальные испытания (на электромагнитную совместимость, климатические и т.п.) проводятся по обычным методикам.
После успешного проведения испытаний появляется файл с окончательной версией кода управляющей программы для программатора или для завода-изготовителя микроконтроллеров, который осуществляет масочное программирование внутренней памяти программ.