Очень здорово! А когда следующий выпуск? С каким периодом выходят выпуски? Просто нереально круто все рассказано! Очень четко и подробно! Ни в одном видео такого не встречале еще! 5 баллов! Продолжай в том же духе!!!
i guess Im asking randomly but does any of you know of a trick to log back into an instagram account..? I stupidly forgot the password. I love any tricks you can give me
Молодец парень, уроки очень познавательные и полезные. Даже сам вот начал изучать, пока всё получается. Очень профессиональная подача информации, не у всех так хорошо получается. С удовольствием посещал бы ваши уроки, но живу далековато, в Казахстане. Так что жду с нетерпением ваших новых уроков на вашем канале.
Спасибо за уроки, ждет с не терпением продолжения. Единственное хочется попросить всегда сочетать теорию с практикой, как это было в предыдущих уроках. Так на 2:13 минуте так не хватает - " ну на пример ....."
Спасибо, как раз для каждого из показанных вначале элементов графически, я привел затем примеры с кодами :) Согласен, получилось как-то отдельно, не по привычной схеме "теория-пример"
Классный канал, увлекаюс ардуино около года, и много за это время не много понять, особенно за функции с возвращением данных, всё очень хорошо и понятно описано!!! Респект автору!!!!
Спасибо за урок!!!Все хорошо рассказали про функции ,понятно главное.Лично для меня все доступно обьяснили.Буду ждать следующих от Вас уроков.Молодец!!!!
Одно небольшое уточнение. Функция подразумевает, что ты возвращаешь с ней результат вычисления (3 пример). Если этого не происходит, или вывод данных происходит в параметрах, то это уже процедура. Если вывода вообще нет, то подпрограмма. Насколько я понимаю, здесь нет четкого разделения при оформлении, но сути это не меняет.
Блин, ты реально гений! Уже полгода изучаю программирование и постоянно сталкивался с void. Десятки статей читал, но так и не понял, что это означает. Тут один раз посмотрел и все понял. Тебе надо курсы не только по ардуино писать, но и вообще по программированию.
Хорошее видео, хотелось бы в будущем увидеть более подробное объяснение о процедурах и функциях. Например, что значит звездочка и т.п. Например, вот в такой строке: void Main_Task (void * Parameters) или вот в такой: u8 Command (char *cmd, char *ans, u32 timeOut, u8 nTry)
Ошибки нет, из предыдущего примера по возврату цифры 5 осталось. Можно поставить возвращаемый тип bool, такой же, как возвращаемая переменная, главное, не поставить наоборот, возвращение byte при типе bool, тогда будет ошибка при передаче значений отличных от 0 и 1.
Привет! Написал код. Зациклил основную функцию оператором While, привязав ее к пину 5, по другому на знаю как сделать что бы мигание диодов в самом начале не повторялось void setup() { // put your setup code here, to run once: // машинист кнопка pinMode (13, OUTPUT); pinMode (12, INPUT); pinMode (9, OUTPUT); pinMode (10, OUTPUT); pinMode (8, OUTPUT); pinMode (7, OUTPUT); pinMode (5, INPUT); } void loop() { // Начало blinks(); blinks(); blinks(); blinks(); blinks(); blinks(); while (digitalRead (5) == 0) { if (digitalRead (12) == 1) // если выход 12 пина положителен { blinks(); blinks(); blinks(); blinks(); blinks(); blinks(); } else //если выход пина 12 = 0 { for (int pin=10; pin>=7; pin--) { digitalWrite(pin, HIGH); delay(100); } for (int pin=7; pin
Добрый вечер ! Подскажите пожалуйста почему схема не работает от блока питания, а от ПК работает. Два датчика уровня, низ и верх. Пока не наполнится до верхнего, насос не выключится, и когда выключится, то пока до низу не дойдет не включится. От ПК работает нормально. int8_t ledPin = 2; int8_t verhPin = 8; int8_t nizPin = 7; void setup() { pinMode(ledPin, OUTPUT); pinMode(verhPin, INPUT_PULLUP); pinMode(nizPin, INPUT_PULLUP); } void loop() { const int8_t verh = digitalRead(verhPin); const int8_t niz = digitalRead(nizPin); if(niz == LOW && verh == LOW){ digitalWrite(ledPin, LOW); } if(niz == LOW && verh == HIGH){ digitalWrite(ledPin, LOW); } if(niz == HIGH && verh == HIGH) { digitalWrite(ledPin, HIGH); } }
Никак не соображу. У меня получилось: вызов функции 1 (задержка+мигание диода перед проверкой) вызовфункции 2 (задержка+ проверка состояния кнопки) если нажата - включить св-диод, пока не отпущена кнопка и выход из функции, возврат к началу если не нажата - включить динамик и.... что и? как перейти к вызову функции 2, а не вернуться в начало? подумав немного получилось так: void setup() { pinMode(3,INPUT); //кнопка к пин 3 pinMode(8,OUTPUT); //св диод перед проверкой pinMode(9,OUTPUT); //св диод если поверка не пройденна digitalWrite(3,HIGH); //подтягивает кнопку к +5 } void loop() { function_MIGAET(); //ждет 5с и предупреждает о проверке function_PROVERKAiSIGNAL(); //ждет 1с и проверяет отклик машиниста (состояние кнопки) } void function_MIGAET() { delay(5000); // задержка перед сигналом проверки digitalWrite(8,HIGH); delay(500); digitalWrite(8,LOW); // первое мигание delay(500); digitalWrite(8,HIGH); delay(500); digitalWrite(8,LOW); // второе мигание delay(500); digitalWrite(8,HIGH); delay(500); digitalWrite(8,LOW); // третье мигание } void function_PROVERKAiSIGNAL() { delay(1000); if(digitalRead(3)==0) //если кнопка нажата, подтверждает тремя быстрыми миганиями { digitalWrite(8,HIGH); delay(100); digitalWrite(8,LOW); // первое мигание delay(100); digitalWrite(8,HIGH); delay(100); digitalWrite(8,LOW); // второе мигание delay(100); digitalWrite(8,HIGH); delay(100); digitalWrite(8,LOW); // третье мигание } else { while (digitalRead(3)==1) //пока кнопка не нажата, подает сигнал. Как только машинист нажмет кнопку, возвращается в начало. { digitalWrite(9,HIGH); } digitalWrite(9,LOW); } } Как бы вы это укоротили? В этой программе плохо, что машинист не может нажать кнопку прямо в момент мигания и обязан держать, пока не пройдет полный цикл миганий и задержки перед проверкой. А еще вопрос как можно упростить код в части маганий?
Расскажи Пж. Как вынести функцию в отдельный файл? На lua делаю так без проблем и это очень удобно. В arduinoIDE ещё не пробовал. Очень понятно объясняешь так держать !!!
У Вас есть видео как передавать данные видеоизображения камеры (через радиоканал 2Ггц), к примеру с квадрокоптера, на пульт снабженный дисплеем nexton? Если такого нет, то запишите такое видео. Будет очень интересно узнать способы реализации такого проекта.
Спасибо, что пояснил. Только вот не помогло, как мне заставить функцию возвращать значение в основной цикл луп????? Вообще не пойму почему разрабы ардуино до сих пор не могут научить свою плату переваривать тот же питон. На ЕСП он спокойно работает Как бы многие начирающие программисты вздохнули бы с облегчением! Си это просто жопа! А не язык! Что бы написать код, нужно неделями биться головой об монитор! Ища, в чем причина ошибок и неправильной работы. Тем более если делаешь это не регулярно. Порой алгоритм работы, одобренный другими прогами, никак не вяжется с алгоритмом в Си.
Огромное спасибо за уроки, Есть ли какая-нибудь программа что бы не покупать плату а скачать и в виде модели пробовать что получается... (денежек совсем нет, хоть боярышник пей)
все выпуски до этого понятны, но тут же не успевал за ходом мысли... и пересмотрел 2 раза видео сейчас запущу 3й раз ибо из функций понял лишь то что принцип ссылки для уже готового кода... может я тугодум но буду смотреть до тех пор пока не прозрею:)
А тут меня постигла такая фигня, тонна текста в компиляторе вдруг ни с того ни с сего вызвала ошибки, при чем я просто дописал символ и тут ошибка. С какого чёрта ошибка - не понятно - но работать моя система больше не хочет никак, функции видит как "Не объявленные" и я не знаю что делать, бомбит сильно, ошибки я не нашел хотя сколько раз сидел втыкал. Кто столкнулся с этим - напишите мне решение, пожжжаллуйта 3:
привет, можешь мне помочь, я хочу с помощу дальномера смотреть уровень воды в бочке 200лит, могу изменить смм. на литры но инвертировать показания не могу. когда бочка пуста о показывает не 0 литров а 200. спасибо.
Почему вы все говорите "возвращает, возвращает", если функция ничего не возвращает, а выдает? Кто-то неправильно перевел слово RETURN из англоязычной литературы как "возвращать", хотя это слово имеет кучу других синонимов.
Turn - вращать, поворачивать. Return - возвращать. Вот вам пример из английского - He returned to Canada in the fall. А "выдавать" по английски это Issue, и такого синонима нет к слову return в справочниках.
@@Parfen_Rogojin контекст: функция обработала данные и вернула/выдала результат - что вас смущает? Мне кажется более занудной и бессмысленной темы для спора трудно себе представить)
Код, как же это мутно и скучно.... 21 Век на дворе. А мы всё руками стараемся писать. Этим должны заниматься отдельные группы людей, с особенным складом ума. Ладно хоть вёрстка сайтов ушла от такой проблемы! Слава разработчикам различных CMS платформ!
Программирование, в первую очередь, заставляет думать и решать поставленные задачи, а то привыкли все бездумно готовым пользоваться и блоки местами переставлять..
Программированием должны заниматься отдельно обученные и подготовленные люди, не каждый радиолюбитель и обычный человек. А ведь многим хочется сделать какие то интересные вещи на ардуино, и у многих очень богатая фантазия на этот счёт. И что, эти люди должны обязательно стать программистами по твоему мнению? У людей какие то свои заботы, свой стиль жизни семья дети и работа. И хочется в свободное время просто сесть за комп, включить программу, и без выноса мозга сделать что нибудь классное. Так же, как на сегодняшний день легко делают сайты. Пример к твоему высказыванию: Я обычный человек, хочу купить машину, а ты мне говоришь: Хочешь на машине кататься, иди и собери её сам (твои слова далее ->) это заставляет думать и решать поставленные задачи. По твоему вот так в наше время высоких технологий должно быть?
Чтобы без выноса мозга делать классные вещи и была создана платформа Arduino, со своим упрощенным донельзя языком программирования Wiring. Раньше, для создания подобных систем требовались обширные знания как в программировании, так и в электронике, теперь - нет. 10-летние школьники спокойно разрабатывают на этой платформе свои системы и только совсем ленивый человек не сможет в этом разобраться. Если вы не желаете знакомиться с элементарными основами, мое мнение - забудьте об идее работы с микроконтроллером и займитесь другими, более простыми для вас вещами, ничего хорошего из этой идеи не выйдет. Ваш пример с машиной абсолютно не уместен. Хотите купить телефон, машину или охранную систему - покупайте готовую, если не хотите делать самостоятельно, никто вас не заставляет изучать ее устройство, не нужно утрировать. Если желаете сделать что-то свое, совершенно новое, извольте изучить для этого принципы работы с инструментом, также, как например, нужно научиться паять, что бы собрать свою схему. Либо же закажите это у человека, который сделает все за вас. Для Arduino есть специальные программы, с помощью которых человеку вовсе не приходится иметь дело с кодом, но возможности их ограниченны, а пользователи - заядлые любители вопросов на форумах в стиле "А почему не работает мой код". Это тупиковый путь и к веку развития информационных технологий не должен иметь никакого отношения.
Школьники это школьники, молодым всасывающим как губка мозгом. Школьникам намного легче обучаться. А людям за сорок написание и обучение программному коду даётся уже не так легко. И опять же приведу в пример тоже сайтостроение, ведь избавились совсем от вёрстки вручную (написания кода), и все довольны, человек даже с минимальными знаниями компьютера может создать себе полноценный сайт, со всеми прибамбасами которые только можно придумать на сайте. И с ардуино так же можно, даже нужно так сделать, что бы не зависимо от возраста и знаний кода можно было полноценно осуществлять на ардуино свои проекты.
ТЕХ-ОРБИТА вы путаете совершенно разные сферы, Arduino не равно сайтостроению, это абсолютно другая деятельность. Сайтостроение основано на графической части, где нет электронных компонентов и все закономерно, придуман единый стандарт, описание стилей и т.д. К Arduino же можно подключить всё, что угодно - тысячи различных датчиков и устройств, интерфейсы взаимодействия с которыми не опишешь несколькими шаблонными блоками - каждому нужен свой подход. Отсюда возникает ограниченность работы такой среды, нерациональное использование памяти/вычислительной способности микроконтроллера и, как результат, криво работающее нечто, не радующее даже самого создателя. Ардуино и так ругают за то, что ее язык слишком высокоуровневый и иррациональный, вы же хотите что бы лентяям (а по другому таких людей назвать нельзя) еще больше пытались упростить задачу. Из личного опыта - у нас есть люди возрастом и 40, и 50, и 60 лет, которые не брезгуют изучать что-то новое и у них это прекрасно получается, поэтому не нужно говорить про 40 лет и невозможность обучения - это слова тех, кто придумывает себе отговорки, лишь бы всячески упростить жизнь. Повторюсь, мое мнение на этот счет - не желающим знакомиться с программированием, можно заняться рисованием/лепкой из глины/моделированием - тоже творчество, тоже полезно, тоже можно раскрыть свой потенциал и похвастаться друзьям :)
без обид. начали Вы прекрасно, четко объяснили всю электронику, я обрадовался, что и с программированием будет также. но представьте себя на месте начинающего, если сможете.