Как в ардуино сделать мультивибратор
- Войдите на сайт для отправки комментариев
Сб, 14/11/2020 - 21:58
Доброго времени суток, работаю в фл прог, обнаружил такой прикол. Есть генератор, он работает как мультивибратор. Делаю его симметричным, отрабатывает ровно половину периода и вырубает сигнал на пине.
Вот код самого мультивибратора, подозрение на последнюю строку.
bool _gen1I = 0;
bool _gen1O = 0;
unsigned long _gen1P = 0UL;
void setup()
{
pinMode(7, OUTPUT);
digitalWrite(7, 0);
}
void loop()
{
//Плата:1
if (!(0)) { if (! _gen1I) { _gen1I = 1; _gen1O = 1; _gen1P = millis(); } } else { _gen1I = 0 ; _gen1O= 0;}
if (_gen1I) { if ( _isTimer ( _gen1P , 1 )) { _gen1P = millis(); _gen1O = ! _gen1O;}}
digitalWrite(7, _gen1O);
}
bool _isTimer(unsigned long startTime, unsigned long period )
{
unsigned long currentTime;
currentTime = millis();
if (currentTime>= startTime) {return (currentTime>=(startTime + period));} else {return (currentTime >=(4294967295-startTime+period));}
}
FLProg к Ардуине имеет такое же отношение, как и мухоморы к здоровому питанию. Обратитесь на форум сообщества этого генератора бреда.
Обратитесь на https://flprog.ru/forum/
Увы, там тоже не всё так просто, мне удалось понять из переписки, это глюк millis. Может просто поправить в коде и больше не заморачиваться? Мне она нравится по быстроте, но вот некоторые ее функции просто убивают.
Не повредит почитать "прерывания по таймеру".
Вы не поняли. Здесь очень не любят flprog и Ваше упорное желание навязать его обсуждение выглядит троллингом.
Спасибо
При преобразовании в иде - код вроде читаемый. У меня подозрение на последнюю строку. Про то что не любят, это жаль, надо смотреть шире, в паре случаев мне приходилось делать солянку из одной и другой проги.
Спасибо всем, ушёл читать про прерывания.
надо смотреть шире
Вы решили поучить нас? Весьма мило! Спасибо!
Нет, просто жизнь увы заставляет осваивать смежные специальности.
Если "вроде читаемый", объясните что в нем происходит.
Это вот это читаемое ???
Нет, просто жизнь увы заставляет осваивать смежные специальности.
работая санитаром в психбольнице, заодно осваиваешь роль пациента?
Мультивибратор - это просто. На си:
Два транзистора четыре резистра и две ёмкости, паяльник. И не ипите тут моск.
а если вам охота штаны через голову одевать в особо извращенной форме, то не выставляйте свой позор на всеобщее обозрение.
Два транзистора четыре резистра и две ёмкости, паяльник. И не ипите тут моск.
а если вам охота штаны через голову одевать в особо извращенной форме, то не выставляйте свой позор на всеобщее обозрение.
Жестковато сказано, ТС вроде согласился, что на грабли наступил - так зачем его еще пинать? :))))
Мультивибратор - это просто. На си:
таки и этот вариант получше будет
permpermskaya, на этой странице есть примеры, начните с изучения их и вообще всего содержания страницы... ну и учебники по С
СПАСИБО всем, буду читать. Хотя можно обойтись и внешним генератором, но спасибо за знания.!!
Мультивибратор - это просто. На си:
А почему не tone()?
А почему не tone()?
555 - наше фсё!
555 - наше фсё!
Эх, молодёж-ж-ж-ж! Наше фсё — дискретная электроника, лучше тёплая ламповая!
Увы, там тоже не всё так просто, мне удалось понять из переписки, это глюк millis. Может просто поправить в коде и больше не заморачиваться? Мне она нравится по быстроте, но вот некоторые ее функции просто убивают.
Мультивибратор - это просто. На си:
tone(13, 500);
Мне уже доложили, что так можно :)
https://www.youtube.com/watch?v=2H9StVnc6xc
Полюбуйтесь на моё решение для подавления дребезга кнопки.