Друзья, здравствуйте! Хочу попросить помощи у более продвинутых программеров) Проблема такая: совсем недавно начала изучать arduino, хотелось бы спросить что стоит почитать, посмотреть, и т.д. В данный момент читаю Массимо Банзи. И еще поблемка с кодом, хотелось что бы светодиод плано менял яркость с 0 до максимума, навоял я что то вот такое: int ledPin = 11; void setup() { pinMode(11, OUTPUT); } void loop() { int ledLevel = 0; delay(100); ledLevel = ledLevel +51; delay(100); if (ledLevel > 153) ledLevel = 0; } Подскажите пожалуйста, где мои ошибки, и как можно реализовать? Скоммутировал через резистор 220ом, после загрузки скетча светодиод не реагирует. Пыс.Пыс. Прошу сильно не пинать, только начинаю изучение. Заранее благодарен за ответы =)
Я не стану пояснять ваш код и почему он не работает, я лучше дам вам пару ссылок в которых вы найдете нужные вам ответы Хорошие видео-уроки для начинающих на русском. Проект: Маячок с нарастающей яркостью А тут есть список книг которые могут быть вам интересны. Особенно если вы совсем начинающий в программировании, рекомендую изучать язык Си по этой книге. Так как она на мой взгляд лучшее что я только видел для совсем начинающих по Си. Ну и вообще, загляните на Вики амперки, там они очень хорошо потрудились что бы дать много полезной информации.
В IDE в разделе "примеры " есть пример Fade - изменение яркости светодиода, почитайте внимательно коментарии
Я бы так написал хД Код (Text): int ledPin = 11; int ledLevel = 0; int brightnessStep = 5; // шаг нарастания int brightnessMax = 153; // максимальный уровень void setup() { pinMode(ledPin, OUTPUT); } void loop() { ledLevel = ledLevel + brightnessStep; if (ledLevel > brightnessMax) ledLevel = 0; analogWrite(ledPin, ledLevel); // из-за отсутствия этой строчки у тебя не горит светодиод delay(100); }
Помогите новичку тоже) Спасибо Есть три кнопки, при нажатии каждой горит соотвествующая лампочка (кнопки через делители напряжения подают сигналы на аналоговые входы): if(A>0) digitalWrite(pin1,HIGH); if(B>0) digitalWrite(pin2,HIGH); (тут все работает правильно) Но чтобы включить третью лампочку необходимо нажать третью кнопку (С) и чтобы первые две не были нажаты. При этом если нажата 1 или 2 кнопка, то третья лампочка не должна загораться, а загораются соотвественно 1 или 2 лампочка Вроде должно выглядеть так: if(C>0&&(A==0||B==0)) но у меня почему то не работает как надо. При нажатой 1 или 2 кнопки у меня третья лампочка всеравно загорается. Голову сломал, подскажите где ошибка логики построения условия?
{ analog=analogRead(14);//считываем сигнал с пина АЦП if(analog>0&&analog<1020) //здесь я сравниваю значение входящего сигнала для прихожая { if(digitalRead(2)==HIGH&&flag_1==1)//если свет не включен { digitalWrite(2,!digitalRead(2)); //меняем состояние вывода на противоположный flag_1=0; } if(digitalRead(2)==LOW&&flag_1==0)//если свет включен { // digitalWrite(2,!digitalRead(2)); //меняем состояние вывода на противоположный flag_1=1;//обнуляем переменную flag } Serial.print("flag_1= "); Serial.print(flag_1); Serial.print(" PIN-2= "); Serial.println(digitalRead(2)); } други дорогие, помогите наладить код. кнопок 10 на аналог 0, 10 выходов пин2-пин12, 1 нажатие кнопки должно изменять одно состояние пина! то биш будет аналоговый выключатель на 10 кнопок.
Тут читай http://nnm.me/blogs/e-troll/arduino-podklyuchenie-neskolkih-knopok-k-odnomu-analogovomu-vhodu/
спасибо, но с аналоговым входом я уже разобрался, меня интересует как инвертировать цифровой выход при опросе этого же самого выхода при совпадении нажатия той или иной кнопки. то есть один аналоговый вход на 10 кнопок и нужно включать выключать цифровые выходы запрашивая их состояние. а тут загвоздка, они у меня включаются, а потом переключения уже не происходит. так и висит включенный пока не сбросишь!
Показывай свой код . И приучайся писать с пробелами. То что ты выложил в теме читать нормально нельзя - тогда и вероятность помощи ну резко снижается. (надеюсьтыпонялочёмя)