Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Программные симуляторы



Симулятор - программное средство, способное имитировать работу микроконтроллера и его памяти. Как правило, симулятор содержит в своем составе:

· Отладчик;

· Модель ЦПУ и памяти.

Более продвинутые симуляторы содержат в своем составе модели встроенных периферийных устройств, таких, как таймеры, порты, АЦП, системы прерываний.

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

Платы развития, или как принято их называть в зарубежной литературе - оценочные платы (Evaluation Boards), являются своеобразными конструкторами для макетирования прикладных систем.В последнее время, при выпуске новой модели кристалла микроконтроллера, фирма-производитель обязательно выпускает и соответствующую плату развития. Обычно это печатная плата с установленным на ней микроконтроллером, плюс вся необходимая ему стандартная обвязка. На этой плате также устанавливают схемы связи с внешним компьютером. Как правило, там же имеется свободное поле для монтажа прикладных схем пользователя. Иногда имеется уже готовая разводка для установки дополнительных устройств, рекомендуемых фирмой. Например, ПЗУ, ОЗУ, ЖКИ-дисплей, клавиатура, АЦП и др. Кроме учебных или макетных целей, такие доработанные пользователем платы стало выгодно (экономия времени) использовать в качестве одноплатных контроллеров, встраиваемых в мало серийную продукцию (5..20 шт.).

Отладочный монитор - специальная программа, загружаемая в память отлаживаемой системы. Она вынуждает процессор пользователя производить, кроме прикладной задачи, еще и отладочные функции:

· Загрузку прикладных кодов пользователя в свободную от монитора память;

· Установку точек останова;

· Запуск и останов загруженной программы в реальном времени;

· Проход программы пользователя по шагам (часть функций трассировщика);

· Просмотр, редактирование содержимого памяти и управляющих регистров.

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

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

Вопрос #33 – “ Типовая структура управляющей микро-ЭВМ”

В состав простейшей микро-ЭВМ входят: процессор, ОЗУ, ПЗУ, порты ввода/вывода, дешифраторы, осуществляющие выбор запоминающего устройства и порта ввода/вывода. Архитектура простейшей микро-ЭВМ:

Общая магистраль представлена совокупностью трех специализированных шин: данных, адреса и управления. Шина данных (ШД) –двунаправленная шина для обрабатываемых данных и машинных кодов команд (между устройствами ЭВМ). Однонаправленная шина адреса (ША) несет адрес ячейки памяти или порта ввода/вывода, который взаимодействует с микропроцессором. Шина управления - сигналы управления, обеспечивающие взаимодействие блоков микро–ЭВМ. Сигнал RESET – приводит микро-ЭВМ в исходное стартовое состояние. Центральный процессор (ЦП) микро-ЭВМ это микропроцессор (МП). Этот модуль содержит также: разного рода вспомогательные устройства, обеспечивающие работу микропроцессора и его связь с магистралью. Центральный процессор, ОЗУ, ПЗУ и порты имеют выходы данных с тремя состояниями или открытым коллектором, поэтому могут отключаться от шины данных. Дешифратор выбора ЗУ генерирует сигнал выбора соответствующего блока памяти (), анализируя старшие биты адреса ячейки памяти, выставленного микропроцессором на шине адреса. Дешифратор выбора порта генерирует сигнал выбора соответствующего порта (), анализируя адрес порта, выставленный микропроцессором на шине адреса. Представленная схема не предусматривает прямого обмена между портами и памятью (прямой доступ к памяти - ПДП), а также возможности прерывать выполнение основной программы для обслуживания внешних запросов, для этого требуется контроллер ПДП и контроллер прерываний.

Задача #1– “Подсчет числа импульсов”

Подсчет числа импульсов между двумя событиями. Предположим, что необходимо подсчитать число деталей, сошедших с конвейера от момента его включения до момента выключения. Факт схода детали с конвейера фиксируется фотоэлементом, на выходе которого формируется импульсный сигнал (рис. 6.6).

Для простоты реализации программы считаем, что общее количество деталей не превышает 99:

По окончании выполнения процедуры в аккумуляторе фиксируется число деталей, представленное в двоично-десятичном коде.

В аккумуляторе фиксируется чело деталей, представленное в двоичном коде (максимальное количество деталей 255).

;версия для МК51

MOV TMOD,#01000000B ;настройка счетчика 1

MOV TH1,#0 ;сброс счетчика деталей

WAITO: JB P3.4,WAITO ;ожидание включения конвейера

SETB TCON.6 ;пуск счетчика 1

WAIT1: JNB P3.4,WAIT1 ;ожидание выключения конвейера

CLR TCON.6 ;останов счетчика 1

MOV A,TH1 ;(аккумулятор) <---число деталей

EXIT:... ;выход из процедуры

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

Для МК51, имеющего в своем составе два таймера/счетчика, возможен четвертый способ: аппаратурная реализация временного интервала с аппаратурным подсчетом числа импульсов.

Четвертый (полностью аппаратурный) способ подсчета числа импульсов требует использования двух аппаратурных счетчиков и поэтому возможен лишь для МК51. На Т/С1 можно выполнять подсчет числа импульсов, а на Т/С0 отсчет заданного интервала. Датчик импульсов должен быть подключен к входу Т1:

;версия для МК51

TIME EQU NOT(10000)+1 ;определение константы TIME для отсчета

;интервала 10 мс

MOV TMOD, #01010001B ;настройка т/с, 16 бит. 1 - счетчик

;0 - таймер

CLR A ;сброс аккумулятора

MOV TH1, A ;сброс т/с1





Дата публикования: 2015-01-24; Прочитано: 776 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.008 с)...