Newsgroup: it.hobby.elettronica.digitale
Titolo: 18F4550 e USB (progetto MikroC)

Salve a tutti, ho realizzato un circuito con un pic 18F4550 collegato
esattamente come nella documentazione di esempio del compilatore
MikroC e caricato un firmware stando attento alle frequenze dei quarzi
in gioco nel circuito, ma sembra che non riesca a far riconoscere la
periferica da Windows
Il circuito in questione è il seguente:
http://img146.imageshack.us/i/p8100055.jpg/
E il programma in MikroC è il seguente:
------------------------------------------------------------------------
unsigned char RD_len;
unsigned char userWR_buffer[64];
unsigned char userRD_buffer[64];
void interrupt()
{
  HID_InterruptProc();
}
void Init_Main()
{
  INTCON = 0;                             // Disable GIE, PEIE,
TMR0IE,INT0IE,RBIE
	INTCON2 = 0xF5;
	INTCON3 = 0xC0;
	RCON.IPEN = 0;                          // Disable Priority Levels on
interrupts
	PIE1 = 0;
	PIE2 = 0;
	PIR1 = 0;
	PIR2 = 0;
	ADCON1 |= 0x0F;                         // Configure all ports with
analog function as digital
  TRISA = 0xFF;
	TRISB = 0xFF;
	TRISC = 0xFF;
	TRISD = 0x00;
	TRISE = 0x07;
	LATA = 0;
	LATB = 0;
	LATC = 0;
	LATD = 0;
	LATE = 0;
}
void main()
{
     char i;
     Init_Main();
     HID_Enable(userRD_buffer, userWR_buffer);
     Delay_mS(1000);
     Delay_mS(1000);
          while(1){
          RD_len = HID_Read();
                }
  HID_Disable();
}
------------------------------------------------------------------------
Per l'oscillatore da 8Mhz ho impostato sia HS che PLL e il flag del
PLL è a 2 (divide a 4mhz la frequenza), poi il flag USBDIV è a 1
(divide i 96mhz del pll in 48mhz per la presa usb), la cpu è anch'essa
controllata a 48mhz
Qualcuno può aiutarmi cortesemente? Sto letteralmente impazzendo

 
http://img146.imageshack.us/i/p8100055.jpg/
sicuramente non ti sono di aiuto, ma in seguito al tuo post, mi si e accesa 
una lampadina in testa ,
" con tale pic posso pilotare dei i/o direttamenta a usb "
allora ho fatto una breve ricerca in gooooogle , ed ho trovato questo 
interessante schema,
ma se ti puo tornare utile ? 

 Qualcuno pu� aiutarmi cortesemente? Sto letteralmente impazzendo
Ciao...
quando feci la stessa prova
al posto del condensatore al tantalio nel pin vUsb
misi 2 condensatori poliestere da 100nF fra pin vusb e massa
dopo questo..funzion� tutto..
cmq il 4550 � una "bestia" strana...
spero di esserti stato d'aiuto
Contrario 

 Qualcuno può aiutarmi cortesemente? Sto letteralmente impazzendo
Ciao,
non conosco il mickroC perche' uso il Pic C e quindi non 
posso esserti di grande aiuto nello specifico; in generale, 
potrei pero' darti una mano, se altri non ti aiutano, avendo 
una certa esperienza con i 25/4550 e simili.
Quale risultato hai quando connetti la periferica alla usb?
Hai provato a vedere con uno sniffer Usb se e eventualmente 
quali dati passano sulla porta?
Hai un led che lampeggia, magari con una frequenza 
rilevabile a occhio, diciamo un secondo, per essere sicuro 
che l'oscillatore funziona?
Che strumentazione puoi avere disponibile?
Se usi Windows, nelle periferiche di sistema, vedi la tua 
periferica usb, magari con il punto esclamativo, ma la vedi?
Conosci il programma di test per le periferiche usb/hid 
distribuito gratuitamente da Usb.org?
Lo hai usato?
ciao (per ora)
Angelo

Vi ringrazio a tutti per l'aiuto, ma apparentemente ho risolto.
Non so come ma il pic che utilizzavo si è "scassato" in maniera
decisamente strana. Un voltaggio troppo elevato o qualche corto fatto
per sbaglio hanno fatto partire il PLL (suppongo) e dunque accendere
un led tramite pic funzionava, ma fargli assumere una precisa
frequenza no. E sono sicuro del problema del dispositivo perchè da
qualche giorno non è più possibile accenderci nemmeno un led...
Grazie mille in ogni caso!