logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

AVR V-USB hid problem ze sterownikami.

Linoge 04 Maj 2010 18:30 1852 5
REKLAMA
  • #1 8034689
    Linoge
    Poziom 27  
    Witam serdecznie,
    W ostatnim czasie zbudowalem urzadzenie, ktore przy pomocy popularnych bibliotek vusb wymienia dane z komputerem przy pomocy USB.
    Niestety urzadzenie nie na wszystkich systemach operacyjnych jest poprawnie wykrywane. To znaczy np na xp pro dziala bez problemu a na innym xp pro juz brak odpowiednich sterownikow. Kopiowanie plikow z jednego kompa do drugiego niestety nic nie daje. Jakies pomysly ?

    Pozdrawiam
    Darek
  • REKLAMA
  • #2 8042988
    kubus_puchatek
    Poziom 18  
    problem duch... Bez opisu. równie dobrze to może wynikać z niezarejestrowania w wingrozie pliku biblioteki dll.

    Więcej szczegółów
  • REKLAMA
  • #3 8044915
    Linoge
    Poziom 27  
    Moze rzeczywiscie nie wyrazilem sie zbyt jasno. Po prostu na roznych komputerach nawet z tym samym systemem urzadzenie nie jest poprawnie rozpoznawane. Co wiecej na jednym kompie urzadzenie nie jest poprawnie wykrywane jednak np po 3 probie jest rozpoznawane a potem dziala juz normalnie. Problem lezy najprawdopodobniej po stronie programu uc.

    Kod uc
    
    int main(void)
    {
    	cli();
    	uchar i;
       	//wdt_enable(WDTO_1S);
        
    	/* Even if you don't use the watchdog, turn it off here. On newer devices,
         * the status of the watchdog (on/off, period) is PRESERVED OVER RESET!
         */
        //DBG1(0x00, 0, 0);       /* debug output: main starts */
        /* RESET status: all port bits are inputs without pull-up.
         * That's the way we need D+ and D-. Therefore we don't need any
         * additional hardware initialization.
         */
        //odDebugInit();
        usbInit();
        usbDeviceDisconnect();  /* enforce re-enumeration, do this while interrupts are disabled! */
        i = 0;
        while(--i){             /* fake USB disconnect for > 250 ms */
           wdt_reset();
          _delay_ms(1);
        }
    
    //inicjalizacja licznikow itd .... 
    
        usbDeviceConnect();
    
    	sei();
    
       //DBG1(0x01, 0, 0);       /* debug output: main loop starts */
    
        for(;;){   
            /* main event loop */
            //DBG1(0x02, 0, 0);   /* debug output: main loop iterates */
            wdt_reset();
    		usbPoll();
    		
    		sprzezenie();
    
    		if(change_color_enable>=speed)
    			{
    			change_color();
    			}
    	}
    return 0;
    
    }


    Proszę używać polskich znaków!
    Robak
  • REKLAMA
  • #4 8045281
    markosik20
    Poziom 33  
    Linoge napisał:
    Problem lezy najprawdopodobniej po stronie programu uc.


    Ale może też być problem dopasowania poziomów napieć do magistrali USB.
  • REKLAMA
  • #5 8046345
    uuidgen
    Poziom 12  
    Linoge napisał:
    To znaczy np na xp pro dziala bez problemu a na innym xp pro juz brak odpowiednich sterownikow. Kopiowanie plikow z jednego kompa do drugiego niestety nic nie daje. Jakies pomysly ?
    Zasilasz go z 3.3V? Dałeś diody zenera na liniach usb?
  • #6 8048133
    Linoge
    Poziom 27  
    Zasilany jest z usb
    Diody 3v6V na liniach D+ i D- ... + rezystory 68R
REKLAMA