Tabla de contenido:
- Paso 1: el puerto del joystick
- Paso 2: puerto de joystick en VB
- Paso 3: impleméntelo usando el puerto paralelo en DOS
- Paso 4: Colocación del Ciruit en LPT
- Paso 5: ¡Úselo
Video: Convertidor analógico a digital simple y económico: 5 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:45
Desde los tiempos en que los ADC eran caros y raros, llega una solución de hardware y software para la adquisición de datos para PC. Basado en el antiguo puerto de Joystick compatible con IBM, una técnica para activar un multivibrador monoestable, un transductor resistivo (termistor, fotocélula, medidor de tensión, etc.) y luego contar cuántos ciclos pasa antes de que la salida del multivibrador se eleve es bastante simple de implementar en la mayoría de las plataformas de PC y en la mayoría de los idiomas. Se muestran archivos de muestra de VisualBasic y Qbasic.
Paso 1: el puerto del joystick
Durante años, muchas PC domésticas compatibles con IBM venían con un puerto de joystick que tenía pines de señal de los botones A y B en el eje X, el eje Y y los botones A y B. Se puede acceder al pequeño conector DB-15 en la dirección 200h y 201h. El joystick en sí era solo dos potenciómetros y dos botones. Dentro de la placa base de la PC, se ubicaron dos multivibradores monoestables re-activables (RMM para abreviar) con capacitores fijos y pines IN / OUT. La constante de tiempo RC fue establecida por los potenciómetros y los condensadores. Para iniciar la conversión de la señal, debe hacer una ESCRITURA en la dirección del puerto 200h y luego comenzar a contar hasta que obtenga un poco ALTO haciendo una LECTURA en la dirección del puerto 200h. Esto se puede implementar en cualquier idioma (básico, pascal, c).
Paso 2: puerto de joystick en VB
Este es un código de muestra que utilicé para probar mi joystick de depósito de chatarra: Private Sub Timer1_Timer () Dim V, H As Integer Out & H201, & HFF For H = 1 To 3000 If (Inp (& H201) And & H1) / & H1 = 0 Then Exit For Next H Horizontal. Text = H Out & H201, & HFF For V = 1 To 3000 If (Inp (& H201) And & H2) / & H2 = 0 Then Salit For Next V Vertical. Text = V If (Inp (& H201) And & H10) / & H10 = 0 Entonces Shape1. FillColor = & HFF If (Inp (& H201) And & H20) / & H10 = 0 Entonces Shape2. FillColor = & HFF If (Inp (& H201) And & H10) / & H10 = 1 Entonces Shape1. FillColor = & HC0C0C0 If (Inp (& H201) Y & H20) / & H20 = 1 Luego Shape2. FillColor = & HC0C0C0 Shape3. Left = H Shape3. Top = VEnd Sub El programa solo funciona si tiene un joystick real conectado a su PC. Los cuadros de texto horizontal y vertical mostrarán un valor relacionado con los movimientos X e Y de su palo. Además, un cuadrado se moverá dentro de un cuadro más grande para representar sus movimientos. Al presionar los botones A y B se leerán los círculos grises. El archivo EXE compilado de muestra, el código fuente y la biblioteca INPOUT32. DLL se encuentran en el archivo. RAR.
Paso 3: impleméntelo usando el puerto paralelo en DOS
El 74 LS 123 es el que usé para obtener el mismo sistema que el puerto del joystick. Tiene dos RMM. En el archivo PDF puede ver la hoja de datos y un circuito simple para conectar a su puerto paralelo. Soy un fan de Qbasic (porque está ampliamente disponible) por lo que el código está escrito en él. El procedimiento es el mismo que en el ejemplo de VB: LPTdata = & H378 LPTstatus = LPTdata + 1: LPTcontrol = LPTdata + 2YMAXX = 500SCREEN 2LINE (9, 1) - (630, 170), B, & H3333VIEW (10, 2) - (629, 169) VENTANA (0, YMAXX) - (620, 0) MAXX = 620DIM D (MAXX) MIENTRAS INKEY $ = "" OUT LPTcontrol, & H1 OUT LPTcontrol, & H0 FOR Y = 1 TO YMAXX IF (INP (LPTstatus) Y & H10) / & H10 = 1 LUEGO SALGA PARA LA SIGUIENTE Y LOCALIZACIÓN 23, 1 IMPRIMA USANDO "####"; LÍNEA Y (0, 0) - (MAXX, YMAXX), 0, BF PARA I = 1 A LÍNEA MAXX (I, D (I - 1)) - (I, D (I)) D (I - 1) = D (I) NEXT ID (MAXX) = YWEND Se utiliza un pin de salida para activar el MMR y un pin de entrada para leer la salida del mismo.
Paso 4: Colocación del Ciruit en LPT
El sistema se implementa como mitad hardware y mitad software. La conversión de una resistencia variable en un retardo de tiempo se utiliza para contar los pulsos y este recuento es nuestro valor deseado. El archivo qbasic trazará la pantalla de la señal y luego la desplazará hacia la derecha.
Paso 5: ¡Úselo
Este es un IC común, pero también se pueden usar otros monoestables. Muchas personas que viven en lugares donde ADC son difíciles de encontrar, podrían querer usar este circuito como un proyecto escolar para trazar la temperatura o cualquier otra cosa, siempre que pueda hacer que el MMR cambie su retraso cuando lo haga su sensor.
Recomendado:
Convertidor simple DC - DC Boost usando 555: 4 pasos
Convertidor elevador CC-CC simple con 555: a menudo es útil en un circuito tener voltajes más altos. Ya sea para proporcionar rieles + ve y -ve para un amplificador operacional, para activar zumbadores o incluso un relé sin la necesidad de una batería adicional. Este es un convertidor simple de 5 V a 12 V CC construido con un temporizador 555 a
My First Feather Wing: convertidor de analógico a digital: 5 pasos
Mi primer ala de plumas: convertidor analógico a digital: ¡Hola, compañeros creadores! El instructivo de hoy trata sobre algo realmente especial. Este dispositivo es MI PRIMERA PLUMA, siguiendo el factor de forma de Adafruit. ¡También es mi PRIMERA PCB MONTADA EN SUPERFICIE! Mi uso más destacado de este escudo es en un dispositivo que me enfadó
Reloj Digilog "simple" (analógico digital) con material reciclado: 8 pasos (con imágenes)
Reloj Digilog "simple" (analógico digital) con material reciclado: ¡Hola a todos! Entonces, en este Instructable, voy a compartir cómo hacer este reloj digital + analógico con material barato. Si creen que este proyecto "apesta", puede irse y no continuar leyendo este Instructable. ¡Paz! Lo siento mucho si
Circuitos GPIO de Raspberry Pi: uso de un sensor analógico LDR sin un ADC (convertidor analógico a digital): 4 pasos
Circuitos GPIO de Raspberry Pi: uso de un sensor analógico LDR sin un ADC (convertidor analógico a digital): en nuestros Instructables anteriores, le mostramos cómo puede vincular los pines GPIO de su Raspberry Pi a los LED e interruptores y cómo los pines GPIO pueden ser altos o bajo. Pero, ¿y si quieres usar tu Raspberry Pi con un sensor analógico? Si queremos usar un
Convertidor de soporte para portátil / portátil a escritorio económico: 3 pasos
Convertidor de soporte para portátil / portátil a escritorio económico: Me encuentro usando mi portátil durante largos períodos de tiempo. Se vuelve incómodo después de un tiempo. Idealmente, el teclado y la pantalla deben estar separados para reducir la tensión del cuello durante el uso prolongado. Si es un usuario de una computadora portátil a tiempo completo, le sugiero que cree s