Cat hungry.png
Здравствуйте! Собираем деньги на перевод материалов по электронике(https://www.allaboutcircuits.com/education/). Реквизиты указаны здесь.

Arduino:Примеры/x10Multi

Материал из Онлайн справочника
Перейти к: навигация, поиск

Перевод: Максим Кузьмин (Cubewriter)
Перевел 2686 статей для сайта.

Контакты:

Проверка/Оформление/Редактирование: Мякишев Е.А.


Включение/выключение нескольких лампочек[1]

Этот пример показывает, как при помощи библиотеки X10 наладить удаленное управление двумя лампочками, включая и выключая их.

Код

  1. /*
  2.   Включение/выключение нескольких лампочек
  3.  
  4.  Включает и выключает устройства, работающие на переменном токе.
  5.  Пример был написан для одностороннего X10-контроллера PL513
  6.  от http://www.smarthome.com (используется в качестве модема)
  7.  и двух ламповых модулей Powerhouse X10 от Smarthome.
  8.  
  9.  Кодом для первого модуля будет «1», а для второго – «2».
  10.  
  11.  Создан 17 июня 2007 года,
  12.  модифицирован 6 мая 2011 года Томом Иго (Tom Igoe)
  13.  */
  14.  
  15. // Подключаем файлы библиотеки X10:
  16. #include <x10.h>
  17.  
  18. const int rxPin = 3;    // контакт для приема данных
  19. const int txPin = 4;    // контакт для передачи данных
  20. const int zcPin = 2;    // контакт для перехода через ноль
  21.  
  22.  
  23. void setup() {
  24.   // запускаем последовательную коммуникацию:
  25.   Serial.begin(9600);
  26.   x10.begin(rxPin, txPin, zcPin);
  27.   // выключаем все модули:
  28.   x10.beginTransmission(A);
  29.   x10.write(ALL_UNITS_OFF);
  30.   x10.endTransmission();
  31. }
  32.  
  33. void loop() {
  34.   x10.beginTransmission(A);
  35.   // включаем первый модуль:
  36.   x10.write(UNIT_1);              
  37.   x10.write(ON);  
  38.   // выключаем второй модуль:  
  39.   x10.write(UNIT_2);            
  40.   x10.write(OFF);
  41.   delay(500);
  42.   // выключаем первый модуль:
  43.   x10.write(UNIT_1);
  44.   x10.write(OFF);
  45.   // включаем второй модуль:
  46.   x10.write(UNIT_2);              
  47.   x10.write(ON);
  48.   delay(500);
  49.   x10.endTransmission();
  50. }

См.также

Внешние ссылки

  1. github.com - x10Multi.ino