Включение, выключение, регулировка ШИМ
- Войдите на сайт для отправки комментариев
Пнд, 28/09/2020 - 16:52
Здравтсвуйте.
мне нужно регулировать ШИМ в зависимости от нажатой кнопки (есть код кнопки)
// on if (receivedCode==66100) { analogWrite(6, 255); } // off if (receivedCode==66132) { analogWrite(6, 0); } // ступенчатое увеличение яркости if (receivedCode==66099) { //AR6=analogRead(6); // текущее значение яркости //AR6 = map(analogRead(6), 0, 1023, 1, 255); AR6 = analogRead(6); lcd.setCursor(0, 1); lcd.print(AR6); if (AR6>250) {return;}// ничего не делаем - яркость максимальная analogWrite(6, AR6/4+20); // если дошли до этой строки уменьшаем якрость } // ступенчатое уменьшение яркости if (receivedCode==66105) { //AR6=analogRead(6); // текущее значение яркости //AR6 = map(analogRead(6), 0, 1023, 1, 255); AR6 = analogRead(6); lcd.setCursor(0, 1); lcd.print(AR6); if (AR6<20) {return;}// ничего не делаем - яркость минимальная analogWrite(6, AR6/4-20); // если дошли до этой строки увеличиваем якрость }
функция AnalogRead(6) выдает какую то дичь. Когда я включаю шим, то посылаю 255 в AnalogWrite().
А когда опрашиваю AnalogRead(), то должне получить 1023, а получаю ерунду.
Что здесь не так.
(в коде пытаюсь сделать ступенчаное регулирование)
ШИМ в ардуине не аналоговый сигнал, а цифровой. Его нельзя напрямую мерять с помощью AnalogRead.
А как его измерить?
https://www.google.com/search?q=сглаживание+шим+сигнала
https://www.google.com/search?q=%D0%BF%D1%80%D0%B5%D0%BE%D0%B1%D1%80%D0%...
А как его измерить?
А нахер те его мерить? При 0-255 восьмибитки сдвинь 0-1023 вправо два раза и буит те тож-самое, шо ты намеряшЪ с ШИМа через ФНЧ.
согласен, дурень я.
записал в ЕЕPROM, и обновляю при изменении.
А нахер те его мерить? При 0-255 восьмибитки сдвинь 0-1023 вправо два раза и буит те тож-самое, шо ты намеряшЪ с ШИМа через ФНЧ.
но в этом месте не понял, попрошу пояснить. Если можно куском кода. Спасибо
А если ШИМ не сглаженнвй/фильтрованный, то можно цифровым пином скважность померять.
Здравтсвуйте.
мне нужно регулировать ШИМ в зависимости от нажатой кнопки (есть код кнопки)
функция AnalogRead(6) выдает какую то дичь. Когда я включаю шим, то посылаю 255 в AnalogWrite().
А когда опрашиваю AnalogRead(), то должне получить 1023, а получаю ерунду.
Что здесь не так.
Ну, как уже сказали мерять ШИМ АЦП без сглаживание плохая идея, это раз
Потом вы в курсе, что AnalogRead(6) и AnalogWrite(6)работают с совсем разными пинами? В первом случае это А6 , а во втором D6
Потом вы в курсе, что AnalogRead(6) и AnalogWrite(6)работают с совсем разными пинами? В первом случае это А6 , а во втором D6
странно... это все. Почему такая неочевидность. Надо для аналоговых пинов букву А писать перед пином, например А6, уже сталкивался с такой фигней. Но в любом случае мне это мало чем поможет. тем более что я нашел другое решение и уже реализовал его на практике.
Кстати , когда это все делал мне в голову приходила эта мысль.
Потом вы в курсе, что AnalogRead(6) и AnalogWrite(6)работают с совсем разными пинами? В первом случае это А6 , а во втором D6
странно... это все. Почему такая неочевидность. Надо для аналоговых пинов букву А писать перед пином, например А6, уже сталкивался с такой фигней. Но в любом случае мне это мало чем поможет. тем более что я нашел другое решение и уже реализовал его на практике.
Кстати , когда это все делал мне в голову приходила эта мысль.
Читайе документацию на используемые функции, там все написано.
Кстати AnalogRead(5) и AnalogRead(А5) это одно и то же. Но во втором случае нагляднее.
странно... это все. Почему такая неочевидность.
Дело в том, что аналогового выхода (ЦАП) в ардуине нет (* в большинстве моделей). Поэтому analogWrite() работает с цифровыми пинами и ШИМ. Т.е. analogWrite на самом деле никакой не analog... Зачем разработчики изначально неправильной терминологией вводят пользователей в заблуждение - непонятно. Функцию логично было бы назвать pwmWrite() или pwmOut().
Ребята, подскажите что я опять тут нахамутал.
хочу плавно включить, расчитываю,что delay(500) это 0.5 сек. Стало быть если яркость =250, то 125 секунд будет гаснуть. А гаснет в натуре за 1 сек. В чем ппроблемаа?
логарифм знаешь чо такое?
P.S. Хотя, тут не в логарифме дело.
P.S. Хотя, тут не в логарифме дело.
загадками говоришь?
За логарифм знал раньше. И производную с площадью криволинейной трапецией тоже грыз. Когда-то.
А чему AR6 равно то? И как в еепром это значение попало? И какого типа AR и AR6?
логарифм знаешь чо такое?
Дет пахож НАТУРАЛЬНЫМ лагариффмом сёдня закусывал ))))))))))))))))))))))
За логарифм знал раньше. И производную с площадью криволинейной трапецией тоже грыз. Когда-то.
Уотт те делать нех, каг грысть ГМО фсякое...
Ты зайди на агарот, памидорки, агурчики, йаблочки... фкуснатенЪ!!!
логарифм знаешь чо такое?
Дет пахож НАТУРАЛЬНЫМ лагариффмом сёдня закусывал ))))))))))))))))))))))
Натуральным. Токашто с грятки.
а если?