Программирование микропроцессорных систем в интегрированной среде программирования keil-c: Методические указания к лабораторным работам, страница 19

В этой программе, построенной по одномодульному принципу используется одна единственная подпрограмма с именем main в которой выполняются все необходимые действия. Эта подпрограмма записана в строках от 21 по 33. Имя подпрограммы определяется языком программирования C, который после предварительной инициализации переменных всегда передаёт управление подпрограмме с именем main.

Параллельный порт, к выходам которого подключены светодиоды, расположен на восьмой странице внешней памяти данных (см. описание лабораторного стенда). Для выбора восьмой страницы в регистр DPP при помощи команды присваивания, расположенной в строке 22, записывается константа 8. В этой программе это единственная команда, которая входит в блок инициализации микроконтроллера.

Так как работа программы должна осуществляться до тех пор, пока на лабораторный стенд подано питание, то операторы сканирования клавиатуры помещены внутри оператора бесконечного цикла. Для размещения операторов внутри тела цикла использован структурный оператор в виде фигурных скобок ‘{…}’. В листинге эти команды помечены уровнем 2.

Код опроса нулевой колонки клавиатуры формируется оператором присваивания на строке 25. После выполнения этого оператора на всех выводах порта, кроме нулевого вывода порта, выдаётся единичный потенциал.

Для индикации состояния кнопок используются светодиоды. При обнаружении скан-кода нажатой кнопки зажигается соответствующий светодиод. Проверка скан-кодов ведётся командами на строках 26 и 28. Зажигание светодиодов осуществляется операторами, расположенными на строках 29 и 31.

3.5. Подготовка программы и трансляция исходного текста

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

3.6. Загрузка программ в лабораторный стенд SDK-1.1

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

4.  ЗАДАНИЕ К РАБОТЕ В ЛАБОРАТОРИИ

4.1.  Войдите в интегрированную среду программирования.

4.2.  Откройте  файл проекта под именем “lab6.Uv2”.

4.3.  Измените исходный текст программы в соответствии с заданием.

4.4.  Оттранслируйте программу, и исправьте синтаксические ошибки.

4.5.  Занесите полученный загрузочный файл в лабораторный стенд SDK-1.1.

4.6.  Убедитесь, что при нажатии на кнопку, соответствующую номеру бригады на лабораторном стенде SDK-1.1 зажигается светодиод, номер которого совпадает с номером Вашей бригады.

5.  МЕТОДИЧЕСКИЕ УКАЗАНИЯ К ВЫПОЛНЕНИЮ РАБОТ

5.1.  Включите ЭВМ, и вызовите интегрированную среду программирования, щелкнув значок .        

5.2.  Откройте  файл проекта “lab6.Uv2”. Для этого выберите подменю “Open project” из меню “project”.

5.3.  Убедитесь, что проект настроен для генерации загрузочного файла в hex формате (см. лабораторные работы 2 и 3).

5.4.  Откройте главный файл проекта с именем main.c, пользуясь окном менеджера проекта.

5.5.  Оттранслируйте программный проект, нажав на кнопку трансляции программного проекта в панели инструментов ‘build’.

5.6.  Подключите лабораторный стенд SDK-1.1 к последовательному порту компьютера при помощи кабеля.

5.7.  Занесите полученный в пункте 5.5 загрузочный модуль во внутреннюю память лабораторного стенда. Для этого запустите командный файл RUN_T167.BAT.

5.8.  Убедитесь, что при нажатии на кнопку, соответствующую номеру бригады на лабораторном стенде SDK-1.1 зажигается светодиод, номер которого совпадает с номером Вашей бригады.

5.9.  Продемонстрируйте работу Вашей программы преподавателю.

6.  СОДЕРЖАНИЕ ОТЧЕТА

6.1.  Цель работы.

6.2.  Эквивалентная схема подключения кнопки к параллельному порту.