Обмен информацией между персональным компьютером и микроконтроллером

Автор работы: Пользователь скрыл имя, 28 Декабря 2011 в 04:06, отчет по практике

Описание работы

Развитие микроэлектроники и широкое применение ее изделий в промышленном производстве, в устройствах и системах управления самыми разнообразными объектами и процессами является в настоящее время одним из основных направлений научно-технического прогресса.
Использование микроконтроллеров в изделиях не только приводит к повышению технико-экономических показателей (стоимости, надежности, потребляемой мощности, габаритных размеров), но и позволяет сократить время разработки изделий и делает их модифицируемыми, адаптивными. Использование микроконтроллеров в системах управления обеспечивает достижение высоких показателей эффективности при низкой стоимости.

Содержание работы

Введение 3
Анализ состояния вопроса 4
Разработка вопросов аппаратного и программного сопряжения 9
Программное сопряжение микроконтроллера и ПК 13
Заключение 16
Список используемой литературы 17

Файлы: 1 файл

ПК и МК.docx

— 52.57 Кб (Скачать файл)

       Задачей данной работы является разработка необходимого программного обеспечения и аппаратных средств сопряжения МК и ПК. 

       Постановка  глобальных задач 

    Организация обмена информацией предполагает:

  • рассмотрение вопросов аппаратных средств;
  • создание необходимого программного обеспечения.

       Аппаратные  средства должны обеспечить:

  • физическое сопряжение портов ПК и микроконтроллера;
  • сопряжение МК с внешней памятью программ.

       Программное обеспечение должно обеспечить решение следующего ряда задач:

  • запись программы, отлаженной на ПК, в память программ и данных МК;
  • выполнение программы в режиме реального времени;
  • выполнение программы в пошаговом режиме;
  • запись информации из ПК в программно-доступные узлы МК;
  • чтение содержимого программно-доступных узлов и индикация их на мониторе ПК.

       Разработка  вопросов аппаратного  и программного сопряжения

 

Аппаратное  сопряжение ПК и микроконтроллера 

       Для решения задачи сопряжения ПК и микроконтроллера было решено использовать интерфейс RS-232C.

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

       Последовательный  интерфейс микроконтроллера МК-51 может  работать в следующих четырех  режимах:

  • режим 0. Информация передается и принимается через вход RxD приемника (вывод P3.0). Через выход передатчика TxD (вывод P3.1) выдаются импульсы синхронизации, стробирующие каждый передаваемый или принимаемый бит информации. Формат посылки — 8 бит. Частота приема и передачи — тактовая частота микроконтроллера;
  • режим 1. Информация передается через выход передатчика TxD, а принимается через вход приемника RxD. Формат посылки — 10 бит: старт-бит (ноль), восемь бит данных, программируемый девятый бит и стоп-бит (единица). Частота приема и передачи задается таймером/счетчиком 1;
  • режим 2. Информация передается через выход передатчика TxD, а принимается через вход приемника RxD. Формат посылки — 11 бит: старт-бит (ноль), восемь бит данных, программируемый девятый бит и 2 стоп-бита (единицы). Передаваемый девятый бит данных принимает значение бита ТВ8 из регистра специальных функций SCON. Бит ТВ8 в регистре SCON может быть программно установлен в "0" или в "1", или в него, к примеру, можно поместить значение бита Р из регистра PSW для повышения достоверности принимаемой информации (контроль по паритету). При приеме девятый бит данных принятой посылки поступает в бит RB8 регистра SCON. Частота приема и передачи в режиме 2 задается программно и может быть равна тактовой частоте микроконтроллера деленной на 32 или на 64;
  • режим 3. Режим 3 полностью идентичен режиму 2 за исключением частоты приема и передачи, которая в режиме 3 задается таймером/счетчиком 1.

       Для реализации обмена информацией между  ПК и микроконтроллером наиболее удобным является режим 2, т. к. для  работы в этом режиме не требуется  таймер/счетчик. Этот режим полностью  удовлетворяет предъявленным требованиям. 

Разработка формата  принимаемых и передаваемых данных 

       Формат  принимаемых и передаваемых данных почти полностью описан режимом 2 работы последовательного интерфейса

       Формат  должен состоять из 11 бит:

  • стартовый бит — ноль;
  • восемь бит данных;
  • девятый бит — контроль по паритету, для повышения достоверности принимаемой информации;
  • два стоповых бита — единицы.
 

Разработка схемы  подключения микроконтроллера 

       При сопряжении интерфейса RS-232 с входами  последовательного интерфейса микроконтроллера MCS-51 необходимо обеспечить согласование уровней сигналов. Стандартный уровень сигналов RS-232C — +12 и –12 В. Стандартный уровень сигналов асинхронного интерфейса микроконтроллера MCS-51 — +5 В.

       В зависимости от требований, предъявляемых  к проектируемой схеме, преобразователи уровней сигналов могут быть выполнены различными способами. 

       Приемники и передатчики, выполненные на дискретных элементах, имеют ряд недостатков:

  • большие массогабаритные характеристики;
  • высокая потребляемая мощность;
  • недостаточная надежность;
  • необходимость в дополнительных источниках питания;
  • стоимость.

       Исходя  из этих соображений, для организации  сопряжения уровней портов ПК и микроконтроллера можно воспользоваться микросхемой ADM202 фирмы Analog Devices. Данная микросхема позволяет согласовать уровни сигналов, не требуя дополнительных источников питания [4].

       Микроконтроллер принимает данные через вход приемника (вывод P3.0), а передает данные через  выход передатчика (вывод P3.1). Микроконтроллер  может запретить прием данных из ПК с помощью сигналов на выводе Р2.6. Это необходимо для сигнализации ПК о приеме ошибочных данных. В свою очередь, ПК может запретить передачу данных из микроконтроллера с помощью сигналов на выводе Р2.7. 

Выбор источника  питания 

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

       Реализация  подключения потребует изготовления специального переходного кабеля, входящего  в состав лабораторной установки. 

Подключение внешней  памяти программ 

       Как уже отмечалось ранее, для организации  обмена информацией между ПК и  микроконтроллером целесообразно  использовать в качестве внешней  памяти программ ОЗУ. ОЗУ позволит быстро и многократно перепрограммировать микроконтроллер, что позволит использовать его как отладочный модуль или как часто перепрограммируемое устройство управления (например, для управления различными лабораторными установками).

       В качестве микросхемы ОЗУ можно использовать микросхему КР537РУ8. Объем памяти данной микросхемы составляет 2 КБ.

       При записи программы пользователя в  память программ, обращение к ОЗУ  осуществляется как к памяти данных. Во время работы программы, как к  памяти программ.

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

Программное сопряжение микроконтроллера и ПК

Программное обеспечение  организации обмена информацией  между   МК и ПК. Программа "Монитор" 

       Как уже отмечалось, программное обеспечение  организации обмена информацией между микроконтроллером и ПК должно обеспечивать:

  • запись программы пользователя в память программ МК;
  • запись информации в программно-доступные узлы МК;
  • чтение информации из памяти программ МК;
  • чтение информации из программно-доступных узлов МК;
  • запуск программы пользователя в режиме реального времени;
  • запуск программы пользователя в пошаговом режиме.

       Все эти функции выполняет программ "Монитор"

       В начале работы программы "Монитор" происходит начальная установка. Эта  установка должна произвести следующие  действия:

  • выбрать БАНК памяти для данных микроконтроллера, для хранения временных переменных, необходимых для работы программы "Монитор";
  • установить значение управляющего бита SMOD в регистре специальных функций в 1;
  • выдать сообщение ПК о начале работы программы "Монитор".

       Программа "Монитор" принимает от ПК код  выполняемой операции, декодирует его и запускает соответствующую подпрограмму.

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

       В случае неверно принятого кода операции микроконтроллер предлагает ПК повторно передать команду.

       После выполнения выбранной подпрограммы программа "Монитор" снова переходит  к режиму ожидания очередного кода операции.

       В программе "Монитор" зарезервированы  следующие коды операций:

  • 01h — подпрограмма 1 — подпрограмма запуска программы пользователя в режиме реального времени;
  • 02h — подпрограмма 2 — подпрограмма запуска программы пользователя в пошаговом режиме;
  • 03h — подпрограмма 3 — подпрограмма записи программы пользователя в память программ МК;
  • 04h — подпрограмма 4 — подпрограмма записи информации в программно-доступные узлы МК;
  • 05h — подпрограмма 5 — подпрограмма чтения из памяти программ МК;
  • 06h — подпрограмма 6 — подпрограмма чтения программно-доступных узлов МК;
  • другие — подпрограмма 7 — зарезервированные коды операций для запуска подпрограмм пользователя.
 

Подпрограмма запуска  программы пользователя в режиме

реального времени 

       Перед запуском программы пользователя микроконтроллер  принимает из ПК адрес начала программы  и сохраняет его в регистре DPTR. Для приема адреса используется подпрограмма приема двух байтов информации.

       Для приема байта информации, подпрограмма использует алгоритм приема одного байта  данных. Ошибка приема проверяется  по содержимому регистра R4. Значение первого принятого байта сохраняется  в регистре DPL. Прием второго байта адреса программы пользователя из ПК аналогичен приему первого байта, с той лишь разницей, что его значение сохраняется в регистре DPH. В случае возникновения ошибки подпрограмма завершает свою работу, оставляя без изменения содержимое регистра R4.

       Подпрограмма  запуска программы пользователя в режиме реального времени проверяет правильность принятия адреса по регистру R4. В случае возникновения ошибки передает в ПК код 0Fh. После чего возвращается в программу "Монитор". Непосредственно перед запуском программы пользователя необходимо изменить рабочий БАНК памяти данных МК на БАНК 0. 

Подпрограмма запуска  программы пользователя в

пошаговом режиме 

       На  этапе отладки прикладной программы  очень удобным для разработчика оказывается режим пошагового (покомандного) исполнения программ. Этот режим можно  организовать, используя систему  прерываний микроконтроллера.

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

Заключение

 

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

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

Информация о работе Обмен информацией между персональным компьютером и микроконтроллером