urgente!por favor ayudadme
alguien podria ayudarme a escribir un programa en lenguaje C para leer las siñales enviadas por unos sensores de ultrasonidos a un puerto paralelo y almacenarlas en un fichero?muchas gracias
nececito porfavor un poko de la historia del hardware y del sofware porfavor
Aqui va un esboso general de como podria ser la estructura (sobre compilador Turbo C++, djgpp, o compatible)
#include <dos.h>
#include <stdio.h>
#include <conio.h>
int lee_sensor();
int main (void) {
FILE *f = fopen("fichero.dat", "wt");
if (f) {
while (kbhit()) {
int dato = leer_sensor ();
fprintf(f, "%dn", dato);
}
fclose(f);
return 0;
} else return 1;
}
La rutina leer_sensor deveria hacer un inportb a la direccion el puerto paralelo (generalmente 0x378+2) enmasacaran (con un AND) el bit requerido y devolber el valor 0 o 1 segun resulte de la deteccion del sensor (si es del tipo SI/NO)
Si lo que necesitas es medir distacias deveriamos ver que tipo de hardware estas usando, porque podrias enviar un1 por algun pin que active un sonar y medir el tiempo que tarda en obtenerse un 1 sobre la entrada del sensor (con time o alguna funcion asi) y debolver ese valor pero sin el circuito o las especificaciones del hardware usado es algo dificil saver como podria hacerse, si siges con dudas por fabor escriveme.
Saludos, martin.
#include <dos.h>
#include <stdio.h>
#include <conio.h>
int lee_sensor();
int main (void) {
FILE *f = fopen("fichero.dat", "wt");
if (f) {
while (kbhit()) {
int dato = leer_sensor ();
fprintf(f, "%dn", dato);
}
fclose(f);
return 0;
} else return 1;
}
La rutina leer_sensor deveria hacer un inportb a la direccion el puerto paralelo (generalmente 0x378+2) enmasacaran (con un AND) el bit requerido y devolber el valor 0 o 1 segun resulte de la deteccion del sensor (si es del tipo SI/NO)
Si lo que necesitas es medir distacias deveriamos ver que tipo de hardware estas usando, porque podrias enviar un1 por algun pin que active un sonar y medir el tiempo que tarda en obtenerse un 1 sobre la entrada del sensor (con time o alguna funcion asi) y debolver ese valor pero sin el circuito o las especificaciones del hardware usado es algo dificil saver como podria hacerse, si siges con dudas por fabor escriveme.
Saludos, martin.
