ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Вторник
26 ноября
602983 Топик полностью
Эдуард1978 (09.06.2015 09:57, просмотров: 223) ответил Ксения на У меня оно так:
Ура все заработало ! Спасибо за пподержку участникам форума! Вот исправленный участок кода: void InitUSB () { //UHWCON =(1<<UVREGE)|(1<<UIDE)|(1<<UIMOD); UHWCON = (1<<UIMOD) | (1<<UVREGE); // это надо если нужно включить регулятор напряжения для USB модуля // UDINT=0; _delay_ms(15); PLLCSR = (1<<PLLP2) | (1<<PLLP1) |(0<<PLLP0)| (1<<PLLE); while ((PLLCSR & 1)==0); USBCON = (1<<USBE) | (1<<VBUSTE)| (1<<OTGPADE) ; USBCON&=~((1<<HOST)|(1<<FRZCLK)); UDINT=0; // Endpoint 0 selected UENUM=0; // Device endpoint registers initialization // Endpoint 0: On UECONX=0x01; UECFG0X=0x00; // Endpoint X size: 8 // Endpoint X Banks: 1 //ALLOC ON UECFG1X=0x30; UECFG1X|=(1<<ALLOC); while(!(UESTA0X&(1<<CFGOK)));// Endpoint X configuration: Control, OUT //USBCON&=~((1<<HOST)|(1<<FRZCLK)); UDCON&=~((1<<LSM)|(1<<DETACH)); USB_curr_config=0; USB_USWSTAT=POWERED_STATE;// ; default to powered state USB_device_status=1;//, BANKED USB_dev_req=NO_REQUEST;//, BANKED ; No device requests in process UDINT=0; } void USBReset () { UDADDR = 0; USB_address_pending=0; USBCON = (1<<USBE) | (1<<VBUSTE)|(1<<OTGPADE) ;; USBCON&=~((1<<HOST)|(1<<FRZCLK)); UDINT=0; // Endpoint 0 selected UENUM=0; // Device endpoint registers initialization // Endpoint 0: On //UECONX=0x00; UECONX=0x01; UECFG0X=0x00; // Endpoint X size: 8 // Endpoint X Banks: 1 //ALLOC ON UECFG1X=0x30; UECFG1X|=(1<<ALLOC); while(!(UESTA0X&(1<<CFGOK)));// Endpoint X configuration: Control, OUT //USBCON&=~((1<<HOST)|(1<<FRZCLK)); UDCON&=~((1<<LSM)|(1<<DETACH)); index1=0; USB_curr_config=0; USB_device_status=1; USB_USWSTAT=DEFAULT_STATE; UDINT=0; PORTB|=(1<<5); }