Оптимальный алгоритм определения угла поворота endcodera

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить
Dem

Оптимальный алгоритм определения угла поворота endcodera

Сообщение Dem »

Помогите с программой на ASM для AVR
в определении направления и угла поворота устройства с перфорированным диском от мышки и с двумя, смещенными на половину относительно прорези, оптопарами. Можно получить число импульсов в два раза больше, чем прорезей на диске - по переднему и заднему фронту прорези.
Нужен оптимальный алгоритм обработки сигналов от двух оптодатчиков для счетчика положения диска.
[color=darkred][/color]
Реклама
Аватара пользователя
teoretic
Открыл глаза
Сообщения: 50
Зарегистрирован: Чт июн 15, 2006 23:46:55
Откуда: Раша, Москоу
Контактная информация:

Сообщение teoretic »

подробный алгоритм работы энкодера и модуль на С можно найти в avrlib http://hubbard.engr.scu.edu/avr/avrlib/avrlib.zip.
Если нужна оптимальность - то можно написать простейшую программку.

-оптопары смещены на 180гр, одну вешаем на прерывание-факт шага, другая задает направление движения.

Код: Выделить всё

INTx: // одну из оптопар - на прерывание
 sbis PINx, BITx //то, куда подключена вторая оптопара
 rjmp INTX_inc
INTx_dec:
 dec r0 //регистр где хранится число шагов
 rjmp INTx_end
INTx_inc:
 inc r0
INTx_end:
 reti
кажется так...
Реклама
Ответить

Вернуться в «Разные вопросы по МК»