Организация обмена информацией между микроконтроллером семейства MCS-51

Страница: 5/14

В работе [3] предлагалось использовать МК 8031. Данный МК не имеет внутренней памяти программ. В связи с этим возникла необходимость в установке внешней памяти программ. Эта память программ разбивалась на ПЗУ, для хранения программы «Монитор» и ОЗУ, как память программ пользователя. Это ограничивает общую внешнюю память программ, используемую как память программ пользователя.

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

Программа «Монитор» учитывала только ряд задач, которые могут возникнуть у пользователя на этапах разработки программного обеспечения, тестирования его или использования системы на практике.

1.3 Постановка задачи

Из проведенного выше анализа следует, что при реализации процесса обмена информацией между микроконтроллером MCS-51 и персональным компьютером необходимо решить следующий ряд вопросов:

ü Вопросы аппаратных средств.

Þ Разработка схемы сопряжения портов ПК и микроконтроллера с использованием современной электронной базы. Данная схема должна обеспечить согласование уровней сигналов между СОМ – портом ПК и микроконтроллером, не должна требовать дополнительных источников питания, должна иметь небольшие масса - габаритные характеристики, должна быть дешевой и надежной.

Þ Разработка схемы подключения памяти к микроконтроллеру. Данная схема должна обеспечить возможность использования ОЗУ в качестве памяти программ. Во время записи программы пользователя память программ должна использоваться, как память данных. Адресное пространство внешней памяти данных и памяти программ не должно перекрываться.

ü Вопросы программного обеспечения.

Þ Разработать формат передачи данных между ПК и микроконтроллером. Этот формат должен использовать восемь информационных битов.

Þ Разработать алгоритм записи программы, отлаженной на ПК, в память программ МК.

Þ Разработать алгоритм запуска программы в режиме реального времени.

Þ Разработать алгоритм выполнения программы в пошаговом режиме. В этом режиме микроконтроллер на каждом шагу программы должен передавать в персональный компьютер содержимое всех программных узлов, а также следующую команду из памяти программ. При необходимости, по запросу из персонального компьютера микроконтроллер должен передать содержимое любой ячейки памяти данных, или любого блока ячеек памяти данных. Кроме того микроконтроллер должен передавать в персональный компьютер содержимое ячеек памяти программ, если это необходимо. При необходимости должна обеспечиваться запись в программно доступные узлы микроконтроллера, в память программ и память данных. Алгоритм должен позволять запускать программу с любого адреса указанного пользователем, продолжать выполнение прерванной программы в пошаговом режиме, или в режиме реального времени.

Þ Разработать алгоритм записи информации в программно – доступные узлы микроконтроллера.

Þ Разработать алгоритм записи информации в память данных.

Þ Разработать алгоритм чтения информации из программно – доступных узлов микроконтроллера.

Þ Разработать алгоритм чтения информации из памяти данных.

Þ Разработать алгоритм чтения информации из памяти программ.

Þ Разработать алгоритм программы «Монитор». Программа «Монитор» должна обеспечивать запуск всех рассмотренных выше подпрограмм в зависимости от кода, переданного из персонального компьютера. Поэтому необходимо разработать управляющие слова, которые и будут задавать режим работы системы. Управляющие коды не должны превышать 8 бит. Для реализации гибкости системы, необходимо при получении неиспользуемых кодовых комбинаций обеспечить переход выполнения программы в область памяти программ на заранее зарезервированный адрес. Этот адрес можно хранить в памяти программ по строго определенному адресу. Чтобы избежать выполнение случайного кода, во время начальной установки необходимо установить по этому адресу, адрес в памяти программ, в котором находится команда возврата из подпрограммы.

Реферат опубликован: 16/06/2007