Нужна помощь Беспроводная сигнализация на базе Arduino
- Войдите на сайт для отправки комментариев
Сб, 23/09/2017 - 19:26
нужна помощь делаю проект племяшке
Беспроводная сигнализация на базе Arduino
не могу загрузить скетч
// Include VirtualWire library #include <VirtualWire.h> int led_pin = 13; int transmit_pin = 12; int pir_pin = 2; int val = 0; int pir_state = LOW; void setup() { Serial.begin(9600); vw_set_tx_pin(transmit_pin); vw_setup(4000); // Transmission rate pinMode(led_pin, OUTPUT); pinMode(pir_pin,INPUT); } void loop() { char msg[1] = {'0'}; // Get sensor value val = digitalRead(pir_pin); // Change message if motion is detected if (val == 1) { msg[0] = '1'; digitalWrite(led_pin, HIGH); // Flash a light to show transmitting vw_send((uint8_t *)msg, 1); vw_wait_tx(); // Wait until the whole message is gone if (pir_state == LOW) { Serial.println("Motion detected!"); pir_state = HIGH; } } else { msg[0] = '0'; digitalWrite(led_pin, LOW); vw_send((uint8_t *)msg, 1); vw_wait_tx(); // Wait until the whole message is gone if (pir_state == HIGH) { Serial.println("Motion ended!"); pir_state = LOW; } } }
и
// Include VirtualWire library #include <VirtualWire.h> // Pins definition const int led_pin = 13; const int receive_pin = 12; int pinSpeaker = 10; void setup() { Serial.begin(9600); // Debugging only // Initialise the IO and ISR vw_set_rx_pin(receive_pin); vw_setup(4000); // Transmission rate // Start the receiver PLL vw_rx_start(); // Set LED pin and Buzzer pinMode(led_pin, OUTPUT); pinMode(pinSpeaker, OUTPUT); } void loop() { uint8_t buf[VW_MAX_MESSAGE_LEN]; uint8_t buflen = VW_MAX_MESSAGE_LEN; // Check if a message was received if (vw_get_message(buf, &buflen)) { if(buf[0]=='1') { Serial.println("Motion detected!"); digitalWrite(led_pin,1); playTone(300, 160); delay(150); } if(buf[0]=='0') { Serial.println("Motion ended!"); digitalWrite(led_pin,0); playTone(0, 0); delay(300); } } } // duration in mSecs, frequency in hertz void playTone(long duration, int freq) { duration *= 1000; int period = (1.0 / freq) * 1000000; long elapsed_time = 0; while (elapsed_time < duration) { digitalWrite(pinSpeaker,HIGH); delayMicroseconds(period / 2); digitalWrite(pinSpeaker, LOW); delayMicroseconds(period / 2); elapsed_time += (period); } }
Так, а в чём проблема-то?
при загрузке выдает ошибку компиляции
при загрузке выдает ошибку компиляции
секретную?
А у ошибки текст есть? На него посмотреть можно? Или Вы думаете, что все сейчас кинутся копировать, запускать и т.д.? Это Ваша проблема, так потрудитесь хоть вопрос нормально задать.
я просто не часто на форум обращаюсь но сейчас попробую
Ну, и что Вам тут не понятно? Система не может найти файл VirtualWire.h. Либо его нет, либо он расположен не в той папке, где его ищут.
sega555 - и вообще, разберитесь с путями к файлам. Почему у вас скетч имеет двойное расширение и лежит в дважды вложенной директории?
спасибо огромное добавил файл VirtualWire.h в папку сразу все загрузилось