РОСЖЕЛДОР

Государственное образовательное учреждение

высшего профессионального образования

«Ростовский государственный университет путей сообщения»

(РГУПС)

ОРГАНИЗАЦИЯ ВЗАИМОДЕЙСТВИЯ С ВНЕШНИМИ УСТРОЙСТВАМИ

И ПРОСТЕЙШАЯ ОБРАБОТКА ИНФОРМАЦИИ В МИКРОКОНТРОЛЛЕРАХ

Методические указания к лабораторным работам по дисциплине

«Прикладное программирование микропроцессорных систем»

Ростов-на-Дону

2005

УДК 621.3.049

Лебединская, Е. Н.

Организация взаимодействия с внешними устройствами и простейшая обработка информации в микроконтроллерах: Методические указания к лабораторным работам по дисциплине «Прикладное программирование микропроцессорных систем» / ; Рост. гос. ун-т путей сообщения. – Ростов н/Д, 2005. – 32 с.: Библиогр.: 11 назв.

В методических указаниях изложены основные принципы организации связи с внешними устройствами и простейшей обработки информации в контроллерах одного из наиболее популярных современных семейств – PIC-контроллерах. Рассмотрены базовые алгоритмы обработки информации: вычисление арифметических выражений, организация ветвлений  и циклов.

Методические указания предназначены студентам, изучающим дисциплины специальности «Автоматика и телемеханика на железнодорожном транспорте».

Рецензент канд. тех. наук, доц. (РГУПС)

Учебное издание

ОРГАНИЗАЦИЯ ВЗАИМОДЕЙСТВИЯ С ВНЕШНИМИ УСТРОЙСТВАМИ И ПРОСТЕЙШАЯ ОБРАБОТКА ИНФОРМАЦИИ В МИКРОКОНТРОЛЛЕРАХ

Методические указания

Редактор

Техническое редактирование и корректура

Подписано к печати 28.12.05 Формат 60х84/16

НЕ нашли? Не то? Что вы ищете?

Бумага газетная. Ризография. Усл. печ. л. 1,86

Уч.-изд. л. 1,77. Тираж 60 экз. Изд. № 000. Заказ №

Ростовский государственный университет путей сообщения.

Ризография РГУПС

Адрес университета: 344038, г. Ростов н/Д, пл. Ростовского Стрелкового Полка Народного Ополчения, 2

© Ростовский государственный университет путей сообщения, 2005

СОДЕРЖАНИЕ

ВВЕДЕНИЕ

Лабораторная работа № 1. Тема: Исследование работы команд пересылки и арифметических операций контроллеров среднего семейства серии PIC

1 Сведения об исследуемых командах

1.1 Команды пересылки

1.2 Примеры использования команд пересылки

1.3 Команды арифметических операций

1.4 Пример использования команд арифметических операций

2 Порядок выполнения

3 Содержание отчета

Лабораторная работа № 2. Тема: Исследование принципа работы циклических алгоритмов в PIC-контроллерах

1 Сведения из теории

2 Порядок выполнения работы

3 Содержание отчета

Лабораторная работа № 3. Тема: Исследование принципов построения алгоритмов с ветвлениями  в микроконтроллерах среднего семейства серии PIC

1 Сведения из теории

2 Порядок выполнения работы

3 Содержание отчета

Лабораторная работа № 4. Тема: Исследование организации работы портов ввода-вывода для приема  и передачи информации

1 Сведения из теории. Настройка портов на ввод-вывод информации

2 Организация файлов стимулов для имитации подачи сигналов на линии портов контроллера в MPLAB 5.01

3 Порядок выполнения

4 Содержание отчета

5 Задания на лабораторную работу

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

Приложения

ВВЕДЕНИЕ

Микропроцессорная автоматика с каждым годом все активнее вытесняет традиционную схемную автоматику. Цифровые устройства в настоящее время проникли практически во все сферы жизни.

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

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

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

Более сложные аспекты взаимодействия и обработки информации рассмотрены во второй части методических указаний.

ЛАБОРАТОРНАЯ РАБОТА № 1

Тема: Исследование работы команд пересылки

и арифметических операций контроллеров среднего семейства серии PIC

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

1 Сведения об исследуемых командах

1.1 Команды пересылки:

1 MOVLW K – пересылает константу К в аккумулятор.

Пример:

MOVLW 3 – запись числа 3 в аккумулятор.

2 MOVWF F – пересылает содержимое аккумулятора в регистр ОЗУ с адресом F.

Пример:

MOVWF 0x0c – скопирует значение, находящееся в аккумуляторе в регистр с адресом 0x0c ("0c" – число 12 в шестнадцатеричном формате, "0x" перед ним показывает, что число шестнадцатеричное)

3 MOVF F, 0 – пересылает содержимое регистра ОЗУ с адресом F в аккумулятор.

Пример:

MOVF 0x0c, 0 – скопирует значение, находящееся в регистре с адресом 0x0c, в аккумулятор.

1.2 Примеры использования команд пересылки:

а) пусть требуется записать число 5 в регистр с адресом 0x0c. Для этого число сначала нужно записать в аккумулятор, затем из аккумулятора – в регистр:

MOVLW 5

MOVWF 0x0c

б) пусть требуется скопировать содержимое регистра 0x0c в регистр 0x0d. Для этого содержимое регистра 0x0c нужно скопировать в аккумулятор, затем содержимое аккумулятора переместить в регистр 0x0d:

MOVF 0x0c,0

MOVWF 0x0d

1.3 Команды арифметических операций

1 ADDLW K – складывает константу К с содержимым аккумулятора и оставляет в нем результат.

Пример:

ADDLW 5 – добавит к значению, содержащемуся в аккумуляторе,

число 5

2 ADDWF F, D – складывает содержимое регистра ОЗУ с адресом F с содержимым аккумулятора, результат остается:

а) в аккумуляторе, если D = 0;

б) в регистре F, если D = 1.

Пример:

ADDWF 0x0c,0 – сложит значения аккумулятора и регистра с адресом 0x0c, результат сложения остается в аккумуляторе, значение в регистре не изменяется.

ADDWF 0x0c,1 – сложит значения аккумулятора и регистра с адресом 0x0c, результат сложения остается в регистре, значение в аккумуляторе не изменяется.

3 SUBLW K – вычитает из константы К  содержимое аккумулятора и оставляет в нем результат.

Пример:

SUBLW 7 – вычтет из числа 7 значение аккумулятора, результат остается в аккумуляторе.

4 SUBWF F, D – вычитает из содержимого регистра ОЗУ с адресом F содержимое аккумулятора, результат остается:

а) в аккумуляторе, если D = 0;

б) в регистре F, если D = 1.

Пример:

SUBWF 0x0c,0 – вычтет из регистра с адресом 0x0c значение аккумулятора, результат вычитания остается в аккумуляторе.

SUBWF 0x0c,1 – вычтет  из регистра с адресом 0x0c значение аккумулятора, результат вычитания остается в регистре, значение в аккумуляторе не изменяется.

1.4 Пример использования команд арифметических операций

Вычислить 3–(0x0c)+(0x0d)–(0x0f), результат оставить в регистре 0x0d

MOVF 0X0C,0  ;  W=0X0C

ADDWF 0X0F,0  ;  W=0X0C+0X0F

SUBLW 3  ;  W=3 – (0X0C+0X0F)

ADDWF 0X0D,1 ;  0X0D= 0X0D+3–(0X0C+0X0F)

2 Порядок выполнения

1 Запустите среду MPLAB 5.01.

2 Создайте новый проект: Project/New. Дайте имя проекту и расширение. pjt. Нажмите ОК. Вы попадете в следующее диалоговое окно редактирования проекта.

3 Подсоедините к проекту файл исходного модуля с тем же именем, что и проект. Для этого нажмите кнопку Add Node, задайте имя файла исходного модуля с расширением. asm. Нажмите ОК.

4 Создайте файл исходного модуля: File/New. Сохраните его с именем, которое дали в предыдущем пункте: File/Save As.

5 В созданном файле наберите программу (варианты заданий находятся в табл. 1 приложения). Команды набираются не ранее, чем со второй позиции в строке, метки – с первой позиции. Комментарии к командам можно писать после точки с запятой – этот текст не воспринимается компилятором.

Программа должна заканчиваться командами:

NOP

END

6 Откомпилируйте набранную программу: Project/Build All. При наличии ошибок (error) исправьте их и откомпилируйте проект заново. Если не можете найти ошибку, откройте файл листинга: File/Open, выберите тип файлов с расширением. lst, найдите имя своего файла с этим расширением, откройте его. Ошибки указаны перед командами, в которых они встретились.

7 Если проект успешно откомпилировался, запустите его в пошаговом исполнении: нажмите F6 для запуска сначала, F7 – переход к следующей команде. Для просмотра результатов выполнения команд откройте окна RAM и SFR. RAM – это окно состояния оперативной памяти, в нем вы видите содержимое ее регистров в шестнадцатеричном формате, и SFR – окно регистров специального назначения, где можно проследить за состоянием аккумулятора. Оба окна открываются щелчком по соответствующим пиктограммам на панели инструментов.

8 Выполните программу. Убедитесь, что результат выполнения совпадает с ожидаемым. Оформите программу в отчете.

3 Содержание отчета

Отчет должен содержать:

- описание команд пересылки и арифметических операций;

- программы для каждой задачи с трассировочными таблицами.

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5