1 votos

Lectura y envío de valores a una placa de relés de E/S de 104 pc

Me pregunto cómo enviar valores a una placa de E/S de un PC 104. Hay varios en el mercado que utilizan un enfoque similar. La información que rodea a la que tengo en mi poder se puede encontrar aquí . Tengo el modelo R104-88 (8 entradas y 8 salidas). Según tengo entendido tengo que seleccionar que dirección base quiero usar con los puentes. Usando los puentes he seleccionado que la dirección base sea 300H. Así que si yo fuera a leer 302H estaría recibiendo las entradas de los pines 0, 1 , 2 y 3. El problema es que no importa cuáles sean las entradas, siempre leo FFH de la dirección 302H. Estoy usando inpout32.dll para leer las direcciones. El código que estoy usando para hacer esto usando python está abajo. Estoy ejecutando Windows XP como mi sistema operativo.

import ctypes
print ctypes.windll.inpout32.Inp32(0x302)

¿Hay una forma mejor de hacerlo? ¿Qué me falta? ¿Tengo que configurar el hardware de alguna manera? No sé qué hacer a continuación. Disculpas si este no es el foro correcto para preguntar. La pregunta está relacionada con la electrónica, el stackover flow y el super user.

Editar:

La configuración que estoy utilizando es un PC 104. La placa de E/S encaja en la parte superior del 104pc y la fuente de alimentación.

1voto

Andrew Walker Puntos 9038

En los viejos tiempos, podías sostener una sonda de alcance o (mi favorita) una sonda lógica audible en la salida de selección del chip de decodificación '138, y oírla disparar cuando dabas con la dirección correcta, o al menos oírla disparar más frecuentemente si escribías un bucle apretado con depuración para sólo leer la dirección una y otra vez... pero con el CPLD ahí la señal de decodificación está probablemente enterrada dentro.

Podrías abordar primero el lado de la salida: puedes escribir un programa para intentar alternar los relés en todas las direcciones posibles. Aunque parece que los lados de entrada y salida tienen una selección de direcciones separada?

También podrías probar tu software contra otro dispositivo de E/S, por ejemplo, leyendo las líneas de estado de un puerto paralelo (verdadero hardware de bus ISA, no USB), ya sea en el sistema PC104 si tiene uno, o en un PC vintage diferente...

También es posible que simplemente tengas una placa defectuosa o un conflicto de direcciones con otro módulo - intenta poner la placa en una dirección diferente.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X