EL RATON (MOUSE)
¿ Qué funciones cumple un mouse?
Un mouse ("ratón")es un periférico de entrada, que recibe su denominación por el aspecto.; exterior que presenta.
Cuando un mouse es desplazado de una posición fija a otra sobre un paño, la bolita que está en su parte inferior recorre una línea o curva compuesta por un continuo de puntos.
Para poder indicar la trayectoria que recorrió, a medida que se desplaza, el mouse debe enviar al computador señales eléctricas binarias que permitan reconstruir su trayectoria, a fin que la misma sea repetida por una flecha en el monitor. A tal objeto un mouse debe realizar dos funciones:
1. En primer término debe generar, por cada fracción de milímetro que se mueve, uno o más pulsos eléctricos (conversión analógica-digital).
2. Contar dichos pulsos y enviar hacia la interfaz "port serie"1 -a la cual está conectado- el valor de la cuenta, junto con información acerca de si se pulsó alguna de sus teclas.
Para aclarar el primer punto puede hacerse un símil mecánico, suponiendo que se quiera medir cuántas vueltas gira una rueda. A tal fin, ésta presenta sobre su circunferencia exterior flejes metálicos radiales, por ejemplo separados 3Q0 (figura 2.88). Cada fleje al rozar un clavo -ubicado en una posición fija- genera un sonido audible. Por lo tanto, al ponerse la rueda en movimiento, una vez que un fleje rozó dicho clavo, cada vez que la rueda avanza 300 se escuche un sonido en correspondencia con el fleje que roza el clavo. Contando el número de estos sonidos discontinuos, se puede cuantificar, mediante un número, cuántas vueltas y fracción a girado la rueda. Se ha convertido así un movimiento físicamente continuo en una sucesión discontinua de sonidos aislados para medir el giro.
O sea, se ha realizado lo que se llama una conversión analógica-digital, que también debe realizar el mouse para que se pueda medir la distancia que recorrió.
Si el mouse se mueve, cada 100 mseg envía (a la interfaz "port serie" a la cual está conectada) el número de pulsos que generé, lo cual pone en ejecución un programa, que sigue su desplazamiento en el paño y lo repite en pantalla, en una flecha o cursor visualizable, que oficia de puntero. Esta acción se complementa con el accionamiento de las teclas que presenta el mouse en su parte superior. Por ejemplo, haciendo que la flecha apunte a un "botón" de Windows que aparecen la pantalla, si luego se pulsa una tecla del mouse, se ordena una acción acorde al icono dibujado sobre dicho botón. Cuando se trabaja con texto, el puntero móvil toma una forma de “I” que puede ser situado en cualquier renglón de la pantalla si se pulsa una tecla del mouse, dicho puntero se convierte en el cursor vertical titilante, a partir de la cual se puede escribir o borrar texto. Mediante el mouse, el usuario puede comunicarse gráficamente e interactuar con programas que presenten "Interfaz Gráfica para usuarios", como el Windows de Microsoft, tan ligado al uso masivo del mouse. Esto significa un paso más en el desarrollo de técnicas para poder dar fácilmente órdenes a un computador. De este modo se ordena la ejecución de programas que lleven a cabo acciones requeridas, sin necesidad de tener que tipear el nombre de los mismos, como ocurre por ejemplo en el sistema operativo DOS.
¿Cómo opera en detalle un sistema con un mouse?
Según se verá al tratar el funcionamiento de un mouse, cuando éste se desplaza (figura 2.89), el movimiento de la bolita que está en su parte inferior se descompone en dos movimientos según dos ruedas con ejes perpendiculares entre si (en correspondencia con dos ejes de coordenadas x e y) que un conversor analógico-digital traduce en pulsos eléctricos. La cantidad de pulsos generados para cada eje representa la distancia recorrida por la bolita respecto de ese eje, y en relación con la última posición en que el mouse estuvo quieto.
Dichos pulsos se van contando en dos contadores, uno para cada eje, pudiendo ser la cuenta progresiva o regresiva, según el sentido del movimiento del mouse respecto de dichos ejes. En un tipo de mouse cada 100 mseg. los circuitos envían (por un cable que va hacia un port serie del computador) el valor de la cuenta de los dos contadores, como dos números de 8 bits con BIT de signo (rango de -128 a +127). Según el protocolo de Microsoft estos números se envían formando parte de 3 bytes, cada uno de los cuales además se transmite con BIT de start y stop, conforme al protocolo RS232C (Lugar donde se conecta el mouse a la computadora)para un "port serie". Si también se ha pulsado una o dos teclas del mouse, junto con esos números van dos bits con la combinación que las identifica.
Igualmente se envían tres bytes si se pulsa o libera alguna tecla del mouse, aunque éste no se mueva. Conforme a lo planteado, si el mouse se desplaza genera pulsos, y cada 100 mseg transmite tres bytes a su port, indicando qué distancia se movió en relación con los ejes X e Y, según el número de pulsos detectados en ese lapso por dos contadores separados, uno por eje.
Cuando el port recibe el primero de esos tres bytes, la plaqueta con la interfaz buffer que contiene el circuito de dicho port solicita (activando su línea de IRQ) a la UCP que interrumpa el programa en ejecución y pase a ejecutar la subrutina (mouse driver) que maneja la información del mouse. Los tres bytes pasan del port a memoria principal, donde dicha subrutina extrae la información que contienen, a fin de actualizar otros dos contadores que llevan la cuenta del total recorrido por el mouse hasta ese momento, según los ejes X e Y. Luego se enviará hacia la RAM ubicada en la plaqueta de video información para actualizar la posición de la flecha o cursor que acompaña los movimientos del mouse. Después retorna la ejecución del programa interrumpido.
Esta secuencia se repite cada 100 mseg mientras el mouse se mueve.
En relación con el pulsado de las teclas del mouse sobre "botones" presentados en pantalla -iconos del Windows para ordenar acciones- la subrutina del mouse citada, cada vez que recibe tres bytes también guarda en memoria el estado (activado o no) de dos teclas del mouse. El Windows (u otros programas compatibles que operan en forma semejante), cuando necesita determinar cuántas veces se activó una tecla del mouse y la posición de éste (para detectar sobre qué "botón o sea sobre qué área de la pantalla- se ordenó una acción que demanda la ejecución de un programa) se comunica con la subrutina del mouse citada, que lleva la cuenta de ello (mediante la instrucción INT 33 en una PC corriente).
¿ Cómo funciona un mouse del tipo corriente?
Los denominados mouses “mecánicos” (figura 2.89) se basan en el desplazamiento de una bolita sobre una paño rectangular. Su movimiento se comunica a dos pequeños cilindros metálicos que están a 90º entre sí que así descomponen dicho movimiento en dos componentes según ejes X e Y perpendiculares entre sí. Estos cilindros sólo pueden girar en sentido horario o antihorario, según el movimiento de la bolita. Si el mouse se mueve en forma vertical el único cilindro que girará será el que corresponde al eje Y.
A su vez, el movimiento de giro de cada cilindro se transmite a un disco ranurado o dentado.. Estos dos discos dentados sirven de base para realizar la conversión analógica-digital, que transforma el movimiento continuo dc la bolita -transmitido finalmente a los discos dentados- en pulsos eléctricos binarios. A tal fin. sobre cada disco dentado un diodo luminoso enfrentado a él envía un haz luminoso.
Si el mouse se mueve, cada uno de estos discos se moverá, y sus dientes interrumpirán o no el paso del haz luminoso incidente, según que éste incida sobre un diente o pase por el espacio entre dos dientes, respectivamente. En el segundo caso, la luz que pasa entre dos dientes llegará a un fotosensor. Entonces éste generará un pulso, cuya duración depende de la velocidad de arrastre del mouse. Una vez que esto ocurrió, el haz de luz incidirá sobre un diente, y así no podrá llegar al fotosensor, con lo cual el mismo no generará pulso alguno. De esta forma, el giro de cada disco dentado hace que el fotosensor genere una sucesión de pulsos', en concordancia con el pasaje o no de luz hacia el fotosensor.
Puesto que los discos dentados pueden girar en sentido horario o antihorario, para detectar ello se agrega a cada disco un segundo diodo luminoso (y su elemento fotosensor), tal que esté frente a una ranura cuando al primer diodo luminoso esté frente al fin de otra ranura, para permitir detectar el sentido de giro.
Como se describió más arriba, los pulsos generados por los fotosensores de los dos discos dentados son contados en la circuiteria del mouse por dos contadores separados, en cuenta progresiva o regresiva, según el sentido de giro de esos discos. Cada 100 mseg dicha circuiteria envía tres bytes hacia el port serie, con el valor de la cuenta alcanzada por ambos contadores, junto con indicación de teclas activadas en el mouse.
Existen mouses mecánicos en los cuales los discos ranurados no son visibles, existiendo en su lugar un conversor analógico-digital más compacto.
¿ Qué es el trackball y que otros tipos de mouses existen?
El trackball es un mouse para ser usado en notebooks y otras computadoras de mano.
Puesto que no se dispone de lugar para colocar un paño, se tiene una bolita fija, junto al teclado, que se mueve con los dedos, resultando el mismo efecto que con un mouse
Existen mouses ópticos que en lugar de la bolita requieren un paño con líneas marcadas, para poder detectar por medios ópticos el movimiento del dispositivo respecto de dichas líneas, y en consonancia con éstas, generar pulsos. También se fabrican mouses inalámbricos, para luz infrarroja.