TARJETAS TELEFÓNICAS


TARJETAS MAGNETICAS:
Uno de los primeros aportes tecnológicos que trajo la privatización de ENTel, fue la instalación de nuevos teléfonos públicos, los cuales funcionaban mediante una tarjeta magnética, en la cual se grababa la cantidad de crédito disponible; y a medida que se usaba, el teléfono actualizaba la información. Este sistema fue sacado de circulación en muy poco tiempo, ya que las tarjetas eran muy fáciles de engañar. 
La viveza criolla descubrió que poniéndole una cinta Scotch sobre la banda magnética, el teléfono podía leer la cantidad de pulsos, pero a la hora de grabar no generaba el suficiente campo magnñetico como para atravesar la cinta. Así, la tarjeta tenía créditos ilimitados con una única inversión inicial (la compra).

TARJETAS CHIP:
Básicamente, una tarjeta chip esta compuesta por una memoria tipo PROM de acceso serial. Una memoria PROM es un conjunto de fusibles, los cuales se queman o se dejan intactos para hacer los '1' o '0' lógicos. Una vez que un fusible es quemado, no puede volver a restaurarse. Cuando uno ingresa una tarjeta en un teléfono este, luego de hacer una serie de chequeos para validar la tarjeta, cuenta cuantos fusibles quedan sin quemar del total y a cada pulso que pasa quema uno. Como una vez que un fusible es quemado NO se puede volver a restaurar, es IMPOSIBLE recargar la tarjeta.

Las tarjetas chip poseen una memoria de 256 bits, o sea, 256 fusibles, numerados de 0 a 255. También poseen una entrada de reloj (clock), que sirve para apuntar que fusible se quiere leer o quemar. El resto de los terminales son la salida de datos (I/O), la puesta a cero (reset), la alimentación (Vcc/Gnd), el control 
de lectura y escritura (R/W), la tensión de programación (Vpp) y el fusible de protección del área de memoria restringida (Fuse).

Vcc: Es la entrada de alimentación positiva (5v)
R/W: Selecciona el modo de operación (Lectura o Escritura)
Clock: Es la entrada de avance del contador de direcciones
Reset: Pone a cero el contador de direcciones
Gnd: Es la entrada de masa
Vpp: Es la entrada de tensión de programación (21v)
I/O: Es la salida de datos
Fuse: Protege la zona de memoria de acceso restringido

Poniendo R/W a nivel bajo se le indica al chip que se quiere leer el fusible (bit) apuntado por el contador de direcciones, mientras que en estado alto se le indica que se lo quiere quemar. En este último caso hay que emplear, además, el terminal Vpp.

Cada impulso aplicado al terminal Clock hace avanzar en una unidad el contador de direcciones que selecciona el fusible (bit) a ser leído o quemado. Este contador es puesto a cero cuando se produce un reset.

El terminal de reset se dispara con un 0, o sea que el contador de direcciones funcionará normalmente cuando este terminal se encuentre a nivel alto y será puesto a cero cuando este terminal reciba un nivel bajo.

Estando el terminal Vpp a nivel alimentación (Vcc) el fusible apuntado será leído normalmente. Poniendo este terminal a 21v con respecto a masa (Gnd) el fusible apuntado será quemado.

I/O presenta el estado del fusible seleccionado en caso de estar en modo lectura. En escritura éste terminal se utiliza para validar o corroborar el fusible quemado. Este proceso se explaya mas adelante.

Fuse permite proteger la tarjeta para que el área de memoria restringida no sea modificada posteriormente. Los primeros 96 fusible (bits) de la tarjeta son accesibles si el fusible que esta en el terminal Fuse esta intacto. Luego de haber programado el área protegida de la tarjeta (donde se graba número de serie, cantidad de pulsos, etc), se aplica a este terminal una tensión negativa de -40 V con respecto a masa, quemando el fusible. Así, esa zona de datos ya no podrá ser modificada nuevamente.

Cuando se resetea la tarjeta (reset = 0), el contador interno se pone a 0, y queda apuntando al bit 0 de la memoria. A partir de ahí, cada pulso en clock incrementará el contador, y con ello que bit podrá ser accedido. Si R/W esta en nivel bajo ('0' = read), por  I/O saldrán los distintos bits que contiene la tarjeta.

Cabe aclarar que cuando la tarjeta esta en modo escritura los pulsos de clock NO incrementan el contador. Si se esta leyendo el bit 23, se pasa a modo escritura, se aplica un pulso de clock y luego retorna a modo lectura, estará leyendo nuevamente el bit 23.

Ahora bien, de esos 256 bits, los primeros 96 están protegidos contra escritura. En esa zona se guardan los datos relativos a la cantidad de pulsos, número de serie, fabricante, país, empresa, etc. De los 160 restantes 10 son quemados en la fábrica a modo de prueba, y los 150 restantes conforman el área de pulsos. Por esta razón la tarjeta de máxima capacidad contiene 150 fichas. El mapa de una tarjeta telefónica es el siguiente, dividiendo los bits en series de ocho y tomando el primero como el mas significativo.

BYTE DATO DESCRIPCION
00    
01 83h Indica que es una tarjeta telefónica común
02 FFh Desconocido
03 FFh Desconocido
04 5Ah
9Eh
Tarjeta de 25 pulsos
Tarjeta de 50 pulsos
05 XXh Estos tres bytes forman el número de serie de la tarjeta, el cual puede ser corroborado visualmente en el reverso del plástico.
06 XXh
07 XXh
08 00h Desconocido
09 XXh Indica (en décimas) la cantidad de pulsos de la tarjeta
10 1Eh Desconocido
11 28h Indica el país de la tarjeta (28h = Argentina)
12 FFh 10 bits quemados en fábrica para probar la tarjeta
13 C0h
14 al 31 00h Area de memoria (pulsos disponibles)

 

Los cubos rojos representan el área de memoria protegida por Fuse, mientras que los verdes corresponden al área de acceso libre.

RESET: 
La tarjeta se resetea poniendo Reset a '0', y aplicando un pulso de clock. Esto hace que el contador interno de direcciones se ponga a cero, apuntando al primer fusible (bit 0). 

LECTURA:
Para leer la tarjeta Reset debe estar a nivel alto, y R/W a nivel bajo. La salida esta siempre activa, y el contador de direcciones se incrementa con los flancos negativos de la señal de clock. Luego de la operación de Reset aparece en I/O el bit 0, luego del 1er pulso de clock el bit 1, y así. Luego de llegar a 255 el contador pasa a 0 de nuevo, mostrando el bit 0. 

ESCRITURA:
Para escritura Reset debe esta a nivel alto, Vpp en 21V, y R/W en nivel alto. Estas condiciones se deben mantener con Clock en nivel bajo de 10 a 50 ms, y luego poner Clock en nivel alto de 10 a 50 ms. Si el contador esta apuntando al area protegida, la operación no tendrá éxito. Si esta apuntando después de los 96 primeros bits, al bajar R/W a '0' (lectura) aparecerá automáticamente el dato grabado a modo de 
verificación.

INTERFACE PC:
Conectar una tarjeta chip a una computadora es algo por demás sencillo. Basta con conectar algunos pines del puerto paralelo a un par de switches digitales que comanden las líneas de alimentación y utilizar los pines de estado para ingresar datos y verificar que la tarjeta esté en posición adecuada. Hay un sinnúmero de circuitos dedicados a esta labor dando vueltas por internet. Incluso muchas revistas han sacado versiones.

INTERFACE PIC:
Otra opción es usar las tarjetas en conjunto con circuitos microcontrolados. Es posible hacer llaves de acceso, relojes de personal, tarjetas de validación, etc.

09-FEB-2000