PCCar.ru - Ваш автомобильный компьютер

Вернуться   PCCar.ru - Ваш автомобильный компьютер > Всё Остальное > Arduino проекты

Ответ
 
Опции темы Поиск в этой теме
Старый 21.10.2021, 01:16   #1
admin
Administrator
 
Аватар для admin
 
Регистрация: 15.06.2005
Город: Москва
Регион: 77, 97, 99, 177
Машина: Lexus RX400h
Сообщений: 832
admin is a glorious beacon of lightadmin is a glorious beacon of lightadmin is a glorious beacon of lightadmin is a glorious beacon of lightadmin is a glorious beacon of lightadmin is a glorious beacon of light
По умолчанию Подключение Энкодера к Ардуино и новый код обработки для него

Собирая один из проектов с использованием encoder я столкнулся с проблемой. Не смог найти нормально работающего кода для Ардуино. Боле менее работающий код требует подключения двух выходов (A, B) к пинам ардуино D2 и D3 которые используются в коде для внешних прерываний INT0 и INT1. Но в моем проекте эти прерывания нужны обработки других сигналов. Скетчи использующие один пин с прерыванием INT0 или INT1, работаю отвратительно и при вращении вала энкодера вылезает очень много ошибок. Код без использования прерываний работает стабильно, но он не работает в фоновом режиме, его нужно встраивать в тело основной программы, что в свою очередь приводит не своевременному срабатыванию обработчика и пропускам при вращении энкодера. Пришлось написать свой код обработки, который исключает описанные выше проблемы. С дребезгом контактов я не стал бороться программно, так как это приводит к задержкам обработки. Проще и надежней использовать керамические конденсаторы.



Схема подключения энкодера к Ардуино
Для считывания сигналов с выходов EC-11, нужно использовать два цифровых входа Arduino.
В схеме подключения я использовал редко используемые мной в своих проектах выводы Arduino(A1 и A2).
Подтягивающие резисторы отсутствуют, так как я использовал внутреннюю подтяжку микроконтроллера.
Конденсаторы нужны для гашения импульсов дребезга контактов. Если у вас новый и хороший энкодер то можно обойтись и без них.

Все используемые в тестировании компоненты из магазина duino.ru
Arduino nano — 1 шт.
Энкодер EC11 — 1 шт.
Соединительные повода — 3 шт.
Керамические конденсаторы 0,1 мкФ — 2 шт.

Нажмите на изображение для увеличения
Название: ec-11.jpg
Просмотров: 466
Размер:	103.0 Кб
ID:	52525

Ссылка на полную статью https://duino.ru/blog/all/enkoder-ar...kod-obrabotki/
__________________
Все для arduino.

Последний раз редактировалось admin; 31.10.2021 в 18:56.
admin вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 2 (пользователей: 0 , гостей: 2)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.



Часовой пояс GMT +4, время: 05:07.


Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot