Autor Tema: Proyecto PicUSB  (Leído 392369 veces)

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado gera

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2188
Re: Proyecto PicUSB
« Respuesta #420 en: 24 de Junio de 2008, 04:56:18 »
pero tiene q haber una manera mas facil... si no de q sirve q el pic soporte usb? para eso hacemos todo por software y listo...
bah, no se... me llama mucho la atencion q sea tan complicado...

"conozco dos cosas infinitas: el universo y la estupidez humana. Y no estoy muy seguro del primero." A.Einstein

Desconectado Geo

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 922
    • Mexchip
Re: Proyecto PicUSB
« Respuesta #421 en: 25 de Junio de 2008, 01:02:30 »
Esto es lo fácil, ahora hazlo en ensamblador para ver lo que no lo es :P.
La imaginación es el límite.
Visita mi blog, en inglés o en español :).
Mini curso de introducción a VHDL en MEXCHIP :-/

Desconectado cerebro

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 735
Re: Proyecto PicUSB
« Respuesta #422 en: 26 de Junio de 2008, 00:19:26 »
 8) hola gente hace como un mes que arranque a investigar el usb y la verdad que este proyecto ayudo mucho ya estoy haciendo varias cositas gracias j1m.. :-/
LAS MALVINAS SON ARGENTINAS!

Desconectado J_jOsE

  • PIC12
  • **
  • Mensajes: 57
Re: Proyecto PicUSB
« Respuesta #423 en: 28 de Junio de 2008, 12:56:02 »
Hola a todos, decirles que siguan adelante y que pues yo aprendi mucho en este foro,
pero ahora me tope con una deficultad, estoy trabajando en un proyecto donde necesito
enviar desde la PC 10 bytes en uno y almacenarlos en el PIC 18f4550 en variables
basandome en el ejemplo de RedPIC de EL USB DESENCADENADO : BULK USB Transferencia bidireccional masiva de información
el problema esta en el PIC que no se si recibe aca les dejo el pequeño programa
estoy trabajando con el compilador CCS_PCWHD_v4.065 y el proteus 7.2SP6
Hechenme una mano porfa que ya no se que hacer  :(

///////////////////////////////////////////////////////////////////////////////////////////////////
#include <18F4550.h>
#fuses HSPLL,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL5,CPUDIV1,VREGEN
#use delay(clock=48000000)
#use rs232(baud=9600, xmit=PIN_C6, rcv=PIN_C7)

#define USB_HID_DEVICE     FALSE             // deshabilitamos el uso de las directivas HID
#define USB_EP1_TX_ENABLE  USB_ENABLE_BULK   // turn on EP1(EndPoint1) for IN bulk/interrupt transfers
#define USB_EP1_RX_ENABLE  USB_ENABLE_BULK   // turn on EP1(EndPoint1) for OUT bulk/interrupt transfers
#define USB_EP1_TX_SIZE    32                // size to allocate for the tx endpoint 1 buffer
#define USB_EP1_RX_SIZE    32                // size to allocate for the rx endpoint 1 buffer

///////////////////////////////////////////////////////////////////////////////////////////////////
#include <pic18_usb.h>                      // Microchip PIC18Fxx5x Hardware layer for CCS's PIC USB driver
#include ".\include\rr2_USB_Monitor.h"      // Configuración del USB y los descriptores para este dispositivo
#include <usb.c>                            // handles usb setup tokens and get descriptor reports

#define RecCommand recbuf[0]

///////////////////////////////////////////////////////////////////////////////////////////////////
// Defines y otras zarandajas
#byte PORTC =0xF82

#define LED_VERDE    PIN_E0
#define LED_AMARILLO PIN_E1
#define LED_ROJO     PIN_E2

#define Enciende     Output_High
#define Apaga        Output_Low
#define Conmuta      Output_Toggle

#define COMMAND_LED          1
#define COMMAND_FIRMWARE     2
#define COMMAND_STRING_RS232 3

///////////////////////////////////////////////////////////////////////////////////////////////////
// RAM, RAM, RAM
///////////////////////////////////////////////////////////////////////////////////////////////////
int V1;
int V2; 
int V3;   
int V4;
int V5;   
int V6;   
int V7;
int V8;
int V9;
int V10; 


const int8 Lenbuf = 10;
char Version[] = "v.1.0";
int i;


int PM1,PM2;
int c=0;
int8 recbuf[Lenbuf];
int8 sndbuf[Lenbuf];

///////////////////////////////////////////////////////////////////////////////////////////////////
// M A I N
///////////////////////////////////////////////////////////////////////////////////////////////////

void main(void)
{
      SET_TRIS_C(0x00);

   delay_ms(500);
   Apaga(LED_VERDE);
   Apaga(LED_AMARILLO);
   Enciende(LED_ROJO);

   delay_ms(100);
   usb_init();
   usb_task();
   usb_wait_for_enumeration();
   enable_interrupts(global);
   
   while (TRUE)
   {
      if(usb_enumerated())
      {
         Apaga(LED_ROJO);
         Enciende(LED_VERDE);
         if (usb_kbhit(1))
         {

            usb_get_packet(1, recbuf, Lenbuf);
               /*
               que o como debo agarrar los datos "recibidos"??
               hasta donde yo se, es que usb_kbhit(1) retorna TRUE si recibe un byte
               ahora, si usb_kbhit(10) db. retornar TRUE si  recibe 10 byte osea hasta q llegue el 10  byte
               
               recbuf,apunta al primer byte recibido?
               si es asi, => es correcto lo sgte.?
               
                     V1=recbuf[0];
                     V2=recbuf[1];
                     V3=recbuf[2];
                     .
                     .
                     .
                     V10=recbuf[9];
                     
               y asi tendria los 10 bytes que envie guardados en el PIC??
               */
           
         }
      }
      else{
         Apaga(LED_VERDE);
         Enciende(LED_ROJO);
      }
   }
}




No Pain No Gain

Desconectado amartis

  • PIC10
  • *
  • Mensajes: 1
Re: Proyecto PicUSB
« Respuesta #424 en: 07 de Julio de 2008, 12:20:15 »
Me he descargado los proyectos que usan para comunicar el PIC i el PC y tengo un problema.

Concretamente he descargado el que està implementado en CCS para el PIC i en VB6 para el PC. En el programa del PIC no hay problema però cuando intento arrancar el programa de VB6 me sale el siguiente error:

"No se puede encontrar el punto de entrada de la DLL MPUSBGetDeviceCount en mpusbapi.dll"

Alguien sabe lo que puede passar. No se exactamente de donde viene el error.

Gracias.

Desconectado cerebro

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 735
Re: Proyecto PicUSB
« Respuesta #425 en: 11 de Julio de 2008, 20:04:23 »
como cargas la dll load o run time?  si es load tenes bien cargada la libreria (.lib) o de ultima cuando ejecutas tenes todo en la misma carpeta o bien ruteado?    saludos!
LAS MALVINAS SON ARGENTINAS!

Desconectado Flugplatz

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 279
    • Mi canal de YouTube
Re: Proyecto PicUSB
« Respuesta #426 en: 16 de Julio de 2008, 12:40:28 »
Hola.

Alguien ha conseguido hacer funcionar un dispositivo CDC en Windows Vista.

He probado con el archivo INF que viene en la última versión que habéis puesto, y sigue dando el mismo error.

Error 10... algo así como que como el software suministrado no está firmado digitalmente, pues no anda y punto.

Se supone que en los últimos drivers hay algo de que CDC debe funcionar, pero entre tanto archivo y el inglés, me pierdo.

El PIC lee datos de un programa que manda información por el puerto serie, por lo que no puedo rehacerlo usando otro protocolo.

J1M, he visto lo de WinUSB.sys, pero tampoco me aclaro.

Que conste que no pretendo que nadie haga el trabajo por mí, solo pido una ayudita o pista  :shock:. Parece que se puede hacer de alguna manera. Entiendo que la cosa está en definir un INF que enumere un puerto serie y tire de winusb.sys, pero no se por donde meterle mano. ¿debería haber una forma de que se hiciera automáticamente, NO?, o algo como lo que estoy usando ahora, un INF genérico que llama a usbser.sys.

He estado mirando por la WWW, y parece que la cosa trae cola. Hay muchos sitios en los que se habla de ello, pero hay mucha información cruzada.

NO ENTIENDO A MICROSOFT!!! ... Con lo bien que funciona todo en XP, y ale, a fastidiar sacándose cosas de la manga para hacer todo lo viejo incompatible, y encima, con información sesgada para que haya que hacerse un experto en el Windows Vista para cacharrear.  :?

Gracias y un saludo
« Última modificación: 16 de Julio de 2008, 13:14:02 por Flugplatz »
Mi canal de YouTube

Un saludo desde Madrid

Desconectado sc_snader

  • PIC10
  • *
  • Mensajes: 2
Proyecto PicUSB
« Respuesta #427 en: 06 de Agosto de 2008, 20:18:44 »
holas a toda la gente... primero agradecer a J1M, por su aporte.. y por su puesto a toda la gente que anda colaborando con este tema..... bueno les comento que ya tengo trabajando el usb, pero en los ejemplos que tengo siempre se escribe y luego se lee.... cuando he intentado solo leer, me sale un error que dice : INTENTO LEER O ESCRIBIR EN UNA MEMORIA PROTEGIDA....

PD. el pic tiene una rutina que envia un dato cada 1 seg.


Atte.
Snader

Desconectado cocu3

  • PIC12
  • **
  • Mensajes: 77
Re: Proyecto PicUSB
« Respuesta #428 en: 11 de Agosto de 2008, 13:05:41 »
Es una característica de la arquitectura USB: transparente al usuario pero complicado en sus interiores (imagínate implementar un HUB).

oye men, como seria esto de implementar el hub de usb????? :shock: :shock: :shock:

Desconectado martincasalis

  • PIC10
  • *
  • Mensajes: 5
Re: Proyecto PicUSB
« Respuesta #429 en: 13 de Agosto de 2008, 23:44:57 »
Hola amigos!!!! hace rato que vengo siguiendo este foro porque esta por demas interesante. Me decidi a largar con el USB. Estoy programando en CCS y en Visual Basic.

Desde el PIC puedo enviar y recibir todos los datos que quiera.

El problema aparece desde la PC, puedo enviar todo lo que quiera, pero recibir solo puedo recibir 1 solo byte.  :(
Ya he probado las mil y una maneras de recibir mas de un byte y no me es posible. Alguien tiene una idea que es lo que me puede estar pasando?

Agradezco todo tipo de comentarios.  8) 8) 8) 8)

Desconectado jjcblanco

  • PIC10
  • *
  • Mensajes: 20
Re: Proyecto PicUSB
« Respuesta #430 en: 03 de Septiembre de 2008, 09:59:21 »
hola estoy cprobando el picusb y me pasa lo mismo que a trino en la pag 14 pero como que quedo sin solucionar, mi placa tiene con jumpers 3 formas de alimentar : externa , por usb y por el gtp(programador) en todas sus formas me dice que no reconoce el dispositivo y si se lo pongo desde agregar hardware me dice que picusb no se puede iniciar. ya instale el mcphusb y tampoco  ayuda  por favoooor.

gracias

Desconectado sc_snader

  • PIC10
  • *
  • Mensajes: 2
Re: Proyecto PicUSB
« Respuesta #431 en: 05 de Septiembre de 2008, 18:40:30 »
Hola amigos!!!! hace rato que vengo siguiendo este foro porque esta por demas interesante. Me decidi a largar con el USB. Estoy programando en CCS y en Visual Basic.

Desde el PIC puedo enviar y recibir todos los datos que quiera.

El problema aparece desde la PC, puedo enviar todo lo que quiera, pero recibir solo puedo recibir 1 solo byte.  :(
Ya he probado las mil y una maneras de recibir mas de un byte y no me es posible. Alguien tiene una idea que es lo que me puede estar pasando?

Agradezco todo tipo de comentarios.  8) 8) 8) 8)

puedes leer directamente al pic, sin necesidad de primero enviar previamente ???

Desconectado WOOD_girl

  • PIC12
  • **
  • Mensajes: 56
Re: Proyecto PicUSB
« Respuesta #432 en: 12 de Septiembre de 2008, 17:05:02 »
holaaa, a alguien le ha funcionado el picUsb, con un 18f2450, llevo como 3 semanas tratando de comunicarlo, pero me ha sido imposible, me sale dispositivo desconocido, y le tengo los dos condensadores, c7 y cusb, les agradeceria su ayuda.

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: Proyecto PicUSB
« Respuesta #433 en: 13 de Septiembre de 2008, 16:20:08 »
holaaa, a alguien le ha funcionado el picUsb, con un 18f2450, llevo como 3 semanas tratando de comunicarlo, pero me ha sido imposible, me sale dispositivo desconocido, y le tengo los dos condensadores, c7 y cusb, les agradeceria su ayuda.

por lo general es problema de conexión, sino tendras que probar con otro pic.

La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: Proyecto PicUSB
« Respuesta #434 en: 14 de Septiembre de 2008, 03:29:53 »
Yo usé una vez ese PIC y hay que recompilar el código porque no le cabe, tiene mucha menos capacidad que el 18F2550.
Según la versión de CCS que utilices, incluso te tocará modificar cosas en los .H que trae por defecto.
Suerte con eso Jennyfer.


 

anything