Помогите разобраться с ошибкой в скетче.
- Войдите на сайт для отправки комментариев
Ср, 15/04/2020 - 21:22
Здравствуйте господа!
С ардуинкой знаком два дня и до этого нигде не программировал. Взял стандартный скетч для клавиатуры с пин-кодом.
Все работает. Теперь стоит задача, что бы при правильно введенном пин-коде зуммер(я так понимаю пассивный) начал пищать на частоте 5500 в течении 40 секунд с изменением количества писков в секунду. Тоесть что бы по истечению времени количество писков нарастало. Я накидал скетч, но конечно же неправильно. Быть может, укажите на ошибку?Или, я прям чувствую что такое есть, на конкретный интрефейс или функцию для подобной задачи?
Заранее спасибо!)
#include <Password.h> #include <Keypad.h> Password password = Password( "7355608" ); int DelaySound = 1000; int DelaySound1 = 750; int DelaySound2 = 500; int DelaySound3 = 333; int DelaySound4 = 250; int DelaySound5 = 150; const byte ROWS = 3; const byte COLS = 4; char keys[ROWS][COLS] = { {'3','6','9','#'}, {'2','5','8','0'}, {'1','4','7','*'}, }; byte rowPins[ROWS] = {4, 8, 6}; byte colPins[COLS] = {7, 2, 9, 5}; Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS ); void setup(){ Serial.begin(9600); keypad.addEventListener(keypadEvent); } void loop(){ keypad.getKey(); } void keypadEvent(KeypadEvent eKey){ switch (keypad.getState()){ case PRESSED: Serial.print("Pressed: "); Serial.println(eKey); switch (eKey){ case '*': checkPassword(); password.reset(); break; case '#': password.reset(); break; default: password.append(eKey); } } } void checkPassword(){ if (password.evaluate()){ Serial.println("Bomb has been planted"); void setup(){ } void loop() { tone(11, 5500); delay(DelaySound); tone(11, 5500); delay(DelaySound); tone(11, 5500); delay(DelaySound); tone(11, 5500); delay(DelaySound); tone(11, 5500); delay(DelaySound); tone(11, 5500); delay(DelaySound); tone(11, 5500); delay(DelaySound); tone(11, 5500); delay(DelaySound); tone(11, 5500); delay(DelaySound); tone(11, 5500); delay(DelaySound); tone(11, 5500); delay(DelaySound1); tone(11, 5500); delay(DelaySound1); tone(11, 5500); delay(DelaySound1); tone(11, 5500); delay(DelaySound1); tone(11, 5500); delay(DelaySound1); tone(11, 5500); delay(DelaySound1); tone(11, 5500); delay(DelaySound2); tone(11, 5500); delay(DelaySound2); tone(11, 5500); delay(DelaySound2); tone(11, 5500); delay(DelaySound2); tone(11, 5500); delay(DelaySound2); tone(11, 5500); delay(DelaySound2); tone(11, 5500); delay(DelaySound3); tone(11, 5500); delay(DelaySound3); tone(11, 5500); delay(DelaySound3); tone(11, 5500); delay(DelaySound3); tone(11, 5500); delay(DelaySound3); tone(11, 5500); delay(DelaySound3); tone(11, 5500); delay(DelaySound4); tone(11, 5500); delay(DelaySound4); tone(11, 5500); delay(DelaySound4); tone(11, 5500); delay(DelaySound4); tone(11, 5500); delay(DelaySound4); tone(11, 5500); delay(DelaySound4); tone(11, 5500); delay(DelaySound4); tone(11, 5500); delay(DelaySound4); tone(11, 5500); delay(DelaySound5); tone(11, 5500); delay(DelaySound5); tone(11, 5500); delay(DelaySound5); tone(11, 5500); delay(DelaySound5); tone(11, 5500, 1500); noTone(9); }else{ Serial.println("error"); } }
убрать сетап и луп из функции checkPassword и избавится от delay
С ардуинкой знаком два дня
до этого нигде не программировал.
накидал скетч ... для клавиатуры с пин-кодом.
Два дня и сразу на форум - "памагити"? Может самому поработать хотя бы полгодика? Язык изучить, попрактиковаться "на
кошкахмигании светодиодами"?Вы правда думаете, что можно зайти с улицы и сразу начать программировать?
"Накидайте" лучше мигание светодиодом (ну, или навоз на клумбу).
шо_апять? ))))))))))))))))))))))))))
Так без delay, функция tone будет непрерывна(((
что опять?
Мне нужна одна конкретная задача от ардуинки. В чем проблема подсказать?
Ох***евшие программисты пошли. Я же не говорю всем, кто спрашивает меня «а как приготовить вкусный шашлык?а как варить пасту до состояния альденте?а как пожарить сочный ангус стейк дома?» может сначала отучишься в универе 4 года, потом поработаешь на производстве и в рестиках 5 лет и сам во всем разберешься?
Я почему-то беру и подсказываю человеку и прикинь, я еще как то не умер от этого.
Так без delay, функция tone будет непрерывна(((
ленивый всегда найдёт отговорку. Ох..евший "программист" это как раз про тебя .
Как готовить шашлык знают все. Поэтому при подсказках по шашлыку не надо вдаваться в детали. Достаточно немного подсказать. Для меня первый ответ совершенно понятен и совершенно справедлив. Его достаточно что бы исправить ошибки. Это именно ответ на уровне подсказки по шашлыку. Почему такая обида? Читать лекции по основам программирования это точно задача не форума, а института.
Я почему-то беру и подсказываю человеку и прикинь, я еще как то не умер от этого.
так тебе уже тоже подсказали.