Comunicacion PIC-PC mediante USB

Hola a todos

He leido mucho sobre el tema de la conexion entre PC y PIC utilizando USB, y creo que seria muy interesante añadir este tipo de conexion a mi proyecto de fin de carrera, para descargar los datos obtenido por el ADC y tratarlos en PC.

Mi duda es la siguiente: al conectar el pic por USB a veces me detecta el nuevo hardware automaticamente, y otras lo hace cuando yo hago agregar nuevo hardware desde el panel de control, pero en ninguno de los dos casos consigo instalar los driver. Me sale como dispositivo desconocido, y al intentar instalar los drivers me dice q no se encontro el software necesario, y le estoy indicando la carpeta donde tengo el driver "mchpcdc.inf"

Espero que podais ayudarme, porque llevo ya muxo tiempo perdido con esto, y estoy deseando terminar mi proyecto y para poder matricularme para el siguiente curso

Muchas gracias
 
Por cierto, en alguna ocasion he conseguido instalar el driver, pero tras instalarlo me aparece una ventana que indica que se ha instalado el hardware, pero mas abajo dice "Este dispositivo no puede iniciar (Código 10). Alguna idea

Gracias
 
Hola de nuevo

Tras muchos intentos de instalacion, he obtenido otro caso, pero sigo sin poder comunicar. Me reconoce un nuevo hardware, pero me lo reconoce como dispositivo USB desconocido, y no como un puerto COM, que creo que es como deberia reconocermelo y no puedo comunicar con él. Ya no se me ocurren mas ideas.

Un saludo
 
Saludos...

Para poder ayudarte, indicanos qué circuito de interface pc-pic estas utilizando. Has programar un driver para tu dispositivo..... por ahi esta la solución....

Estamos en contacto
 
Al final el problema parece que era de Hardware. Le puse un condensador entre alimentacion y masa mas grande que el que tenia, y conseguí instalar el driver para el modo CDC del USB. Ya he conseguido esstablecer conexion y desconectar, y voy a ponerme en breve con el intendo de pasar datos del PIC al PC, que era mi intensión

Muchas gracias a todos, y espero que sirva de ayuda al resto de usuarios que tengan problemas con esta comunicacion

Un saludo
 
hola que tal , me encuentro tambien desarrollando inicios con un pic 18f4550 usb, que microcontrolador estás usando? ,que capacitor tenias y cual agregaste , y en que pines de tu pic?
has empezado a desarrollar el programa que va en la pc ? en que lo estas haciendo , tienes el codigo para postear ?,,espero podamos colaborarnos,mi mail: [URL="https://www.forosdeelectronica.com/politicas.htm#2.3"]políticas@delforo.com[/URL], disculpa tanta pregunta pero soy inquieto y la curiosidad por desarrollar ésto más rápido me quema...GRACIAS POR TUS RESPUESTAS
 
Última edición por un moderador:
Uso también un 18f4550. ahora mismo no tengo mi dispositivo a mano, pero pronto lo podré mirar. En cuanto pueda le echo un vistazo y ya te digo el valor de los condensadores. El programa para PC lo estoy haciendo con Visual Basic, pero sólo he podido probar que conecte y desconecte, pero no ha pasar datos todavia.

Ya comentaré mis progresos.

Suerte aldoperex
 
Acabo de encontrar unos apuntes que tenia sobre el trabaja que estoy realizando.
El condensador que tengo puesto ahora es de 100nF. El modo de funcionamiento que utilizo es CDC, creo recordar. Conseguí instalar el driver CDC, y como ya he dicho, sólo he probado a conectar.
 
HOla saludos a todos!.. bueno soy nuevo en esto asi que y como muchos tengo muchas dudas, y espero que nos podamos ayudar,,, bueno,,, lo que necesito realizar para un proyecto final es una conexion PIC-PClocal-internet- PCremota. con una interfaz (o programa) en java que se encontrara alojada en la PClocal y se comunicara por USB al PIC....a su vez esta interfaz se podra acceder a ella por internet desde una PC remota.
La comunicacion PIC-PC como me ha comentado dragonspirit hay como cuatro maneras de poder realizarlo---he analizado dos de ellas la Generica(usbgen.c y usbgen.h) y la CDC, y he conseguido poder comunicarme con el PIC con programas en VB6....información proveniente de otras paginas.... y bueno,, todavia no tengo bien entendido de como puedo enviar y recibir cadenas de mas de 64 bytes porque no se como modificar lo de los end points,...,Alguein sabe como?..si sera que tengo que modificar algo ahi?. y otra pregunta es sobre el programa en java para comunicarme rs232,, o alguien ha probado esta comunicacion con el PIC utilizando CDC.. es decir JAVA-PIC-por medio de USB con CDC--- espero puedan ayudarme.. muchas gracias
 
Saludos, monte el proyecto de PicUSB de la página de hobbypic pero tengo el mismo problema que dragonspirit con el driver, he provado con varios condensadores y nada, será que alguien me puede dar otra pista?
 
a mi tambien me sale error de codigo 10 al instalar el driver, ya me la esta pelando este PICUSB, asi que me voy desde abajo voy a analizar los codigos en C18 que da microchip y con la PID y VIP originales de los ejemplos y los driver originales, me imagino que tendre que modificar los ejemplos para que no hagan nada ya que no tengo el kit para el que bienen pero supongo que sera un paseo, en todo caso seguimos hablando.
 
normalmente ese error se debe a que no cambian el valor del pll y utilizan otros cristales distintos a los que el autor del codigo utiliza, entonces no se prodrucen los 4Mhz necesarios a la entrada del pll, y a consecuencia de eso no se produciran los 48Mhz necesarios, o que no ponen el condensador para el usb de 470n.
la pagina que dice jonathan explican detalladamente esto
 
Ahora si tienen problemas con los driver's utilizen la clase HID, que no los necesita. Ahora si quieren en mi apartado del puerto USB muestro algunos ejemplos sencillos pero funcionales de como realizar la comunicación usando para programar C de CCS VB 2005 para la PC
 
Para la comunicación usb pic no es necesario escribir un driver. Eso seria en el caso de que desarrolles un proyecto USB sin una clase USB definida y totalmente adaptada al proyecto. En la mayoria de los casos esto es innecesario debido a que el sistema operativo los lleva, no recuerdo los nombres de los drivers que se encuentran en la carpete system32 en el caso de windows. En el caso de la clase CDC es usbser.sys, y creo que el de los pen-drives es la clase mass strorage usbstor.sys o algo asi recuerdo, las impresoras usb tambien tienen etc.
 
Claro el tema es el driver para el pic para que la PC lo reconosca como por ejemplo un pendrive. En las librerías de C de CCS aparecen los diferentes descriptores USB para los dispositivos más descocidos. Ahora el tema es como establecer la comunicación con la PC y poder interactuar con ella.
 
Yo que vosostros me decantaria por el firmware escrito en c18 que brinda microchip.Practicamente todos los descriptores están escritos ya.Me puedes pasar un link con el codigo en ccs?
 
como modificar un pic con la pc
mi consulta es la siguiente
tengo una maquina que fue creada con un pic e hice el circuito.
mi maquina dobla alambre a 45 grados.
ellosloh ace con un alambre de un espesor especifico(osea si utilizo otro espesor dobla con otro angulo)
mi objetivo es conectar el pic a la pc para poder predeterminar antes q doble el alambre cuantos grados quiero que lo haga.
ademas q ingresando el espesor de ese alambre lo haga a 45 sin importar el mismo.
ingresar esos datos antes de realizar el proceso.
mi pregunta es
que puedo hacer para lograr esto.en el caso de q sea posible...osea puedo manejar mediante la pc el pic?
agradezco mucho una solucion
saludos
vanesa
 
Por supuesto que lo podés lograr , tenés que crear una interfaze hombre máquina en algún lenguaje de programació. Si no tenés mucha experiencia en lenguajes de programación te recomiendo que leas los manuales de programación que escribio meta (otro usuario del foro), que son muy orientativos y de ahi veas como encaras tu programa.
 
saludos a todos los de este post, veo que tiene tiempo sin ser utilizado espero que alguno pueda ayudarme con este tema.
veran estoy utilizando el USB del pic 18F2450 el PC reconoce el dispositivo como puerto comX sin problema pero cuando habro el hyperteminal no me envia los datos del ADC que configure en el pic tambien cuando trato de enviar los datos al PIC no pasa nada el programa es relativamente sencillo solo envio datos del ADC al puerto USB y esta configurado como CDC... alguien tiene una idea de esto? gracias por la ayuda...
 
Atrás
Arriba