Страница 1 из 1

Генерация значений переменных по нажатию кнопок

Добавлено: 16 окт 2024, 19:23
YelleSwarm
Приветствую, уважаемые. Есть задача сделать шим регулятор с фиксированным значением выхода на 3-4 кнопки и дополнительно две кнопки для тонкой настройки + и - от последнего выбранного режима.

Пытался по разному, не понимаю как по нажатию кнопки вывести не 1-0, а значение глобальной переменной, либо значение для ввода в мультиплексор. Да и в мультиплексор нельзя несколько блоков подключить на вход, а только один. Через переключатель можно выдать переменную (похоже на костыль, но вроде работает), но при этом у мультиплексора один вход, и подключить к нему разные переключатели с разными значениями переменных нельзя. Функции "записать в епром" и "прочитать из епром", я так понимаю тоже не подходят, так как записывать эти значения каждый раз при смене режима нецелесообразно, они нужны только в реальном времени.

Делал как-то так, но это очень странно выглядит. (но может так и надо). И как оно себя поведет на практике если не соединять ресет одного триггера с кнопкой другого, вывод примет последнее поданное на него значение? Да и как считать последнее и далее изменять через счетчик не пойму.
2024-10-16_19-14-11.png
Пните в нужном направлении, пожалуйста.

Re: Генерация значений переменных по нажатию кнопок

Добавлено: 16 окт 2024, 19:37
Phazz
Мыслите в правильном направлении вот только немного перемудрили. Все гораздо проще
Снимок экрана 2024-10-16 213604.png

Re: Генерация значений переменных по нажатию кнопок

Добавлено: 16 окт 2024, 19:59
YelleSwarm
Phazz писал(а): 16 окт 2024, 19:37 Мыслите в правильном направлении вот только немного перемудрили. Все гораздо проще
Снимок экрана 2024-10-16 213604.png
А, то есть в целом конструкция в таком виде - норм. Понял, спасибо.
Вы нарисовали без фиксации, на сколько я понимаю. Мне нужен принцип нажал один раз - пошел шим одной частоты, нажимаешь еще - ничего не меняется, нажимаешь другую кнопку - начинается другая частота.

Re: Генерация значений переменных по нажатию кнопок

Добавлено: 16 окт 2024, 20:02
YelleSwarm
Phazz писал(а): 16 окт 2024, 19:37 Мыслите в правильном направлении вот только немного перемудрили. Все гораздо проще
Снимок экрана 2024-10-16 213604.png
По итогу у вас всё правильно. Упустил из внимания что на выход значение записывается. То есть достаточно один раз подать сигнал и до следующего изменения он будет его выдавать.

Re: Генерация значений переменных по нажатию кнопок

Добавлено: 17 окт 2024, 03:15
YelleSwarm
Phazz писал(а): 16 окт 2024, 19:37 Мыслите в правильном направлении вот только немного перемудрили. Все гораздо проще
Снимок экрана 2024-10-16 213604.png
Поковырялся, подумал, решил что реализация таким способом должна работать. Кнопки через переключатели подают на сумматор соответствующие значения, в то же время эти же кнопки через триггер или-не (защита от одновременного нажатия) подают импульс счетчику на считывание входящего значения, которое он и выдает на выход шим. При этом в любой момент кнопками + и - можно произвести ручную настройку выхода через генератор-мультивибратор 10мс (50 импульсов в секунду, может будет меньше), который теребит входы счетчика, чтобы 200 раз не клацать, а просто нажать и держать. Выключение реализовано через сброс счетчика. Пример составил на 2х кнопках выбора режима, по такому же принципу добавлю еще две.

И еще момент, как-то же надо выставить частоту шима хотя-бы 30 кгц. В текстовом варианте программы в сетапе вписывается строка которая меняет частоту шим, а как тут это реализовать?

Оцените работоспособность, пожалуйста.
2024-10-17_03-47-06.png

Re: Генерация значений переменных по нажатию кнопок

Добавлено: 17 окт 2024, 05:59
Naladchik
Одного генератора достаточно, да и свитчи явно лишние.
изображение_2024-10-17_132138296.png
YelleSwarm писал(а): 17 окт 2024, 03:15 ... И еще момент, как-то же надо выставить частоту шима хотя-бы 30 кгц. В текстовом варианте программы в сетапе вписывается строка которая меняет частоту шим, а как тут это реализовать?...
Пользовательским блоком.

Re: Генерация значений переменных по нажатию кнопок

Добавлено: 18 окт 2024, 03:04
YelleSwarm
Спасибо большое! Из вашей схемы для меня многое прояснилось в принципах работы программы. Но, пожалуй, два генератора оставлю как и было =)