TODOPIC
Microcontroladores PIC => * PROYECTOS * => Mensaje iniciado por: Diego_C en 23 de Octubre de 2004, 10:19:00
-
Buenas.
Estoy empezando con un proyecto en el que necesito que el pic se comunique con la PC y viceversa, vi por este foro una pagina a la que hacen link pero no me dice como debo programar en C/C++.
Me gustaría saber si hay alguna API para programar el puerto paralelo (que me parece que es mas facil porque no necesito del MAX232) y mas o menos como se usa.
Muchas gracias.
-
Hola:
es relativamente sencillo comunicarse via serie con la PC ,en cuanto al max 232 lo necesitas para adaptar valores de tensiones entre el puerto serie de la Pc y el pic,a su vez si utilizas el paralelo igual deberas poner buffer para no dañar tu PC ante cualquier error y para asegurarte que los datos que recibas sean 5 volts y no mas asi que particularmente lo veo mas sencillo por la cantidad de conexiones y por que ya posees una terminal Hyperterminal o cualquiera similar que te permite monitorear tu actividad.En lo que respecta al C no es mi fuerte pero hay rutinas por miles para eso ,en pic basic plus o pic basic pro son solo unas pocas instrucciones para efectuar el enlace via serie.Si quieres un ejemplo en basic te lo posteo y si debe ser en C ya te posteara un especialista en el tema.
En serie son TX y RX solo 2 si utilizas el metodo mas sencillo ,en el paralelo minimo un port de 8 completo ......
saludos
khasistos
-
Hay otros integrados el 1488 y 1489 creo que son de Motorola que cumplen la misma funcion que el MAX232 y quizas sean mas economicos.
Saludos.
Escrito originalmente por khasistos
Hola:
es relativamente sencillo comunicarse via serie con la PC ,en cuanto al max 232 lo necesitas para adaptar valores de tensiones entre el puerto serie de la Pc y el pic,a su vez si utilizas el paralelo igual deberas poner buffer para no dañar tu PC ante cualquier error y para asegurarte que los datos que recibas sean 5 volts y no mas asi que particularmente lo veo mas sencillo por la cantidad de conexiones y por que ya posees una terminal Hyperterminal o cualquiera similar que te permite monitorear tu actividad.En lo que respecta al C no es mi fuerte pero hay rutinas por miles para eso ,en pic basic plus o pic basic pro son solo unas pocas instrucciones para efectuar el enlace via serie.Si quieres un ejemplo en basic te lo posteo y si debe ser en C ya te posteara un especialista en el tema.
En serie son TX y RX solo 2 si utilizas el metodo mas sencillo ,en el paralelo minimo un port de 8 completo ......
saludos
khasistos
-
mira en c para enviar datos al lpt podes hacerlo con la funcion dos.h
Aca te va un ejemplo
//realizar un programa que desplace un led en forma secuencial
#include<stdio.h>
#include<math.h>
#include<dos.h>
#include<conio.h>
#define lpt 0x379
void main(void)
{
unsigned int a,b = 1,c;
for(c = 0; c < 7; c++)
{
clrscr();
for(a = 0; a < 7; a++)
{
outportb(lpt,b);
printf("%d %x
",b,inportb(0x3bc));
b = b * 2;
delay(100);
}
for(a = 0; a < 7; a++)
{
outportb(lpt,b);
printf("%d %x
",b,inportb(lpt));
b = b / 2;
delay(100);
}
}
getch();
}
Suerte y si alguien esta con lo de rs232 que me ayuden plis
-
AAhhhh perdon el codigo es este.
//realizar un programa que desplace un led en forma secuencial
#include<stdio.h>
#include<math.h>
#include<dos.h>
#include<conio.h>
#define lpt 0x379
void main(void)
{
unsigned int a,b = 1,c;
for(c = 0; c < 7; c++)
{
clrscr();
for(a = 0; a < 7; a++)
{
outportb(lpt,b);
printf("%d %x
",b,inportb(lpt));
b = b * 2;
delay(100);
}
for(a = 0; a < 7; a++)
{
outportb(lpt,b);
printf("%d %x
",b,inportb(lpt));
b = b / 2;
delay(100);
}
}
getch();
}
-
Estoy en un proyecto de comunicar 2 Pc atraves de un PIC18F4455, un Pc por Rs232 y el otro por USB, no se programar en C, si alguien tiene algo que me ayude o un programa en C explicado, se lo agradeceria