Estás en: Inicio >> Foros >> Informática >> Programación
Programación /

[C/C++] leer info del puerto paralelo

Participa en el tema [C/C++] leer info del puerto paralelo en el foro Programación.
Hola a todos! Bueno, les comento... estoy haciendo un proyecto con un microcontrolador, y una ...

Buscar en este tema:
 
  •  
    #1 [C/C++] leer info del puerto paralelo
    Hola a todos!

    Bueno, les comento... estoy haciendo un proyecto con un microcontrolador, y una parte del mismo es enviarle info a un pin del puerto paralelo. Mi intencion es hacer un pprograma que lea cualquier pin (obviamente de lectura) del perto paralelo, y me cree un registro de su estado.
    Parece simple.... a mi se me complica un poco...
    Alguien me puede dar una pista??

    Muchas Gracias!


    PD: tambien acepto ayudas en batch, aunque supongo que debe ser mas simple en C++
    +
     
    0
    Me gusta
     
    http://www.psicofxp.com/forums/programacion.313/804895-c-c-leer-info-del-puerto.html
    | Más
  • #2 Re: leer info del puerto paralelo

    Bueno, para leer del puerto paralelo o serie en c++, necesitas las funciones intport (lee una palabra de 2 bytes) ó intportb (lee una palabra, es decir, 1 byte). Estas funciones se encuntran en la librería dos.h
    para trabajar con ambas, necesitas una variable que reciba el dato leído y pasarle un parámetro a la función, indicando la dirección del puerto, que, usulamente es 0x378.
    Ej:
    #include <dos.h>
    #include <stdio.h>
    #define dir 0x378

    void main() {
    int valor_leido;
    valor_leido=intportb(dir); //leemos del puerto y guardamos el dato en la variable valor_leido
    printf("Valor enviado por el puerto %d",valor_leido);
    sleep(4);
    }


    Para guardarlo en un registro, necesitas saber sobre el manejo de archivos en c++.
    Verifica bien qué quieres guardar en tu registro, para saber si lo que necesitas son archivos de texto o binarios.
    Me gusta este mensaje
  • #3 Re: leer info del puerto paralelo

    buenisimo!
    Muchas gracias!
    Una vez que tengo los datos, yo me arreglo para guardarlo en archivos....

    Pero tengo un problema, que ya me ocurrio con varios programas... Y creo que esta explicacion que me diste, tambien sufre de lo mismo.

    Siempre que quiero hacer un programa que tiene que "esperar" algun cambio o lo que fuere... lo hago con bucles. Chequeo si cambió el estado, si no cambio sigo con el bucle.... y asi hasta que cambie.
    Pero esto me come el micro... Como el programa siempre esta laburando, el micro se queda siemrpe al 100%.

    Tiene que haber una forma de laburar, por ejemplo con interrupciones. Que el programa se quede inactivo hasta que espere alguna interrupcion, y recien cuando se produzca ésta, hacer lo que uno desee.
    Se entiende lo que digo? Yo hasta ahora la unica forma que se me ocurre, es hacer bucles infinitos de chequeo de cambio de estado, pero me come el micro.

    Bueno, me parece que me enrede mucho en la explicacion =P. Espero que se entienda, y gracias por ayudar de nuevo!!
    Me gusta este mensaje
  • #4 Re: leer info del puerto paralelo

    mmmmmmmmmmm nadie puede ayudaR?
    Me gusta este mensaje
  • #5 Re: leer info del puerto paralelo

    Hola, a ver, creo que puedo ayudar pero no entiendo del todo la situación.

    Lo que estás programando es el manejo del puerto paralelo o de los puertos del microcontrolador?

    Si estás usando C para programar el microcontrolador, seguro estás usando alguna librería o programa que traduce el código C a assembler, con el que se programa el micro. Entonces, para usar interrupciones tenés que buscar en la librería que estés usando como se programan las interrupciones del micro.. pero eso es independiente del manejo que hagas del puerto paralelo de la PC.

    El programa que te pasaron antes es para ejecutarlo en la PC, y leer los datos que entran por el puerto paralelo.

    Si lo que querés es que el micro no trabaje mientras no tenga nada que leer, podrías conectar una salida del puerto paralelo al pin de interrupción del micro para que el mismo pueda permanecer en 'stand by' hasta que lo necesites.

    Ok, perdón si te dije cosas que ya sabés, lo que pasa es que no entiendo bién qué queres progamar...

    Saludos!

    PD:Ah, y es mi primer participación en el foro... (leí las reglas y todo... espero que no halla problemas!)
    Me gusta este mensaje
Estás en: Inicio >> Foros >> Informática >> Programación


Estadísticas del tema
  • 4 RESPUESTAS
  • 2890 VISTAS
  • 3 USUARIOS RESPONDIERON
 
Ir arriba
Contacto | Acerca de | Ayuda | Términos Legales | privacidad | Pautas de convivencia | Mapa de los foros | TrabajÁ con nosotros
©2008 Psicofxp.com S.A. - Todos los derechos reservados
Certifica IAB