Помогите решить задачку №11 http://wiki.amperka.ru/конспект-arduino:светильник-с-кнопочным-управлением Не могу разобраться в коде, не смотря на то что есть описание. boolean handleClick(int buttonPin, boolean wasUp, int delta) { boolean isUp = digitalRead(buttonPin); if (wasUp && !isUp) { delay(10); isUp = digitalRead(buttonPin); // если был клик, меняем яркость в пределах от 0 до 255 if (!isUp) brightness = constrain(brightness + delta, 0, 255); } Конкретно не понятно от куда берутся значения - int buttonPin, boolean wasUp, int delta Спасибо за подсказку.
Это имена параметров функции, а не значения. Можно написать определение функции так boolean handleClick(int argument_1, boolean argument_2, int argument_3), но запомнить легче осмысленные имена.
Да, моя это понимает), Это просто названия отражающие суть. Мне не понятно чему они равны. До этого урока было все понятно, все значения задавались. Тут же функция с тремя не известными. если можно по примеру if (wasUp && !isUp) Вот wasUp понятно что он будет равен или 0 или 1 т.к он boolean Но чему он будет равен и как это считать я не понимаю. Для меня это непонятно. Или boolean isUp = digitalRead(buttonPin); buttonPin понятно что это какой то пин (digitalRead(pin), но какой? Он не где не задан ранее. Тоже самое и с int delta, какое то целое число которое принимает участие в функции несколькими строками ниже, но от куда берется его значение не понимаю.
В строках 27-38 скетча у вас определение функции, т.е. количество входящих аргументов, их типы и некие вычисления, в которых используются входящие аргументы. В строке 20 скетча у вас происходит вызов этой функции с передачей в нее реальных параметров, т.е будет вызов handleClick (buttonPin=2, wasUp=true, delta=+35). А дальше, думаю, понятно. Рекомендую почитать книги по Arduino: Петин В.А. - Проекты с использованием контроллера Arduino, Улли Соммер - Программирование микроконтроллерных плат ArduinoFreeduino, Блум Джереми - Изучаем Arduino. Инструменты и методы технического волшебства. Можно найти на рутрекере.
Все теперь понял.... Спасибо! За рекомендации спасибо, Блум приобретен, хотел его начать изучать после матрешки.
Мне одной книгой обойтись не получилось, везде чего-то не хватает, готовлю племянникам задания по этим трем книгам + различным интернет ресурсам.
У меня пока двоякое впечатление от уроков "амперки", несомненно они сделали и делают огромное дело, за что им большое Спасибо. Ладно я уже с засаленным мозгом сел за ардуино, тут больше упор на детишек и я от этого в восторге. Двоякость заключается в следующим. Мне кажется стоит давать больше комментариев к коду, хотя подозреваю что какая то неопределенность намерена, это дает возможность подумать ученику своей головой и разобраться самому. Тогда стоит ввести урок в начале о сериал соединении. Данный инструмент был бы полезен, ведь с помощью него можно смотреть все что происходит в реальном времени. Так же не хватает описание в уроках, того что будем делать и как это должно выглядеть на выходе. Возможно не хватает видео материала, в котором можно было более подробно рассказать о уроке. Просто мнение.....
http://wiki.amperka.ru/конспект-arduino Есть и пояснения к коду, вопросы для проверки и задания для самостоятельного решения. Когда я изучал arduino с матрёшкой, мне комментариев было достаточно.
Пришлось чуть отойти от матрешек в сторону изучения c++. Случайно наткнулся на интересный сайт по изучению с++ http://academy.cppstudio.com/ на cppstudio.com есть неплохой учебник справочник. После изучения вернусь, не смотря на то что руки на ардуино чешутся))) Надо начинать с начала. Еще раз всем спасибо за помощь.