PDA

Ver la Versión Completa : Voltaje como dato por el Puerto Serie


aeff
05-02-2010, 05:43:18
Saludos colegas,
Bueno, estoy tratando de desarrollar un sistema automatizado para registrar el pago mensual de los estudiantes de mi universidad, el sistema es algo sencillo, consiste en tener una BD con los datos identificadores de los estudiantes, al estudiante efectuar el cobro deberá insertar en un dispositivo electrónico una tarjeta propia, la tarjeta tendrá más menos el siguiente modelo:

---------------------------
() () () () () () () ()
---------------------------

El símbolo "()" significa una "cabidad" para un pequeño orificio. En el dispositivo deberán ir precisamente 8 pequeñas barras colocadas a una x distancia una de las otras y sostenidas por un muellesito que al presentarse la tarjetica esta presiona una "palanquita" que empuja los muelles con las barras hacia delante, de forma tal que los "()" que estén perforados en la tarjeta permitan traspasar las barras y cerrar el circuito en una otra placa del dispositivo, el modelo electrónico de la placa sería así mas o menos:


12V+
>-
|
+--+--+--+--+--+--+--+
| () () () () () () () () |
--|--|--|--|--|--|--|--|-
[] [] [] [] [] [] [] []
R1 R2 R3 R4 R5 R6 R7 R8
| | | | | | | |
+--------------------+--+
|
|
-> RTS


Bueno espero que puedan entender la idea de esto, según tengo entendido, al pin RTS por cada combinación de orificios hechos en la tarjeta llegará un voltaje distinto, para eso son esas Resistencias "[]" ¿no?,
La pregunta es, ¿Cómo puedo leer este voltaje existente?.
Yo no conozco mucho de electrónica, de hecho, no conozco nada, espero que me puedan ayudar y dar sus sugerencias, no se si estoy usando el RTS debidamente, no comprendo mucho de la funcionalidad del puerto serie, si me pueden dar alguna explicación lo agradecería muhco. He visto que en este foro hay personas con mucha experiencia sobre estos temas.
Saludos nuevamente y sinceramente, MIL GRACIAS de antemano colegas.
AEFF!!!

Ñuño Martínez
05-02-2010, 12:36:17
Bueno espero que puedan entender la idea de esto, (...) Pues sinceramente, no.

En principio, dudo que los PC no sean capaces de detectar el voltaje de un pin en un puerto RTS, y si lo hacen lo más seguro es que sea únicamente por seguridad interna. Ten en cuenta que se trata de un sistema digital, no analógico, por lo que lo que importa es si hay o no suficiente diferencia de potencial entre el cable de datos y la masa durante el suficiente tiempo. Es decir, si hay diferencia de potencial entonces lo interpreta como un 1, si no, es un 0. Punto.

Visto así, si un "pin" presenta un 0, la diferencia de potencial entre este y la masa estará entre 0V y 10V+, mientras que si es un 1 entonces dicha diferencia de potencial será 10V+ o más (suponiendo que esté especificado a 12V+).

De todas formas, no sé hasta qué punto puede obtenerse el valor de cada pin de forma independiente. Quizá a muy bajo nivel (hablo de muy bajo nivel, pero mucho mucho) pero no estoy seguro.

rgstuamigo
05-02-2010, 15:18:02
Segun :rolleyes: veo es una tema que deberia estar en ASM y Microcontroladores (http://www.clubdelphi.com/foros/forumdisplay.php?f=44) ;), lo voy a mover allá.;)

DriverOp
05-02-2010, 15:44:42
El puerto serie no sirve para medir voltajes, es una interfaz digital. Para hacer lo que quieres necesitarías una DAC (Digital-Analog Converter) y aún así tendrás algunas dificultades en la parte electrónica.

Mejor que todo eso se me ocurre que habría sido más fácil usar el puerto paralelo, porque según entiendo la tarjeta del estudiante almacena un número de un byte (8 bits) y lo que hace es abrir y cerrar ocho circuitos. Vamos, es igual a lo que hacían las viejas tarjetas perforadas. Por el puerto paralelo puedes recibir esos 8 bits de una sola vez y para formar el byte pues nada más haría falta cerrar y abrir los bits individuales. Justo lo que hace la tarjeta según el circuito.

aeff
05-02-2010, 16:38:13
saludos!!

agradezco que me hallan respondido, y no saben cuanto,

mira, no se me había ocurrido porque además ni idea tengo de como funciona el puerto paralelo y cuales son los pines que debo activar...

por otro lado, ¿como leería estos 8 bits desde Delphi?

mil gracias de antemano colegas.
saludos!! aeff!!

DriverOp
05-02-2010, 19:43:07
Mira en este momento no tengo toda la data sobre puertos paralelos pero si buscas en Internet seguro encuentras toneladas de información acerca de pines y cómo se mapean en memoria.

Específicamente para Delphi me viene a la memoria los componentes Async32 que debo tener por ahí para Delphi 6.0. Estos componentes te permiten de forma fácil y segura leer datos de cualquier puerto (excepto USB).

aeff
06-02-2010, 06:36:09
Saludos,

Primero que todo, sinceramente, gracias por responder y pido disculpas por tanta insistencia.

Mira, si te fijas bien soy de Cuba y no gozo del privilegio de tener conexión FULL a Internet por problemas de políticas ajenas a este foro.

Quisiera que si me pudieran escribir publicamente en este foro alguna referencia o ejemplo de como acceder al puerto paralelo y una idea del funcionamiento de este en conjunto con sus Pines para poder encaminar un buen circuito y posteriormente desarrollar la aplicación, francamente, lo agradecería mucho.

Disculpen las molestias que pueda ocasinar, pero soy un aprendiz supernovato en este campo.

Mil gracias nuevamente de antemano.

Saludos. AEFF!!

escafandra
07-02-2010, 22:03:58
Quizás te interese este (http://www.clubdelphi.com/foros/showthread.php?t=59475&highlight=puerto&page=2) tema.

Saludos.