Bonjour tout le monde,
Je travaille sur un projet personnel qui m'a amené à utiliser un codeur optique récupéré dans une souris (les anciennes avec les boules dessous).
J'ai donc monté le codeur sur l'axe d'un moteur, puis j'ai relié les sorties du codeur sur le pic. Le codeur envoie +5V alternativement sur ses deux sorties A et B. Cela donne quelque chose comme ça :
Le sens de la rotation est donc déterminable par le déphasage des voie A et B.
Bref, voici mon code pour récupérer les mouvements du codeur (uniquement voie A pour l'instant, on verra le sens plus tard) :
while portb.3=0 'Bouton poussoir sur RB3 pour arrêter.
if portb.1=1 then 'On scan le port RB1, donc la voie A
if portb.1=0 then '(pour confirmation...)
end if
end if
wend
+ du blabla pour afficher le résultat sur LCD.
Comment puis je l'optimiser ? Ou peut être que le PIC est trop lent de toute façon ??
Pour info, il y a environ 40 trous dans ma roue codeuse, et mon moteur tourne à 100tr/min. Soit 4000 impulsions par minute, -67 par seconde- envoyées dans le PIC...
Quelques conseils ?
Merci d'avance
Florent
-----