Как остановить выполнение действия?

Тема в разделе "Флудилка", создана пользователем Храпундель, 21 янв 2020.

  1. parovoZZ

    parovoZZ Гуру

    Не исполнять код, который выполняет опрос.

    Я вот так скажу: надо начинать с основ. Со светодиода. Помигать им. Пошимить. Потом кнопки изучить. Привязать кнопки к светодиодам. И т.д. Т.е. должно быть тотальное понимание всего того, что делает написанный код. Тогда можно будет уже и чужой код пытаться разбирать. А ставить для себя неподъёмные цели - в этом смысла точно никакого нет.
     
  2. Я нуб в программировании, и не каждый день (да что там день..не каждый месяц) сижу с ардуинками. Загорелся "недопроектом" и решил его воплотить. Желание что-то спрашивать отпадает полностью из-за таких умных людей, которые пытаются показать свою значимость.
    Занимаюсь этим как желание придет. Я прекрасно понимаю ход ваших мыслей. Если нет желания помочь или поделиться, то пройдите мимо. не надо так.
    Вы обладаете большим знанием и это хорошо. Спасибо за совет:)
     
    alp69 и SergeiL нравится это.
  3. parovoZZ

    parovoZZ Гуру

    Я тоже. У меня нет программерского образования.

    так и я не каждый

    Я сейчас тоже загорелся необычным проектом. Но чтобы его воплотить, надо прочитать оооочень много всего и всё (абсолютно всё!) англоязычное. Тема такая, что на российских форумах спрашивать бессмысленно. На ютубах ролики есть, но все тоже на ангельском. Остаётся только англоязычный форум на сайте производителя. Но на данном этапе я даже не представляю, что там спрашивать. Ну т.е. ситуация один-в-один с твоей. Но есть один нюанс(с). Поэтому остаётся только одно: УЧИТЬСЯ. С самых основ.
     
    Храпундель нравится это.
  4. SergeiL

    SergeiL Оракул Модератор

    Так, чтобы сделать что-то, и что будет долго и стабильно работать, нужно разобраться с вопросом.
    Спрашивать можно, и думаю нормально ответят, но сначала нужно разобраться, что сделано и как это сделано.
    Сделать что то простое и посмотреть как это работает. Доработать, переделать...
     
    Храпундель нравится это.
  5. Этим и занимаюсь. Думаю мой вопрос не сложный для многих прочитавших мою цель но не для меня (на сегодняшний день). Работал с основами и со светодиодами, и кнопками.
    Не сразу же вышел на форум. Долгое время "гулял" по интернету в поисках ответа. Решил сократить путь к цели и спросил .
     
  6. SergeiL

    SergeiL Оракул Модератор

    Выкладывайте ваш скетч, и задавайте вопрос, что у вас не получается или не так работает.
     
  7. Код (C++):
    void loop () {
      digitalWrite(Trig, HIGH);
      /* Подаем импульс на вход trig дальномера */
      delayMicroseconds(10); // равный 10 микросекундам
      digitalWrite(Trig, LOW); // Отключаем
      impulseTime=pulseIn(Echo, HIGH); // Замеряем длину импульса
      distance_sm=impulseTime/58; // Пересчитываем в сантиметры
      Serial.println(distance_sm); // Выводим на порт
      if (distance_sm<30) // Если расстояние менее 30 сантиметром
    { // На этом этапе происходит вкл/выкл mp_3
      mp3_play(random(1, 5));;
      Serial.println("Play");
    Не до конца понимаю, как остановить этот участок кода. Ставил уменьшение длины дистанции (if (distance_sm<10) ), думал это заглушит датчик когда человек заинтересуется и подойдет к устройству, но нет. Ставил в else{} остановку проигрывания, но это заставило полностью заглушить плеер даже нажав кнопку....
     
  8. a1000

    a1000 Гуру

    Не подскажите, а что это за переменные
    Код (C++):
    // переменная для хранения текущего время работы программы в мс
    unsigned long currentMillis = 0;
    // переменная для хранения времени работы программы
    // с последнего резкого вверх скачка вредных газов
    long previousMillisPlay = 0;
    // переменная для хранения времени работы программы
    // с последнего вывода данных в Serial
    long previousMillisSerial = 0;
    и для чего они нужны?
     
  9. parovoZZ

    parovoZZ Гуру

    По переменной-флагу. Флаг установить по событию, сбросить по окончании события.
     
  10. a1000

    a1000 Гуру

    Да у него в коде всё смешано в большую кучу. Какие-то левые переменные, какие-то вредные газы. Само объяснение алгоритма выполнения не понятное.
    Как с помощью дальномера привлекать внимание оператора?
    По какому событию надо останавливать работу дальномера? По какому событию возобновлять?
    ТС сам до конца не понимает что он хочет в результате.
     
  11. В глаз ему (оператору) дальномерить.
    А что за нытье такое ? Вы хотя бы что-то сделали ? Или тупо взяли чей-то код, выложили на форуме, и думаете что кто-то будет сидеть и разбираться, а вам готовенький выложить ?
     
  12. kraus

    kraus Нерд

    Храпундель
    Я тоже не программер ни разу.Совсем..
    attachInterrupt() не пробовали использовать?
    https://www.arduino.cc/reference/en/language/functions/external-interrupts/attachinterrupt/

    Здесь ведь никто никому ничего не должен. Все умнички, красуются. А помочь - да ты что...ниже достоинства помочь начать понимать...
    У меня всегда подмывает спросить: а нахрен этот форум нужен тогда? - для обсирания новичков, или тех кто пытается разобраться?
    Мне всегда казалось что форумы создаются для общения и помощи.
    И ведь читал посты господ, которые выёживаются, по разным темам - так ни одного толкового поста одни понты и пустобрёх, иной раз думаю: а действительно ли эти гражданы такие умнички что умеют писать программы?
    Просто не обращайте внимания на этих.
    Кто-нибудь да поможет..не здесь так на другом форуме.
    Я вот тоже не понимаю на кой чёрт изучать весь С++, если нужно только программирование на ардуинке.., да и то - ради пары-тройки проектов.
    Если их помогут сделать, то и ладно... а после пары проектов вдруг появится тяга дальше всякие хрени делать - тогда и изучение в радость, самостоятельно тогда изучит человек от корки до корки. Так что не понимаю отношения посвящённых к людям просящих помощи на пару проектов.
     
    Последнее редактирование: 25 янв 2020
  13. Daniil

    Daniil Гуру

    Ложь.
    kraus не выдержал этой темы, вот теперь и зол на всё и вся.
     
    Последнее редактирование: 25 янв 2020
    b707 и DIYMan нравится это.
  14. b707

    b707 Гуру

    до этого он приходил клянчить на Ардуино.ру ровно по тому же сценарию - сначала "помогите разобраться", потом отмазки "мне срочно" и "очень надо, помогите сейчас, а я потом все выучу", а когда стало очевидно, что готового кода не будет - полились претензии и оскорбления. Причем было это в июле.
    С тех пор прошло полгода - ничего не изменилось, на изучение с++ времени так и не нашлось, а на то чтоб ныть на форумах, врать что "ардуинку неделю изучаю" и потом обвинять всех в жлобстве - предостаточно.
     
    Последнее редактирование: 26 янв 2020
    ДеКодер, Asper Daffy и DIYMan нравится это.
  15. a1000

    a1000 Гуру

    Ну так и не учите весь, ищите ответы на возникшие вопросы выборочно. Некоторое время это может и будет прокатывать, но со временем всё таки все приходят к выводу о необходимости фундаментальных знаний.
    И о видах помощи. Когда я пытаюсь соорудить какую-либо фиговину, я не пытаюсь сразу сделать всё. Я отдельно "обкатываю" каждый датчик, дисплей и т.д. Когда с каждым элементом задуманного устройства удаётся установить взаимопонимание (получаю адекватные данные с датчиков, на дисплей выводится то что мне нужно.....) я начинаю по одному объединять их в устройство. Непонятки могут возникнуть на первом этапе. Тут вопросов нет - спрашивайте, помогут. Если со всеми элементами разобрались, объединение проходит без проблем. Ну а если человек надрал кусков из чужих скетчей и свалил всё это в свой, не особо заботясь об их взаимодействии (а это видно сразу), то на вопрос - почему это не работает ответить трудно.
     
    ИгорьК, DIYMan, b707 и ещё 1-му нравится это.
  16. parovoZZ

    parovoZZ Гуру

    Форум для ответов на вопросы, а не написания программ фактически с нуля.
     
  17. kraus

    kraus Нерд

    Не выдержал тупизма гуру, гиков и др, которые только балаболят, вместо того чтобы объяснить трудные места, а не тратить своё время на спам. Лучше бы такие проходили мимо. Не зол на всё и вся, а только на этих самых. Оно так и обучиться быстрее было бы.
    Была одна затыка, но спасибо SergeiL что помог в трудном месте разобраться. Больше и не надо было. А вы тут хай подняли как макаки.;)
     
  18. kraus

    kraus Нерд

    Клянчите вы, уважаемый, а я приходил просить. И действительно надо было побыстрее сделать эту хрень.
    Ничего не изменилось, да, за исключением того что и без вашей помощи давно сделал то что хотел. И можно сказать что и С++ изучил на столько, сколько надо. И полгода близко не подходил - не надо было. И варежку не открывайте о том чего не знаете,Гуру.
    Трындеть не надо, уважаемый.
     
    Последнее редактирование: 26 янв 2020
  19. Asper Daffy

    Asper Daffy Иксперд

    А если изучил, так чего ж опять здесь? Или всё ж не "настолько"? Недоучил маленько? :)
     
  20. Airbus

    Airbus Радиохулиган Модератор

    Как остановить?Дык просто же.Вынул батарейку и все!