Vorrei avere un’analisi del funzionamento del Mouse e del suo attacco tramite interfaccia parallela o seriale.

Il principio di
funzionamento del mouse è abbastanza semplice: si tratta
di tradurre il movimento sul piano orizzontale in un
numero di impulsi elettrici proporzionale allo
spostamento nelle due direzioni. Gli impulsi vengono poi
“contati” dalla circuiteria elettronica del
computer e tradotti nella misura dello spostamento che
stabilisce la posizione del cursore sullo schermo.

I modelli più diffusi
sono di tipo ottico/meccanico. Il cuore è costituito da
una pallina di gomma tenuta in posizione in un apposito
alloggiamento da piccoli rulli a molla in modo che possa
rotolare sul piano del tavolo. Il moto di rotolamento
della pallina viene trasmesso a due rulli disposti
orizzontalmente, uno in direzione longitudinale e l’altro
in direzione trasversale. La rotazione di ciascuno dei
rulli è, in assenza di slittamenti, proporzionale allo
spostamento del mouse nelle due direzioni,
rispettivamente longitudinale e trasversale.

I due rulli terminano
ciascuno con una rotella sul cui bordo sono ricavate
numerose fessure radiali a distanza regolare. La
rotazione della rotella viene convertita in impulsi
elettrici da un trasduttore ottico il cui raggio luminoso
(più precisamente infrarosso) viene intercettato dal
bordo della rotella.

Il dispositivo ottico è
leggermente più complicato in quanto è necessario non
solo contare il numero di impulsi dovuti al passaggio
delle fessure davanti al trasduttore ottico, ma anche il
verso del moto. Quindi ogni rotella è dotata di due
trasduttori leggermente sfasati che consentono, appunto,
di determinare il verso di rotazione.

Il Mouse è poi dotato
di pulsanti (da uno a tre, nei casi piu’ comuni) che
agiscono su microinterruttori contenuti nel mouse
generando anch’essi dei segnali elettrici.

Per evitare che il
computer sia sovraccaricato dal compito di contare i
singoli impulsi generati dai trasduttori, la circuiteria
interna al mouse codifica in modo opportuno i segnali (i
dettagli di questa operazioni non sono facilmente
reperibili perché vengono tenuti riservati dalle ditte
produttrici), generando sequenze di caratteri che vengono
inviati ad una porta del computer.

La parte restante del
processo viene svolta dal “driver” che analizza
i caratteri ricevuti dalla porta, ne ricava i due
contaggi di impulsi, il loro verso e lo stato dei
pulsanti e li rende disponibili ai programmi grafici che
sono cosí in grado di effettuare le azioni
corrispondenti.