- •Программируемые цифровые устройства (часть 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 Технология разработки микропроцессорных контроллеров
Технология проектирования устройств на основе микроконтроллеров полностью соответствует концепции неразрывности процесса проектирования и отладки аппаратной и программной составляющих, принятой в микропроцессорной технике. Единый процесс проектирования микропроцессорной системы и ее отладки в англоязычной литературе обозначается словом development, мы будем употреблять термин разработка. Важной особенностью применения контроллеров является работа в реальном масштабе времени, т.е. гарантированная реакция на внешние события в течение определенного интервала времени. Решение задачи комплексной разработки аппаратуры и программного обеспечения в реальном масштабе времени при произвольной структуре и схемотехнике контроллера является сложной, дорогостоящей и долговременной работой.
В качестве основного метода разработки микропроцессорных систем фирмой Intel в 70-х годах был предложен метод внутрисхемной эмуляции. Основой метода является моделирование разрабатываемой системы с использованием средств специализированного инструментального компьютера – схемного эмулятора. Схемный эмулятор должен иметь все аппаратные средства, которые могли- бы понадобиться для реализации целевой системы, плюс средства управления отладкой. Вначале контроллер конфигурировался из аппаратуры эмулятора и разрабатывалась управляющая программа, далее на макетную плату устанавливалась розетка целевого микропроцессора и схемы ближайшего обрамления, эмулятор своей эмуляционной вилкой включался в розетку вместо микропроцессора и начинался поэтапный перенос аппаратных средств с соответствующими программными фрагментами из эмулятора на плату контролера. Чтобы обеспечить такой перенос, адресное пространство памяти картируется с образованием сегментов, которые физически могут находиться как в эмуляторе, так и на целевой плате.
Основным преимуществом метода внутрисхемной эмуляции является упорядоченность процесса проектирования, который может быть разделен на ряд отдельных этапов. На каждом этапе все ошибки локализованы во вновь создаваемом аппаратном и программном обеспечении, фундаментом разработки являются заведомо работоспособные средства эмулятора. Основным недостатком такого глобального подхода к эмуляции является дороговизна инструментальных средств.
В настоящее время средства моделирования в схемных эмуляторах, которые называют имитирующим процессором, замещают только целевую микропроцессорную БИС и память. Разработка остальных частей системы ложится на разработчика. В МИФИ при проектировании и отладке микропроцессорных контроллеров используется методика типовых функционально-топологических и программных (ФТП) модулей. Термин функционально-топологический и программный модуль подразумевает, что аппаратура выполняет законченную типовую функцию, реализована в виде устоявшейся совокупности компонент (микросхем, пассивных элементов и т.п.) на печатной плате с определенными технологическими нормами, процедура управления аппаратурой представляет собой программный модуль. Топология является неотъемлемой составляющей модуля, поскольку характеристики современной прецизионной элементной базы могут быть реализованы только при правильном конструировании печатной платы. После определения схемотехнических решений не рекомендуется использовать автоматическое размещение элементов и трассировку, а после получения хороших результатов эксплуатации нельзя произвольно менять топологию функционального модуля.
Предпосылкой к использованию ФТП модулей является принцип магистрально- модульного построения систем на основе микропроцессоров и микроконтроллеров (рис.).
Рис. – Магистрально-модульная организация микропроцессорных систем
Магистрально-модульная организация подразумевает, что память и интерфейс ввода/вывода выполнены в виде модулей, которые обмениваются информацией с микропроцессорной БИС через магистраль. Обработку данных осуществляет микропроцессорная БИС, обмен данными ведется под ее управлением и через ее внутренние регистры. На логическом уровне микропроцессорная система представляется в виде регистровой модели. Обращение микропроцессорной БИС к ячейкам памяти и регистрам модулей ввода/вывода осуществляется по адресам, которые сводятся разработчиком в карту памяти и устройств ввода/вывода. Параметры магистрали (разрядность шин адреса, данных и управления, протокол и диаграммы обмена) определяются либо официальным стандартом, либо аналогичными параметрами микропроцессорной БИС, которые являются в этом случае стандартом "де-факто". Параметры магистрали во многом определяют предельные характеристики производительности микропроцессорной системы.
Проектирование микропроцессорных контроллеров с использованием ФТМ модулей осуществляется в два этапа. На первом этапе на макетной плате создается и испытывается сам модуль, разрабатывается программное обеспечение для его обслуживания. При этом макетная плата проектируется с полноценной топологией печатных проводников, обеспечивающей согласование по волновому сопротивлению и экранирование от наводок, но с дополнительными элементами, обеспечивающими отладку. Модуль отлаживается во взаимодействии с работоспособным процессорным модулем, с которым он в дальнейшем будет объединяться на плате. На втором этапе на основе процессорного ядра и отработанных ФТП модулей обрамления разрабатывается заказной контроллер. Очевидно, что набор ФТП модулей в значительной степени привязан к тому процессорному ядру, с которым был отлажен.
Особенностью микропроцессорных контроллеров является то, что они сами интегрируются в некоторый объект (embedded controllers). Это предполагает, что перед разработчиком микропроцессорной системы такого рода стоит задача полного цикла проектирования, начиная от разработки алгоритма функционирования и заканчивая комплексными испытаниями в составе изделия, а возможно и сопровождением при производстве.