Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

30/10/2009 #641


Respuesta: Control de dispositivos a través del módulo USB del PIC18F2550
Donde consigo las librerías de CDC y como las incorporo al mpLab
31/10/2009 #642

Avatar de Moyano Jonathan

Respuesta: Control de dispositivos a través del módulo USB del PIC18F2550
en la carpeta del programa PICC , dentro de ella se encuentra una carpeta que se llama drivers.
Los documentos al mplab se incorporan solos , lo unico que tenes que hacer es declararlo en tu codigo fuente.

Un saludo !
31/10/2009 #643


Respuesta: Control de dispositivos a través del módulo USB del PIC18F2550
Eso es lo que supuse. Sin embargo, cuando intente compilar el codigo que subiste en tu primer post de este tema, al intentar compilarlo, el usb.h no lo encontra. Soy bastante nuevo en todo.
31/10/2009 #644

Avatar de Moyano Jonathan

Respuesta: Control de dispositivos a través del módulo USB del PIC18F2550
Fijate que versión del compilador estás usando por que las versiones viejas producen errores y depende desde que versión te va incluir las definicione para USB.
01/11/2009 #645


Respuesta: Control de dispositivos a través del módulo USB del PIC18F2550
Instale el MPLAb v8.36 , luego el MCHPFSUSB v2.5b , más tarde cree un proyecto según como esta explicado en MPLAB-C18-Getting-Started. Sin embargo, al copiar el codigo(ejercicio_n1_174) explicado en el primer post de este tema, no me reconoce ciertos .h tales como usb.h.
Por otro lado, note que al instalar MCHPFSUSB v2.5b, era posible encontrar las librerías que estaba necesitan en "C:\MCHPFSUSB\fw\Cdc”.
Por lo que entonces, quería saber como hago para importarlas al mpLab para poder usarlas y que de todo lo que se encuentra en C:\MCHPFSUSB\fw\Cdc he de usar para poder probar lo que se explico en el primer post de este tema.
05/11/2009 #646

Avatar de FRYCK

Respuesta: Control de dispositivos a través del módulo USB del PIC18F2550
hola Moyano me interesa saber si as probado estos driver en vista o si hay alguno que me sirva para este sistema operativo lo que me produce esa inquietud es que realice una aplicación en visual c++ en mfc utilizando unos driver que a posteado palitroques en algún lado en xp corrió bien pero a la hora de correrlos en vista me reconoce el dispositivo pero los datos me dan erróneos no se si fue a causa del driver o otro sea el motivo
gracias
att Fran Restrepo

http://www.migsantiago.com/index.php...id=9&Itemid=10
05/11/2009 #647


Respuesta: Control de dispositivos a través del módulo USB del PIC18F2550
Hola amigos, soy nuevo en este foro, he leido desde el primer post y vaya que son bastantes Gracias aMoyano me he sacado de muchas dudas, pero quiero concretar mis repuestas ya que no soy tan experto en la programada de PICs.
Para empezar quiero comentar que estoy elaborando un proyecto para controlar procesos de produccion. Ahora mi duda es esta... quiero hacer lo mismo como en las gasolineras que te dice la cantidad de litros que se vaciaron, la diferencia que esta sera gobernada por una PC; estoy haciendo una aplicacion en basic para obtener esos resultados. Ahora ya tengo un dispositivo que arme (medidor de flujo) que arroja "x" pulsos por cada litro, y utilizare interfaz USB para enviar los datos al ordenador, tengo a la mano el PIC18F2550, tengo el grabador y y utilizare ccs con el pwc, mi duda es la elaboracion del programa para el PIC, que configuracion tengo que tomar en cuenta tanto de los parametros como de la conexion del circuito, ia tenog la idea ,, pero si peden sugerirme que puedo tomar en cuenta para hacer mi programa..

Nota: La funcion es esta, en la aplicacion VB6 se escoge el tipo de recipiente por ejemplo: 20 litros, y manda la instruccion para que el medidor de flujo solo deje pasar 20 litros y al llegar a los 20 litros mandar a cerrar la valvula. Pero la aplicacion de basic debe de visualizar los litros que que se vaciaron o bien pasaron por el medidor en tiempo real. La cosa es migrar los pulsos a la aplicacion vb6.

Bueno me extendi :s, espero sus aportaciones. Gracias a todos .. Saludos
08/11/2009 #648


Respuesta: Control de dispositivos a través del módulo USB del PIC18F2550
Aca les dejo el uso del vb6+labview+usb
http://img266.imageshack.us/i/pantallad.jpg/

termino las prueba y el hardware y lo subo completo
08/11/2009 #649

Avatar de Meta

Respuesta: Control de dispositivos a través del módulo USB del PIC18F2550
Que trabajo. Muy bien hecho. Ojalá aparezca algo de manual para poder por fin manejar el puerto USB algún día para aprender apagar y encender Led.
08/11/2009 #650

Avatar de Moyano Jonathan

Respuesta: Control de dispositivos a través del módulo USB del PIC18F2550
ajjajaajja , meta pero si ese ejemplo está dentro de este hilo
09/11/2009 #651

Avatar de Meta

Respuesta: Control de dispositivos a través del módulo USB del PIC18F2550
¿Qué tal?
Hace tiempo que no lo sigo, ejejje. Bueno, epero que el proyecto USB siga adelante. Si llega USB 3.0 en navidades llegas las nuevas placas bases y tarjetas, en temas de PIC con USB 3.0 me da que tardarán en venderlo hasta que mucha gente tenga USB 3.0.
10/11/2009 #652

Avatar de Moyano Jonathan

Respuesta: Control de dispositivos a través del módulo USB del PIC18F2550
En temas de PIC con USB lo veo muy complicado hasta dentro de varios años.....ahora en españa veo que están llegando muchos dispositivos con el nuevo protocolo de comunicaciones.
10/11/2009 #653

Avatar de Meta

Respuesta: Control de dispositivos a través del módulo USB del PIC18F2550
¿Cuál protocolos nuevos? Si en España llegan protocolos nuevos, en resto del mundo también.
10/11/2009 #654

Avatar de Moyano Jonathan

Respuesta: Control de dispositivos a través del módulo USB del PIC18F2550
El protocolo USB 3.0
por ejemplo Blue ray ustedes lo tienen hace ya 2 años ....cuando acá recién se está poniendo a la venta a precios altisimos.
Lo que yo te digo es el tema de la brecha digital q hay...acá por donde yo vivo es bastante complicado conseguir ciertas cosas y si las conseguis las tenés que pagar como si fueran oro.
10/11/2009 #655

Avatar de Meta

Respuesta: Control de dispositivos a través del módulo USB del PIC18F2550
A, entiendo. En EE.UU. lo usan 5 años antes que España. muchas cosas. Hoy en día con Ebay, hay cosas que no frenan.

Vendrán rápido. Argentina vende muchos PIC que hasta creo que en España.
10/11/2009 #656


Respuesta: Control de dispositivos a través del módulo USB del PIC18F2550
Hola Amigos del foro, les cuento que yo estoy haciendo un proyecto con un PIC18F4550 conectado vía USB, el software que utilice fue el CCS C, y el visual Basic 6.0,... El proyecto es censillo, se trata de un pequeño programa en visual Basic en el cual yo coloco en binario 4 números por ejemplo 0001 1001 0101 0111 = 1957... y la idea es que este numero 1957 aparezca en 4 displays utilizando únicamente 8 salidas del pic, por lo tanto utilizo 4 para un decodificador y las otras cuatro para manejar 4 transistores que me activan los displays.

Todo va muy bien, ya tengo la comunicación USB y ya se ven los numeros en los dislays, el problema que tengo es que los displeys prenden y apagan mucho y esto se debe a que el visual basic no es capas de hacerlo lo suficientemente rapido como para que no titilen los displays, por este motivo necesito que los datos que envia el visual basic los guarde el pic18f4550 y los muestre continuamente… y no se como hacer esto.

Por favor una ayudita...

Este es el programa del pic.

Código:
//*************************************************************************
//                            PicUSB.c
// Realizado con el compilador CCS por Andrés Felipe Gómez Rendón
// *************************************************************************
 
#include    <18F4550.h>
#fuses      HSPLL,            //CRISTAL DE ALTA VELOCIDAD
#fuses      NOWDT,            //NO TRABAJAR CON EL PERRO GUARDIAN.
#fuses      PROTECT,          //PROTEGER EL CODIGO DE LECTURAS
#fuses      EBTR,             //PROTEGER LA MEMORIA DE LECTURAS
#fuses      CPD,              //PROTEGER LA EEPROM DE LECTURAS
#fuses      CPB,              //PROTEGE EL CODIGO DE BITS DE LECTURAS
#fuses      EBTRB,            //PROTEGE LA TABLA DE LECTURAS
#fuses      NOLVP,            //NO PERMITE LA PROGRAMACION A BAJO VOLTAGE
#fuses      NODEBUG,          //LO PROTEGE DE LECTURAS
#fuses      USBDIV,           //EL RELOJ DEL PLL DE USB SE DIVIDE X 2
#fuses      PLL5,             //DIVIDE POR 5 EL OCSILADOR DE 20MHZ
#fuses      CPUDIV1,          //NO DIVIDA EL RELOJ 
#fuses      VREGEN,           //REGULADOR DE VOLTAJE USB ACTIVO
#fuses      MCLR,             //EL PIN DE MASTER CLEAR ESTA ACTIVO.
#fuses      LPT1OSC,          //EL OXILADOR CONSUME MAS ENERGIA PERO ES MAS ESTABLE AL RUIDO.
#fuses      FCMEN,            //MONITOREA EL OXILADOR Y SI DETECTA UNA FALLA PASA A RELOJ INTERNO..
 
#use        delay(clock= 20000000)                                      // Cristal de 20MHz
 
 
// =========================================================================
// Definiciones para la librería dinámica CCS. Para la configuración dinámica
// hay que definir algunos valores. Están explicados en usb.h
// =========================================================================
 
#define     USB_HID_DEVICE      FALSE                                   // Deshabilitamos el uso de las directivas HID
#define     USB_EP1_TX_ENABLE   USB_ENABLE_BULK                         // Activa EP1(EndPoint1) para las transferencias IN Bulk/Interrupt
#define     USB_EP1_RX_ENABLE   USB_ENABLE_BULK                         // Activa EP1(EndPoint1) para las transferencias OUT Bulk/Interrupt
#define     USB_EP1_TX_SIZE     4                                       // Tamaño reservado para el Buffer Tx EndPoint1
#define     USB_EP1_RX_SIZE     3                                       // Tamaño reservado para el Buffer Rx EndPoint1
 
#include    <pic18_usb.h>                                               // Microchip PIC18Fxx5x Hardware para el CCS PIC USB Driver
#include    <PicUSB.h>                                                  // Configuración del USB y los descriptores para este dispositivo
#include    <usb.c>                                                     // Handles usb ,tokens y descriptores
 
 
// =========================================================================

// =========================================================================
 
#define     LED7            PIN_B7                                      // PORTE.2 OUT DISPLAYS_1 DIS_4 RE7(40)
#define     LED6            PIN_B6                                      // PORTE.2 OUT DISPLAYS_1 DIS_3 RE6(39)
#define     LED5            PIN_B5                                      // PORTB.7 OUT DISPLAYS_1 DIS_2 RB5(48)
#define     LED4            PIN_B4                                      // PORTB.6 OUT DISPLAYS_1 DIS_1 RB4(37)
#define     LED3            PIN_B3                                      // PORTB.5 OUT DISPLAYS_1 BIT_3 RB3(36)
#define     LED2            PIN_B2                                      // PORTB.4 OUT DISPLAYS_1 BIT_2 RB2(35)
#define     LED1            PIN_B1                                      // PORTB.3 OUT DISPLAYS_1 BIT_1 RB1(34)
#define     LED0            PIN_B0                                      // PORTB.2 OUT DISPLAYS_1 BIT_0 RB0(33)
 
#define     LED_ON          output_high                                 // Salida en alto
#define     LED_OFF         output_low                                  // Salida en bajo
 
#define     modo            recibe[0]                                   // Byte que indica el modo de operación
#define     param1          recibe[1]                                   // Primer parámetro recibdo
#define     param2          recibe[2]                                   // Segundo parámetro recibdo
 
#define     entrada_0       envia[0]                                    // Byte a envíar en las entradas
#define     entrada_1       envia[1]                                    // Byte a envíar en las entradas
#define     entrada_2       envia[2]                                    // Byte a envíar en las entradas
#define     entrada_3       envia[3]                                    // Byte a envíar en las entradas
 
#define     APAGA_LED       0
#define     ENCIENDE_LED    1  
 
void main(void)                                                         // Función Principal
{
   int8    recibe[3];                                                  // Declaramos la variable recibe de 3 bytes
   int8    envia[4];                                                   // Declaramos la variable envía de 4 bytes
 
 
   set_tris_B(0B11111111); // Nibble bajo entradas, el alto salidas
 
   usb_init();                                                         // Inicializamos el USB
 
   usb_task();                                                         // Habilita el periferico usb y las interrupciones
   usb_wait_for_enumeration();                                         // Esperamos hasta que el PicUSB sea configurado por el PC
 
  if(usb_enumerated())                                                // Si el PicUSB está configurado
 
     while (TRUE)                                                        // Se cumple siempre (Bucle infinito)
   {
 
       if(usb_enumerated())                                            // Si el PicUSB está configurado
       {
 
           if (usb_kbhit(1))                                           // Si el EndPoint de salida contiene datos del PC
           {
               usb_get_packet(1, recibe, 3);                           // Cojemos el paquete de tamaño 3 bytes del EP1
                                                                       // y lo almacenamos en la variable recibe
 
 
               if (modo==ENCIENDE_LED)                                 // Modo Encender Leds
{
 
 
 
                   if (param1==1) {LED_ON(LED0);}                      // Encendemos led 0
                   if (param1==2) {LED_ON(LED1);}                      // Encendemos led 1
                   if (param1==3) {LED_ON(LED2);}                      // Encendemos led 2
                   if (param1==4) {LED_ON(LED3);}                      // Encendemos led 3
                   if (param1==5) {LED_ON(LED4);}                      // Encendemos led 4
                   if (param1==6) {LED_ON(LED5);}                      // Encendemos led 5
                   if (param1==7) {LED_ON(LED6);}                      // Encendemos led 6
                   if (param1==8) {LED_ON(LED7);}                      // Encendemos led 7
}
 
 
               if (modo==APAGA_LED)                                    // Modo Apagar Leds
{
 
                   if (param1==1) {LED_OFF(LED0);}                     // Apagamos led 0
                   if (param1==2) {LED_OFF(LED1);}                     // Apagamos led 1
                   if (param1==3) {LED_OFF(LED2);}                     // Apagamos led 2
                   if (param1==4) {LED_OFF(LED3);}                     // Apagamos led 3
                   if (param1==5) {LED_OFF(LED4);}                     // Apagamos led 4
                   if (param1==6) {LED_OFF(LED5);}                     // Apagamos led 5
                   if (param1==7) {LED_OFF(LED6);}                     // Apagamos led 6
                   if (param1==8) {LED_OFF(LED7);}                     // Apagamos led 7
 
}
 
 
                 }
 
 
 
               }
 
 
           }
       }


Muchas gracias.

bye.
10/11/2009 #657

Avatar de Moyano Jonathan

Respuesta: Control de dispositivos a través del módulo USB del PIC18F2550
Y si estás usando un timer en el visual basic para que refresque los datos tendrías que ver de bajar bajar el tiempo de refresco para que muestre los datos más rápido. Me parece muy poco factible poder aumentar la velocidad de datos que envía el PIC por USB ... aunque me parece que se puede ( pero no se hacerlo ).
Un saludo !
12/11/2009 #658


Respuesta: Control de dispositivos a través del módulo USB del PIC18F2550
Saludos soy nuevo en el foro, muy buena ayuda moyano he aprendido mucho sobre programacion en pic, quisiera saber si alguien sabe como realizar el programa de adquisición no por Visual, sino por Matlab, estoy en un proyecto y no se como comunicar usb y matlab, lei el foro y Nicolas8702. tiene un programa que comunica usb matlab, sin embargo solo viene el programa en labview, le agradeceria mucho a nicolas8702 si me puede ayudar.
Gracias
14/11/2009 #659


Respuesta: Control de dispositivos a través del módulo USB del PIC18F2550
Hola Jonathan, no puedo más que felicitarte por tanto empeño y dedicación, y además de eso compartirlo con todo el mundo.
Te comento que yo trabaje bastante con USB en modo Bulk, enlazandolo con Visual C# y Labview, en algunos proyectos que tengo que acomodar para poder postear.
Te comento que hasta ahora no había podido solucionar el problema del modo HID, hasta que me hiciste ver la luz!
En los ejemplos que posteaste, no he podido simularlos en proteus ya que falta el archivo inf que pide windows cuando detecta el hard, ¿Cómo solucionas esto?
Desde ya muchas gracias.
14/11/2009 #660

Avatar de Moyano Jonathan

Respuesta: Control de dispositivos a través del módulo USB del PIC18F2550
HID te lo tiene que detectar directamente windows no hace falta los drivers para la comunicación ya que utiliza el driver nativo que trae windows.
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.