Навчитися взаємодіяти з контролером Arduino через послідовний порт.
1.Розробка скетчу для управління вбудованим світлодіодом на платі через послідовний порт.
2. Знайомство з монітором послідовного порту.
3. Оповіщення про перемиканні світлодіода.
1. Комп'ютер.
2. Плата Arduino з USB виходом (наприклад, Arduino Uno) і вбудованим світлодіодом на 13-му порту.
Для програмного взаємодії з послідовним портом призначені об'єкти стандартної бібліотеки Arduino під назвами Serial, Serial1, Serial2 і т.д. Як правило, на кожній платі є один послідовний порт, якому відповідав би об'єкт Serial. Даний порт при підключенні до ПК дозволяє обмінюватися даними з комп'ютером поверх USB. Якщо мікроконтролер від комп'ютера відключений, то Serial дозволяє обмінюватися даними з іншими пристроями через цифрові Піни 0 і 1. Виняток становить тільки Arduino Leonardo, у якій Serial завжди використовується для взаємодії через USB, а для цифрових пинов 0 і 1 використовується окремий об'єкт Serial1
Створюємо новий скетч і зберігаємо його з назвою SerialTest. Перевіряємо, що обрана правильна плата і порт.
У функції setup () инициализируем послідовний порт і 13-й пін для управління світлодіодом:
Serial.begin(9600);
pinMode(13,OUTPUT);
У функції loop () перевіряємо, чи немає даних в послідовному порту. Читаємо дані, і якщо прийшов символ "1", включаємо світлодіод, у всіх інших випадках вимикаємо:
Відкриваємо монітор послідовного порту (Інструменти -> Монітор порту або кнопка вгорі праворуч). З'являється наступне вікно:
В даному вікні виводиться інформація, яка надходить від контролера. У верхньому рядку зліва від кнопки "Відправити" можна писати текст, який відправляється на контролер. У нижньому правому вікні налаштовується швидкість передачі даних і вказується, чи буде до тексту додаватися символ перекладу рядка NL, CR або обидва відразу, або текст буде відправлений як є. Для даної роботи потрібно виставити режим "Немає кінця рядка".
Свіщення про перемиканні світлодіода
Доопрацюємо скетч так, щоб в моніторі порту відображалася інформація про перемиканні світлодіода. Для цього змінимо код функції loop ():
Перевіряємо монітор порту і перевіримо, що тепер при перемиканні світлодіода відображаються оповіщення.