Привет, написал код работы с энкодером по прерываниям, не использовал микруху с триггерами Шмитта, не использовал проверку на дребезг с использованием проверки через промежуток времени. Работает изумительно, жаль нельзя его тут выложить, причем отсекает дребезг очень четко, но если его подавить аппаратно, то не будет лишних срабатываний прерывания.
FlProg интересная штука. Сам еще год назад, сидя на ардуино, слизывал оттуда куски кода общения по modbus) но программист, если начнет в ней работать, то переплюется тысячу раз) и дело будет как раз в том, что ему не будет хватать гибкости. Это как при конфигурировании ПЛК. Что тебе дано - тем и пользуйся. Универсальности мало, зато риск накосячить минимален)
@@Solderingironspb Согласен. Но я по жизни схемотехник, flprog это манна небесная для меня. Мой склад ума и flprog это как одно целое. Как думаете возможно сделать проект в flprog и оптимизировать код для stm32?
@@rn4acw можно, НО это будет очень долго и сложно, т.к. код там генерируется на ядре ардуино и под определенный МК(по крайней мере, когда я работал в нем, в коде многие команды были на регистрах). Это нужно полностью понимать весь сгенерированный код, далее адаптировать его уже под свой МК(тот же Stm32F103C8T6). Как ни крути, придется изучать программирование... Но в данном случае нужно хорошо знать МК, под который FLProg генерирует код, и МК, под который данный код адаптировать... А вообще, не бойтесь начать изучать программирование. Все, что я сейчас делаю - это заслуга упорства и мой опыт в чуть больше года. Начал все 28.07.2019 на Arduino Mega. Через месяц написал свой первый проект. Еще через 2 месяца, уже создал печатную плату с Atmega328 на борту, гальванической развязкой и простеньким алгоритмом на регистрах. Через пол года уже сделал себе умный дом(я вообще боялся даже подумать о нем). Главное в этом деле - начать. Начнутся вопросы - Вы сами же на них себе ответите на форумах, на ютубе и прочих ресурсах. Так шаг за шагом сформируется база знаний. А если еще и читать книги будете, то вообще взлетите по продуктивности. Я знаю о чем говорю, т.к. я не программист, я инженер энергетик по образованию, а работаю вообще в сфере ремонтов лабораторного оборудования. Так что и у Вас все получится)
Это всё хорошо.Но в обработчике внешних прерываний код много нельзя писать а дребезг контактов.Я отказываюсь от програмной заденжке.А сделал свою аппаратно -программную задержку используя вн. прерывание и прерывание по таймеру.
Хм, когда работаешь с короткой записью if, тогда еще можно понять переопределение А. А вот в случае с полным if else elsif то это уже паранойя. A уже определено и А = А писать не надо. Не думаю, что компилятор настолько оптимизирует код, что выкинет лишнее. В случае с контроллером - это уже перебор. Можно легко в out of memory вляпаться
Проверять во внешнем прерывании от чего произошло прерывание, которое и так уже известно от чего оно должно вызываться это лишнее. В прерывании сразу можно прописывать действия. Иначе чем от нажатия кнопки оно и не могло произойти.
Да, Вы правы) Но я в отношении кнопки и ног энкодера делал двойное прерывание, как по низкому логическому уровню, так и по высокому логическому уровню. Отсюда и делал проверку, чтоб можно было производить то или иное действие, в зависимости от логического уровня.
Здравствуйте. Хочу в автомобиль сделать регулятор скорости вращения вентилятора отопителя. Чтобы управлять энкодером и к примеру каждый его шаг добавлял 10% к ШИМ и увеличивал или уменьшал скорость вентилятора. И при этом выводить на тфт дисплей анимацию, сколько в данный момент задано значение. Реально ли это сделать новичку?) Не хочу моргать светодиодом, хочется сразу с полезного начать.
Добрый день) можно) но без вникания в процессы, я б не советовал делать это. Все же в автомобиль встраивать хотите... узел должен быть надежным и безопасным. Энкодер фильтровать нужно, шим подключать не в ключевом режиме, как ардуинщики делают, а через шим драйвер, чтоб мосфет не перегревался и не взорвался(да, такое только так бывает на высоких частотах). Ну и само собой, предохранитель на все это дело. Про дисплей - это можно, при условии, что библиотеку под него напишете или найдете.
Вообще все начиналось для общего развития, т.к. работаю ведущим сервисным инженером в промышленности. Хотел знать, как работает тот или иной узел, чтоб быстрее делать диагностику и качественней проводить ремонты. Но меня чего-то уносит все дальше и дальше...теперь хочу вообще все знать и уметь, чтоб при любом вопросе я б мог пойти и собрать аналог устройства, ни чуть не хуже, а может еще и с доп. фичами. Ну и самое главное, чтоб быть уверенным в своих устройствах. Поэтому я и ушел с ардуино. Хобби перешло в работу.
Ну...умный дом собрал. Мешалку верхнеприводную для сред с ПИД регулированием сделал. Переходники для джойстиков от sega и nes на USB. Устройство для запроса данных с электросчетчика по modbus сделал. Контроллер аварийного отключения двигателя при сухом ходе. Плакат с LED подсветкой и управлением по ИК. Коммерческие заказы были.... так если посмотреть, то много всего полезного для себя за этот год сделал.
@@user-bn2qp6sh8r Везде, где только можно... Т.к. я работаю в промышленности, то я вижу каждый день, как работают ПЛК, как работает ПИД регулятор. Могу заглянуть внутрь и посмотреть, как и что устроено. Поползать в их программах при наладке, что-то новое для себя подчерпнуть. Знаю про существование датчиков с выходом 0-10В, 4-20mA, термосопротивлений pt100, pt1000, термопар К типа и прочего(а многие, кроме модулей, как они называют "для ардуино", ничего и не пробовали.). т.е. база знаний у меня, не постесняюсь, приличная была уже. Далее я купил ардуино, начал с канала AlexGyver и второго канала Заметки Ардуинщика. Смотрел именно теорию, а не самоделки. Далее друг помог с первым проектом (просто попробовали сделать вытяжку для кухни. Там были кнопки и семисегментный индикатор). После этого я начал уже как-то ориентироваться, что и куда. Коллега у меня на работе знает си на высочайшем уровне. У него часто консультировался. А так...В большей степени RU-vid(Умный дом - Alex Kvazis и Электроника в объективе. Промышленные решения на ардуино и электротехника - Arduino Prom, Artem Kashkanov, Виктор Кравченко). Самым большим и переломным моментом в программировании для меня было - это взять в руки Stm32 и начать ее изучать. Пусть со мной многие не согласятся, но я считаю работу с Stm32 куда более логичной и понятной, чем работу с библиотеками в ардуино, т.к. там черт ногу сломит, кто как пишет. Ничего не понятно. Подключишь несколько библиотек, что-то отвалится. Сидишь тупишь...Зайдешь в группу с ардуиноведами, задашь вопрос, а его либо игнорят, либо школьники начинают писать фигню. Здесь же прочел две книги и оно само как-то прет по чуть-чуть. Самый ценный ресурс в данной теме - это время. Его у меня уходит очень много...