- •Введение
- •1.2. Начало работы с Arduino
- •2.Практические задания Практическое задание №1
- •Практическая работа №2
- •Практическая работа №3
- •Практическая работа №4
- •Видеоуроки по Arduino от Джереми Блум. [Электронный ресурс].-Режим доступа: http://amperka.Ru/ ( дата обращения: 23.04.15)
- •Все об Arduino Uno. [Электронный ресурс].- Режим доступа: http://arduino.Ua/ru/hardware/Uno ( дата обращения: 28.04.15 )
2.Практические задания Практическое задание №1
«Управление светодиодом»
В этой работе необходимо было запрограммировать Arduino мигать светодиодом, который встроен в плату и подключен к контакту 13.
Для этого был задан порт, определены контакты входа и выхода и установлена задержка во включенном и выключенном состоянии светодиода.
3 секунды светодиод горит, 1 секунду выключен
int Led=13;
//LED подсоединен к выводу 13
void setup ()
//выполняется действие один раз
{ pinMode(Led, OUTPUT);
// устанавливаем вывод 13, как выход
}
void loop ()
//повторение команды
{
digitalWrite(Led, HIGH);
// включаем LED
delay(3000);
// пауза 3 секунда
digitalWrite(Led, LOW);
// выключаем LED
delay(1000);
// пауза 1 секунда
}
0,2 секунды светодиод горит, 0,2 секунду выключен
int Led=13;
void setup ()
{ pinMode(Led, OUTPUT);
}
void loop ()
{
digitalWrite(Led, HIGH);
delay(200);
digitalWrite(Led,LOW);
delay(200);
}
1 секунду светодиод горит, 0,3 секунды выключен
int Led=13;
void setup ()
{ pinMode(Led, OUTPUT);
}
void loop ()
{
digitalWrite(Led, HIGH);
delay(1000);
digitalWrite(Led,LOW);
delay(300);
}
0,5 секунды светодиод горит, 2,5 секунды выключен
int Led=13;
void setup ()
{ pinMode(Led, OUTPUT);
}
void loop ()
{
digitalWrite(Led, HIGH);
delay(500);
digitalWrite(Led,LOW);
delay(2500);
}
После подключения Arduino к компьютеру, была загружена программа в контроллер и получено мигание светодиода с учетом заданных параметров в программе, которая указывает светодиоду время во включенном и выключенном состоянии и повторяет мигание благодаря функции void loop ().
Практическая работа №2
«Простое шифрование сигнала. Азбука Морзе»
В этой работе необходимо было составить программу для Arduino, выполняя которую контроллер миганием светодиода передаст информацию о слове из шести букв, с использованием азбуки Морзе за слово из шести букв было принято слово «МОЛОКО». Для этого был задан порт, определены контакты входа и выхода, слово было зашифровано миганием светодиода, за единицу времени принимается длительность одной точки. Длительность тире равна трём точкам. Пауза между элементами одного знака - одна точка, между знаками в слове - три точки.
int Led=13;
void setup ()
{ pinMode(Led, OUTPUT);
}
void loop ()
{
digitalWrite(Led,LOW);
delay(5000);
//M
digitalWrite(Led, HIGH);
delay(3000);
digitalWrite(Led,LOW);
delay(1000);
digitalWrite(Led,HIGH);
delay(3000);
//пауза между буквами
digitalWrite(Led,LOW);
delay(3000);
//O
digitalWrite(Led,HIGH);
delay(3000);
digitalWrite(Led,LOW);
delay(1000);
digitalWrite(Led,HIGH);
delay(3000);
digitalWrite(Led,LOW);
delay(1000);
digitalWrite(Led,HIGH);
delay(3000);
//пауза между буквами
digitalWrite(Led,LOW);
delay(3000);
//Л
digitalWrite(Led,HIGH);
delay(1000);
digitalWrite(Led,LOW);
delay(1000);
digitalWrite(Led,HIGH);
delay(3000);
digitalWrite(Led,LOW);
delay(1000);
digitalWrite(Led,HIGH);
delay(1000);
digitalWrite(Led,LOW);
delay(1000);
digitalWrite(Led,HIGH);
delay(1000);
//пауза
digitalWrite(Led,LOW);
delay(3000);
//О
digitalWrite(Led,HIGH);
delay(3000);
digitalWrite(Led,LOW);
delay(1000);
digitalWrite(Led,HIGH);
delay(3000);
digitalWrite(Led,LOW);
delay(1000);
digitalWrite(Led,HIGH);
delay(3000);
//пауза
digitalWrite(Led,LOW);
delay(3000);
//К
digitalWrite(Led,HIGH);
delay(3000);
digitalWrite(Led,LOW);
delay(1000);
digitalWrite(Led,HIGH);
delay(1000);
digitalWrite(Led,LOW);
delay(1000);
digitalWrite(Led,HIGH);
delay(3000);
//пауза
digitalWrite(Led,LOW);
delay(3000);
//О
digitalWrite(Led,HIGH);
delay(3000);
digitalWrite(Led,LOW);
delay(1000);
digitalWrite(Led,HIGH);
delay(3000);
digitalWrite(Led,LOW);
delay(1000);
digitalWrite(Led,HIGH);
delay(3000);
//пауза
digitalWrite(Led,LOW);
delay(3000);
}
2) Составить программу для Arduino, выполняя которую контроллер миганием светодиода передаст информацию о пароле из пяти символов, с использованием азбуки Морзе. Одна «точка» равна 0,5 секунды. Паролем являлось «СЫР:7».
int Led=13;
void setup ()
{ pinMode(Led, OUTPUT);
}
void loop ()
{
digitalWrite(Led,LOW);
delay(5000);
//C
digitalWrite(Led, HIGH);
delay(500);
digitalWrite(Led,LOW);
delay(500);
digitalWrite(Led,HIGH);
delay(500);
digitalWrite(Led,LOW);
delay(500);
digitalWrite(Led,HIGH);
delay(500);
//пауза
digitalWrite(Led,LOW);
delay(1500);
//Ы
digitalWrite(Led,HIGH);
delay(1500);
digitalWrite(Led,LOW);
delay(500);
digitalWrite(Led,HIGH);
delay(500);
digitalWrite(Led,LOW);
delay(500);
digitalWrite(Led,HIGH);
delay(1500);
digitalWrite(Led,LOW);
delay(1500);
digitalWrite(Led,HIGH);
delay(500);
digitalWrite(Led,HIGH);
delay(1500);
//пауза
digitalWrite(Led,LOW);
delay(1500);
//Р
digitalWrite(Led, HIGH);
delay(500);
digitalWrite(Led,LOW);
delay(500);
digitalWrite(Led,HIGH);
delay(1500);
digitalWrite(Led,LOW);
delay(500);
digitalWrite(Led, HIGH);
delay(500);
//пауза
digitalWrite(Led,LOW);
delay(1500);
//:
digitalWrite(Led,HIGH);
delay(1500);
digitalWrite(Led,LOW);
delay(500);
digitalWrite(Led,HIGH);
delay(1500);
digitalWrite(Led,LOW);
delay(500);
digitalWrite(Led,HIGH);
delay(1500);
digitalWrite(Led,LOW);
delay(500);
digitalWrite(Led, HIGH);
delay(500);
digitalWrite(Led,LOW);
delay(500);
digitalWrite(Led, HIGH);
delay(500);
digitalWrite(Led,LOW);
delay(500);
digitalWrite(Led, HIGH);
delay(500);
//пауза
digitalWrite(Led,LOW);
delay(1500);
//7
digitalWrite(Led,HIGH);
delay(1500);
digitalWrite(Led,LOW);
delay(500);
digitalWrite(Led,HIGH);
delay(1500);
digitalWrite(Led,LOW);
delay(500);
digitalWrite(Led, HIGH);
delay(500);
digitalWrite(Led,LOW);
delay(500);
digitalWrite(Led, HIGH);
delay(500);
digitalWrite(Led,LOW);
delay(500);
digitalWrite(Led, HIGH);
delay(500);
После подключения Arduino к компьютеру, была загружена программа в контроллер и получено мигание светодиода, которое несло в себе зашифрованное слово и пароль. Путем анализа мигания светодиода, были выявлены точки и тире, указывающие на букву либо паузу между буквами, и расшифровано слово и пароль. Таким образом, с помощью Arduino и светодиода можно передавать слова, зашифрованные в азбуке Морзе.
