Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Работа с портами ввода-вывода. Организация вывода информации

.pdf
Скачиваний:
16
Добавлен:
05.02.2023
Размер:
5.72 Mб
Скачать

1)установка первого вывода на выход pinMode(1, OUTPUT);

2)установка первого вывода на вход pinMode(1, INPUT);

3)

установка

логической

единицы

на

первом

выводе

digitalWrite(1, HIGH);

 

 

 

 

 

4)

установка

логического

нуля

на

первом

выводе

digitalWrite(1, LOW).

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

void delay(int ms) – приостанавливает выполнение программы на заданное в параметре количество миллисекунд.

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

digitalWrite(10, HIGH); // переключает выход 10 в логическую единицу delay(1000); // ожидание секунду

digitalWrite(ledPin, LOW); // переключает выход 10 в логический ноль

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

В практической части работы должны быть решены две задачи: освоение работы с портами ввода-вывода, настроенными на режим выхода; закрепление полученных навыков при решении задачи переключения светодиодов в режиме «змейка». Выполнение работы должно быть выполнено в двух вариантах: управление режимами и состояниями выводов путём непосредственного обращения к регистрам микроконтроллера; управление с помощью функций Arduino IDE. Для этого необходимо выполнить следующие действия:

3.1Изучите предложенный в п. 2 теоретический материал. Подключение отладочной платы и настройка среды:

3.2Вставьте плату расширения Multi-Function shield в разъемы Arduino

UNO.

3.3Подключите отладочную плату к компьютеру как описано в теоретической части.

3.4Создайте новый проект (меню Файл->Новый) и сохраните (меню Файл->Сохранить как…) его в свой рабочий каталог.

Освоение работы с портами ввода-вывода, настроенными на режим выхода:

3.5Для первой части работы понадобится один светодиод. Выберете светодиод, которые вы собираетесь зажечь, и определите обозначение вывода порта, к которому он подключён.

3.6С использованием [9] определите букву порта микроконтроллера и номер его вывода, к которому подключен светодиод.

3.7В функции setup() переключите на выход выбранный вывод с подключенным светодиодом, путём изменения состояния необходимого бита конфигурационном регистре.

3.8В функции loop() переключите в «0» вывод для светодиода путём изменения состояния необходимого бита в регистре состояния.

3.9Установите паузу в 0,5 секунды.

3.10В функции loop() переключите в «1» вывод для светодиода путём изменения состояния необходимого бита в регистре состояния.

3.11Установите паузу в 0,5 секунды.

3.12Выполните компиляцию написанного кода нажатием на кнопку

Verify (проверить) (см. рисунок 3).

3.13Загрузите программу в микроконтроллер нажатием на кнопку

Upload (загрузить).

В результате на плате должен начать моргать выбранный светодиод с частотой 1 Гц.

3.14Повторите проделанные действия для других светодиодов.

3.15Создайте новый проект и выполните пункты 3.7 –3.14 , используя функции Arduino IDE.

3.16Используя оператор for, функцию задержки и работу с регистрами, организуйте переключение светодиодов по типу «змейка»: 1) вкл., выкл., выкл., выкл.; выкл., вкл., выкл., выкл.; выкл., выкл., вкл., выкл.; выкл., выкл., выкл., вкл.

3.17Создайте новый проект и повторите программу «змейка», используя функции Arduino IDE.

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

3.19Защитите отчет у преподавателя.

4 Контрольные вопросы

4.1Что такое регистр?

4.2Какого назначение Multi-Function shield?

4.3Перечислите основные регистры процессора для работы с портами ввода-вывода.

4.4Опишите основные подходы для работы с регистрами портов ввода-

вывода.

4.5Опишите основные функции Arduino IDE для работы с портами ввода-вывода.

4.6Опишите настройку третьего вывода порта A на выход с использованием регистров.

4.7Опишите настройку третьего вывода порта A на выход с использованием функций Arduino IDE.

4.8Перечислите основные блоки Arduino UNO.

4.9Перечислите основные блоки Multi-Function shield.

Список литературы

1.Аппаратная часть платформы Arduino.– URL: http://arduino.ru/Hardware (дата обращения: 20.01.2017).

2.Arduino UNO.– URL: https:\\www.rapidonline.com\p df\73-4443.pdf (дата обращения: 10.01.2017).

3.Using an Arduino Multi-function Shield.– URL:

https:\\www.mpja.com\download\hackatronics-arduino-multi-function-shield.pdf (дата обращения: 10.01.2017).

4.Среда разработки Arduino.– URL:

http://arduino.ru/Arduino_environment (дата обращения: 10.01.2017).

5.WinAVR.– URL: http://winavr.sourceforge.net ( дата обращения: 10.01.2017).

6.ATMEL 8-BIT MICROCONTROLLER WITH 4/8/16/32KBYTES, INSYSTEM PROGRAMMABLE FLASH.– URL: http:\\www.atmel.com\images\Atmel-8271-8-bit-AVR-Microcontroller-

ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet_Complete.pdf (дата обращения: 10.01.2017).

7.Сергеев С. Архитектуры вычислительные систем.– СПб:БХВ-

Петербург.– 2010.– 240 с.

8.Справочник языка Ардуино.– URL: http://arduino.ru/Reference ( дата обращения 10.01.2017).

9.UNO Schematic – Arduino.– URL:

https:\\www.arduino.cc\en\uploads\Main\arduino-uno-schematic.pdf (дата обращения: 10.01.2017).