il devrait pouvoir le faire a condition de ne faire que ça , ou pas grand chose de plus
une solution est donc d'utiliser un microcontroleur uniquement pour compter , et transmettre le resultat a un autre microcontroleur qui fait l'ensemble du travail
le micro controleur qui fait le comptage rapide ne fait que la detection de sens de rotation et un comptage decomptage pour reconstitué un autre signal en quadrature beaucoup plus lent , utilisable par le deuxieme microcontroleur qui fait l'asservissement
quand il faut faire des mouvement rapide le 2eme micro ignore le signal d'origine du capteur et n'utilise que le signal divisé ... quand il faut faire des mouvement plus lent et plus precis , le 2eme micro controleur prend en compte le signal direct du capteur , mais utilise aussi le signal divisé par le premier micro pour eviter de perdre des pas si il rate un peu le comptage du signal rapide
comment determiné la frequence maxi
par interuption on est loin du maxi possible par le micro controleur ... a chaque interuption il doit faire tout un travail ... il n'aura plus le temps de rien faire entre les interuption
pour chercher la frequence maxi il faut un programme a une seule boucle qui ne fait que tester les entré du capteur et envoyer le resultat de la division
le signal transmis au 2eme micro controleur n'est pas forcement un signal en quadrature plus lent : ça peut etre encore mieux : le resultat d'un comptage sur 8bit : le 2eme micro controleur peut donc prendre en compte les 8 bit si il veut faire un travail precis a vitesse lente , et ignorer les bit de poid faible quand ça va trop vite
le premier micro controleur pourrait faire un comptage sur un mombre de bit suffisant pour aller d'un bout a l'autre du mouvement , mais il risque de ne pas pouvoir le faire en un assez faible nombre d'instruction donc limiter la frequence maxi : c'est pourquoi je prefer que le premier micro compte uniquement les bit de poids faible
pour le 2eme micro surveiller un compteur 8 bit avec 8 fils demande moins de travail que surveiller une entré en quadrature : il suffit qu'il lise le compteur a une cadence suffisante pour ne jamais laisser passer plus de 256 pas
bien sur le BBB est la solution ideale