Автор работы: Пользователь скрыл имя, 09 Января 2014 в 16:42, курсовая работа
Все это определяет необходимость изучения микропроцессорных систем. В настоящее время в РАУ имеются учебные методические комплексы УМК ВЭФ, базирующиеся на микропроцессоре I8080, позволяющие получить знания в программировании микропроцессоров. К сожалению, на кафедре нет лабораторной установки, позволяющей получить практические навыки в программировании микроконтроллеров.
ПЕРЕЧЕНЬ СОКРАЩЕНИЙ 7
ВВЕДЕНИЕ 8
1. АНАЛИЗ СОСТОЯНИЯ ВОПРОСА 9
1.1 Постановка глобальных задач 13
1.2 Анализ предыдущей работы 13
1.2.1 Положительные стороны 13
1.2.2 Отрицательные стороны 14
1.3 Постановка задачи 15
2. РАЗРАБОТКА ВОПРОСОВ АППАРАТНОГО И ПРОГРАММНОГО СОПРЯЖЕНИЯ 18
2.1 Аппаратное сопряжение ПК и микроконтроллера 18
2.1.1 Скорость приема/передачи 19
2.1.2 Разработка формата принимаемых и передаваемых данных 19
2.1.3 Разработка схемы подключения микроконтроллера 20
2.1.4 Выбор источника питания 21
2.2 Подключение внешней памяти программ 21
2.3 Программное сопряжение микроконтроллера и ПК 23
2.3.1 Начальная установка MCS-51 23
2.3.2 Программное обеспечение организации обмена информацией между МК и ПК 23
2.3.2.1 Программа «Монитор» 23
2.3.2.2 Подпрограмма запуска программы пользователя в режиме реального времени 26
2.3.2.3 Подпрограмма запуска программы пользователя в пошаговом режиме 28
2.3.2.4 Подпрограмма записи программы пользователя в память программ микроконтроллера. 34
2.3.2.5 Подпрограмма записи информации в программно – доступные узлы микроконтроллера 36
2.3.2.6 Подпрограмма чтения из памяти программ микроконтроллера 37
2.3.2.7 Подпрограмма чтения информации программно – доступных узлов микроконтроллера 38
2.3.2.8 Подпрограмма выдачи ошибки в ПК 39
2.3.2.9 Подпрограмма выдачи одного байта информации 39
2.3.2.10 Подпрограмма приема одного байта информации. 41
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 45
ПРИЛОЖЕНИЯ 46
В данной работе рассматривается организация
обмена информацией между персональным
компьютером и
Объем работы 47 страниц.
стр.
ПЕРЕЧЕНЬ СОКРАЩЕНИЙ
БИС - большая интегральная схема
МК - микроконтроллер
ОЗУ - оперативное запоминающее устройство
ПЗУ - постоянное запоминающее устройство
ПК - персональный компьютер
УАПП - универсальный асинхронный приемопередатчик
ЭВМ - электронная вычислительная машина
ВВЕДЕНИЕ
Развитие микроэлектроники и широкое применение ее изделий в промышленном производстве, в устройствах и системах управления самыми разнообразными объектами и процессами является в настоящее время одним из основных направлений научно-технического прогресса.
Использование микроконтроллеров в изделиях не только приводит к повышению технико-экономических показателей (стоимости, надежности, потребляемой мощности, габаритных размеров), но и позволяет сократить время разработки изделий и делает их модифицируемыми, адаптивными. Использование микроконтроллеров в системах управления обеспечивает достижение высоких показателей эффективности при низкой стоимости.
Микроконтроллеры представляют собой эффективное средство автоматизации разнообразных объектов и процессов.
Все это определяет необходимость изучения микропроцессорных систем. В настоящее время в РАУ имеются учебные методические комплексы УМК ВЭФ, базирующиеся на микропроцессоре I8080, позволяющие получить знания в программировании микропроцессоров. К сожалению, на кафедре нет лабораторной установки, позволяющей получить практические навыки в программировании микроконтроллеров.
Необходимо создание новой лабораторной
базы, использующей на наиболее распространенные
микроконтроллеры. Такими микроконтроллерами
могут послужить
Такие лабораторные установки могут
использоваться не только как учебно-методическое
пособие при изучении курса микропроцессоров,
но и как устройства управления другими
учебно-методическими
Вышесказанное указывает на актуальность рассмотрения вопроса организации обмена информацией между персональным компьютером и микроконтроллером MCS-51 фирмы Intel.
1. АНАЛИЗ СОСТОЯНИЯ ВОПРОСА
В устройствах управления объектами (контроллерах) на основе МК аппаратурные средства и программное обеспечение существует в форме неделимого аппаратурно-программного комплекса. При проектировании контроллеров приходиться решать одну из самых сложных задач разработки, а именно задачу оптимального распределения функций контроллера между аппаратурными средствами и программным обеспечением. Решение этой задачи осложняется тем, что взаимосвязь и взаимовлияние аппаратурных средств и программного обеспечения в микропроцессорной технике претерпевают динамические изменения. Если в начале развития микропроцессорной техники определяющим было правило, в соответствии с которым аппаратурные средства обеспечивают производительность, а программное обеспечение – дешевизну изделия, то в настоящее время это правило нуждается в серьезной корректировке. Так как МК представляет собой стандартный массовый (относительно недорогой) логический блок, конкретное назначение которого определяет пользователь с помощью программного обеспечения, то с ростом степени интеграции и, следовательно, функционально-логических возможностей МК резко понижается стоимость изделия в пересчете на выполняемую функцию, что в конечном итоге и обеспечивает достижение высоких технико-экономических показателей изделий на МК. При этом затраты на разработку программного обеспечения изделия в 2 – 10 раз превышают затраты на приобретение и изготовление аппаратурных средств.
В настоящее время наибольшее распространение получил методологический прием, при котором весь цикл разработки контроллеров рассматривается как последовательность трех фаз проектирования:
Фаза разработки программного обеспечения, т.е. фаза получения прикладных программ, в свою очередь, разбивается на два существенно различных этапа:
Этап разработки «от исходной программы к объектному модулю» имеет целью получение машинных кодов прикладных программ, работающих в МК. Этот этап разработки прикладного программного обеспечения легко поддается формализации и поддержан всей мощью системного программного обеспечения МК, направленного на автоматизацию процесса получения прикладных программ. В состав средств системного программного обеспечения входят трансляторы с различных алгоритмических языков высокого уровня, ассемблеры, редакторы текстов, программы-отладчики, программы-документаторы и т.д. Наличие всех этих системных средств придает инженерной работе на этом этапе проектирования контроллеров характер ремесла, а не инженерного творчества. Так как в конечном изделии имеются только МК и его средства сопряжения с объектом, то выполнять отладку разрабатываемого прикладного программного обеспечения на нем невозможно (из-за отсутствия средств ввода, вывода, ОЗУ большой емкости и операционной системы), и, следовательно, разработчик вынужден обращаться к средствам вычислительной техники для выполнения всех формализуемых стадий разработки: трансляции, редактирования, отладки, загрузки объектных кодов и программируемую постоянную память МК.
Этап разработки «от постановки задачи к исходной программе» не поддается формализации и, следовательно, не может быть автоматизирован. Проектная работа здесь носит творческий характер, изобилует решениями, имеющими «волевую» или «вкусовую» окраску, и решениями, продиктованными конъюнктурными соображениями. На этом этапе разработчик стакивается с наибольшим количеством трудностей.
На обоих этапах разработки необходимо тестировать программное обеспечение не только на эмуляторах, но и на «живом» МК, с целью выявления специфических ошибок (неправильная логика работы устройства, ошибки, связанные с эмуляцией). Это требует многократного перепрограммирования МК, что связанно с большой затратой времени (время стирания информации в ПЗУ с ультрафиолетовым, или электрическим стиранием может достигать нескольких десятков минут). Это время можно сократить используя в качестве памяти программ не ПЗУ, а ОЗУ.
Разрабатываемое устройство значительно упростит оба этапа разработки, позволяя отлаживать программное обеспечение непосредственно на «живом» МК и позволит сэкономить время, связанное с записью и стиранием тестируемых программ.
При решении задач
об оптимальном распределении
После получения объектного кода программы неизбежно наступает этап отладки, т.е. установления факта ее работоспособности, а также выявления и устранения ошибок. Без этого этапа разработки никакое программное обеспечение вообще не имеет права на существование.
Обычно отладка прикладного программного обеспечения осуществляется в несколько этапов. Простые (синтаксические) ошибки выявляются уже на этапе трансляции. Далее необходимо выполнить:
автономную отладку
каждой процедуры в статическом
режиме, позволяющую проверить
комплексную отладку
программного обеспечения в статическом
режиме, позволяющую проверить
комплексную отладку в динамическом режиме без подключения объекта для определения реального времени выполнения программы и ее отдельных фрагментов.
Эти этапы отладки осуществляются обычно с использованием кросс систем. В состав кросс систем входят программы-отладчики, интерпретирующие выполнение программ написанных для МК. Но как бы ни был хорош интерпретатор, он все равно не может полностью заменить реальный МК.
С использованием разрабатываемого устройства можно будет выполнять рассмотренные этапы отладки уже непосредственно на «живом» МК, подключая к нему реальные физические объекты. Эти этапы отладки можно будет объединить со следующими этапами разработки устройства – отладка отдельных фрагментов программного обеспечения на отладочном модуле в режиме реального времени. Можно будет исключить этап комплексной отладки прикладного программного обеспечения на инструментальной микроЭВМ с внутрисхемным эмулятором.
Разрабатываемое устройство должно обеспечить все необходимые возможности, доступные в кросс системах:
доступ к любому ресурсу МК;
пошаговое исполнение программ.
Разрабатываемое устройство позволит промоделировать практически все возможные варианты работы программы и тем самым убедиться в ее работоспособности. Здесь возможна проверка работоспособности программы при нештатных ситуациях в условиях поступления некорректных входных воздействий.
Можно будет моделировать среду обитания МК, т.е. различного рода объекты и датчики, подключаемые к нему.
Это устройство устраняет главный недостаток кросс систем – невозможность прогона программы в реальном масштабе времени, т.е. со скоростью близкой к скорости выполнения программы в самом МК, а также невозможность комплексирования аппаратурных и программных средств разрабатываемой системы. Именно эти причины влияют на достоверность прикладных программ, отлаженных в кросс системах. Эта достоверность, как правило, не достаточно высока.
Задачей данной работы является разработка необходимого программного обеспечения и аппаратных средств сопряжения МК и ПК.
1.1 Постановка глобальных задач
Организация обмена информацией предполагает:
рассмотрение вопросов аппаратных средств;
создание необходимого программного обеспечения.
Аппаратные средства должны обеспечить:
физическое сопряжение портов ПК и микроконтроллера;
сопряжение МК с внешней памятью программ.
Программное обеспечение должно обеспечить решение следующего ряда задач:
запись программы, отлаженной на ПК, в память программ и данных МК;
выполнение программы в режиме реального времени;
выполнение программы в пошаговом режиме;
запись информации из ПК в программно-доступные узлы МК;
чтение содержимого программно-
1.2 Анализ предыдущей работы
Вопрос об организации обмена информацией между персональным компьютером и микроконтроллером семейства Intel был уже рассмотрен в лабораторной работе [3]. В этой работе были рассмотрены способы осуществления сопряжения МК с ПК в составе планируемой лабораторной установки.
1.2.1 Положительные стороны
В работе [5] было предложено использовать в качестве интерфейса сопряжения с ПК интерфейс RS-232C. Выбор данного интерфейса основывался на простоте подключения, а также минимальных затратах связанных с аппаратным подключением. Положительным фактом для выбора этого интерфейса служит также возможность удаленного подключения и возможность дуплексной передачи данных, что не могут обеспечить внутренняя шина ПК и интерфейс Centronics.
Кроме того каждый компьютер оборудован хотя бы одним асинхронным последовательным адаптером. Асинхронный адаптер обычно содержит несколько СОМ – портов, через которые к компьютеру можно подключить внешние устройства.
Используя СОМ – порт данные не надо синхронизировать. Для синхронизации передающего и принимающего устройства группе битов предшествует специальный стартовый бит, а после группы битов следуют один или два стоповых бита. Также в конце группы передаваемых битов может следовать бит четности. Наличие или отсутствие бита четности, количество стартовых и стоповых битов определяют формат передачи данных.
В работе [5] был предложен формат состоящий из одного стартового бита, семи информационных битов, бита четности и двух стоповых битов. Данный формат не является удобным, т.к. передавать информацию, разбивая ее на семь информационных битов не удобно. Гораздо удобнее использовать побайтовую пересылку.
Одним из основных плюсов данной работы является предложение использовать в качестве памяти программ ОЗУ вместо ПЗУ, что позволяет существенно увеличить скорость перезаписи программ пользователя.