Эксперимент Маячок


Эксперимент 19. Светильник, управляемый по USB



бет40/45
Дата13.02.2023
өлшемі1,82 Mb.
#67503
түріЗакон
1   ...   37   38   39   40   41   42   43   44   45
Эксперимент 19. Светильник, управляемый по USB
← Тестер батареек | Оглавление | Перетягивание каната →

В этом эксперименте мы отправляем устройству команды, как ему светить.


Список деталей для эксперимента

  • 1 плата Arduino Uno

  • 1 беспаечная макетная плата

  • светодиод

  • резистор номиналом 220 Ом

  • 2 провода «папа-папа»

Принципиальная схема

Схема на макетке

Скетч
p190_serial_brightness.ino
#define LED_PIN 9
// для работы с текстом существуют объекты-строки (англ. string)
String message;
void setup()
{
pinMode(LED_PIN, OUTPUT);
Serial.begin(9600);
}
void loop()
{
// передаваемые с компьютера данные поставляются байт за
// байтом, в виде отдельных символов (англ. character). Нам
// нужно последовательно их обрабатывать пока (англ. while)
// в порту доступны (англ. available) новые данные
while (Serial.available()) {
// считываем (англ. read) пришедший символ в переменную
char incomingChar = Serial.read();
// не стоит путать целые числа и символы. Они соотносятся
// друг с другом по таблице, называемой кодировкой. Например
// '0' — это 48, '9' — 57, 'A' — 65, 'B' — 66 и т.п. Символы
// в программе записываются в одинарных кавычках
if (incomingChar >= '0' && incomingChar <= '9') {
// если пришёл символ-цифра, добавляем его к сообщению
message += incomingChar;
} else if (incomingChar == '\n') {
// если пришёл символ новой строки, т.е. enter, переводим
// накопленное сообщение в целое число (англ. to integer).
// Так последовательность символов '1', '2', '3' станет
// числом 123. Результат выводим на светодиод
analogWrite(LED_PIN, message.toInt());
// обнуляем накопленное сообщение, чтобы начать всё заново
message = "";
}
}
// посылайте сообщения-числа с компьютера через Serial Monitor
}


Достарыңызбен бөлісу:
1   ...   37   38   39   40   41   42   43   44   45




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет