Сегодня платка пришла, и как раз с кнопками, а хочется энкодер. Пойду пока собирать на проводах. Только у меня не громкость, а регулятор напряжения в бп.
_________________ Четырехканальный комбайнёр на букву Х.
Друзья, помогите поправить код для замены 3х кнопок энкодером, сам в программировании пока не силен. В общем вот участок кода обрабатывающий кнопки: Спойлер
Код:
void getkey(void) {
if(PIND.4 == 0) { REQUIRED_TEMP = d; u = t_max; if (PIND.2 == 0) { delay_ms(20); if(PIND.2 ==0) REQUIRED_TEMP++; d = REQUIRED_TEMP; } if (PIND.3 == 0) {delay_ms(20); if(PIND.3 ==0) REQUIRED_TEMP--; d = REQUIRED_TEMP; } }
else { REQUIRED_TEMP = u; d = t_min; if (PIND.2 == 0) { delay_ms(20); if(PIND.2 ==0)
REQUIRED_TEMP++ ; u = REQUIRED_TEMP; } if (PIND.3 == 0) {delay_ms(20); if(PIND.3 ==0) REQUIRED_TEMP-- ; u = REQUIRED_TEMP; } }
PIND.4 - должен быть кнопкой энкодера, PIND.2 и PIND.3 вращение влево о вправо соответственно. Нашел вот такой код обрабатывающий энкодер но совместить знаний не хватает Спойлер
Тема, конечно, умерла, но вдруг кому понадобится. Топикстартер хотел заменить кнопки "больше"/"меньше" энкодером. Очень удивился, что у такой, казалось бы, примитивной задачи не нашлось решения НЕ на основе МК. Почему-то начали придумывать схемы с триггерами, генераторами стробсигнала...наверное я невнимательно читал, но так и не понял почему. А тем временем, именно для решения такой же задачи у меня уже седьмой год работает простенькая схемка на основе всего навсего одной попсовой 7400. Она же 555ЛА3. По началу боялся проблем с дребезгом, но по сей день полет нормальный и проблем нет. Хотя, справедливости ради, скажу, что повторял схему с одним энкодером, который уж очень дребезжал и ни о какой стабильности речи не шло, пока не заменил его на другой. Принцип работы описывать наверное нет смысла, все предельно просто. Вместо первой кнопки вешаем терминал А энкодера, вместо второй - В. С на землю. Выходы 8 и 11 выдают соответственно сигнал низкого уровня в зависимости от направления вращения энкодера либо на одной, либо на другой ножке (то, что и нужно). Энкодер самый обычный, квадратурный со сдвигом 90 градусов. Срабатывает схема четко, никакой грязи на втором выходе при активном первом (и наоборот) не наблюдается, как в одной из приведенных выше схем.
Сделал так. Энкодер применен от компьютерной мыши. При вращении в одну сторону на одном выходе цикл 1001, на другом цикл 1100 соответственно. При обратном вращении циклы меняются местами. Цель была получить при вращении в одну сторону сигнал на одном выходе 1010, на другом -1. При вращении в обратную сторону - смену сигналов на выходе. Есть недостаток у схемы - помехи на неактивном выходе во время срабатывания активного. Но в целом она работает и уже проверена. Если кто подскажет как ее можно усовершенствовать буду рад.
Открыта удобная площадка с выгодными ценами, поставляющая весь ассортимент продукции, производимой компанией MEAN WELL – от завоевавших популярность и известных на рынке изделий до новинок. MEAN WELL.Market предоставляет гарантийную и сервисную поддержку, удобный подбор продукции, оперативную доставку по России.
На сайте интернет-магазина посетители смогут найти обзоры, интересные статьи о применении, максимальный объем технических сведений.
Продукция MOSO предназначена в основном для индустриальных приложений, использует инновационные решения на основе более 200 собственных патентов для силовой электроники и соответствует международным стандартам. LED-драйверы MOSO применяются в системах наружного освещения разных отраслей, включая промышленность, сельское хозяйство, транспорт и железную дорогу. В ряде серий реализована возможность дистанционного контроля и программирования работы по заданному сценарию. Разберем решения MOSO
подробнее>>
Masterr
Заголовок сообщения: Re: как заменить кнопки на энкодер?
Serj66610, спасибо. Я так понял это от дребезжания контактов. Надеюсь поможет. Однако при эмуляции в мультисиме 10 версии, осциллограф выдает следующие импульсы на неактивном выходе (см. картинку). Возможно это из-за паразитной емкости транзистора или логического элемента или прога гонит, даже не знаю...
Заголовок сообщения: Re: как заменить кнопки на энкодер?
Добавлено: Ср мар 22, 2017 06:21:51
Родился
Зарегистрирован: Ср мар 22, 2017 06:19:32 Сообщений: 1
Рейтинг сообщения:0
Oberstserj писал(а):
Тема, конечно, умерла, но вдруг кому понадобится. Топикстартер хотел заменить кнопки "больше"/"меньше" энкодером. Очень удивился, что у такой, казалось бы, примитивной задачи не нашлось решения НЕ на основе МК. Почему-то начали придумывать схемы с триггерами, генераторами стробсигнала...наверное я невнимательно читал, но так и не понял почему. А тем временем, именно для решения такой же задачи у меня уже седьмой год работает простенькая схемка на основе всего навсего одной попсовой 7400. Она же 555ЛА3. По началу боялся проблем с дребезгом, но по сей день полет нормальный и проблем нет. Хотя, справедливости ради, скажу, что повторял схему с одним энкодером, который уж очень дребезжал и ни о какой стабильности речи не шло, пока не заменил его на другой. Принцип работы описывать наверное нет смысла, все предельно просто. Вместо первой кнопки вешаем терминал А энкодера, вместо второй - В. С на землю. Выходы 8 и 11 выдают соответственно сигнал низкого уровня в зависимости от направления вращения энкодера либо на одной, либо на другой ножке (то, что и нужно). Энкодер самый обычный, квадратурный со сдвигом 90 градусов. Срабатывает схема четко, никакой грязи на втором выходе при активном первом (и наоборот) не наблюдается, как в одной из приведенных выше схем.
Подскажите пожалуйста, для тупого, как вот это дело собрать. Паял когда давно в детстве, но до такого не доходил. Вот сейчас хочу заменить две кнопки энкодером, но далек от этого всего
Не хочу показаться грубым, но, ребят, может вы сначала с основами разберетесь, паять научитесь, разберетесь с тем как работает логика, научитесь платы делать... Вы серьезно считаете, что вас на словах можно всему этому научить? Хотите без знаний и опыта сразу взять и собрать работающее устройство? Серьезно? Или я чего-то не понимаю? Что скрывается за вашей просьбой помочь собрать? По шагам учить основам? Так дуйте в обучалку и нарабатывайте опыт, пока не осознаете, что готовы самостоятельно и с пониманием собирать подобные вещи. Что вы в тематическую ветку-то лезете?
...Так дуйте в обучалку и нарабатывайте опыт, пока не осознаете, что готовы самостоятельно и с пониманием собирать подобные вещи. Что вы в тематическую ветку-то лезете?
Вроде и так в обучалке задают вопросы. Или есть ещё какая-то? Кстати, вышеприведенная Вами схема (в том виде как нарисована) энкодер не обрабатывает. Для сравнения посмотрите
Как раз о замене энкодером двух кнопок на логике, без МК. Вот здесь http://codius.ru/articles/255 с 57 абзаца более чем подробно расписано что происходит. А в видео к статье наглядно продемострирован эффект.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 53
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения