Blame | Last modification | View Log | Download | RSS feed
ifndef __regmxu6inc__regmxu4inc equ 1savelisting off ; no listing over this file;****************************************************************************;* *;* AS 1.42 - File REGMXU4.INC *;* *;* Contains Bit & Register Definitions for ATmega32U6 *;* AT90USB646/647 *;* AT90USB1286/1287 *;* *;****************************************************************************;----------------------------------------------------------------------------; Chip ConfigurationMCUCR port 0x35 ; MCU General Control RegisterIVCE avrbit MCUCR,0 ; Interrupt Vector Change EnableIVSEL avrbit MCUCR,1 ; Interrupt Vector SelectSMCR port 0x33 ; Sleep Mode Control RegisterSE avrbit SMCR,0 ; Sleep EnableSM2 avrbit SMCR,3 ; Sleep Mode SelectSM1 avrbit SMCR,2SM0 avrbit SMCR,1MCUSR port 0x34 ; MCU Control and Status RegisterJTRF avrbit MCUSR,4 ; JTAG Reset FlagWDRF avrbit MCUSR,3 ; Watchdog Reset OccuredBORF avrbit MCUSR,2 ; Brown-Out OccuredEXTRF avrbit MCUSR,1 ; External Reset OccuredPORF avrbit MCUSR,0 ; Power-On Reset OccuredOSCCAL sfr 0x66 ; Oscillator CalibrationPRR0 sfr 0x64 ; Power Reduction Register 0PRADC avrbit PRR0,0 ; Power Reduction A/D ConverterPRSPI avrbit PRR0,2 ; Power Reduction SPIPRTIM1 avrbit PRR0,3 ; Power Reduction Timer/Counter 1PRTIM0 avrbit PRR0,5 ; Power Reduction Timer/Counter 0PRTIM2 avrbit PRR0,6 ; Power Reduction Timer/Counter 2PRTWI avrbit PRR0,7 ; Power Reduction Two-Wire InterfacePRR1 sfr 0x65 ; Power Reduction Register 1PRUSART1 avrbit PRR1,0 ; Power Reduction USART1PRTIM3 avrbit PRR1,3 ; Power Reduction Timer/Counter 3PRUSB avrbit PRR1,7 ; Power Reduction USBCLKPR sfr 0x61 ; Clock Prescale RegisterCLKPS0 avrbit CLKPR,0 ; Clock Prescaler Select BitsCLKPS1 avrbit CLKPR,1CLKPS2 avrbit CLKPR,2CLKPS3 avrbit CLKPR,3CLKPCE avrbit CLKPR,7 ; Clock Prescaler Change EnablePLLCSR port 0x29 ; PLL Control and Status RegisterPLOCK avrbit PLLCSR,0 ; PLL Lock DetectorPLLE avrbit PLLCSR,1 ; PLL EnablePLLP0 avrbit PLLCSR,2 ; PLL PrescalerPLLP1 avrbit PLLCSR,3PLLP2 avrbit PLLCSR,4;----------------------------------------------------------------------------; JTAG etc.JTD avrbit MCUCR,7 ; JTAG disableCRDR port 0x31 ; Monitor Data RegisterMONDR port 0x31XMCRA sfr 0x74 ; External Memory Access Register ASRW00 avrbit XMCRA,0 ; Wait-state Select Bits for Lower SectorSRW01 avrbit XMCRA,1SRW10 avrbit XMCRA,2 ; Wait-state Select Bits for Upper SectorSRW11 avrbit XMCRA,3SRL0 avrbit XMCRA,4 ; Wait-state Sector LimitSRL1 avrbit XMCRA,5SRL2 avrbit XMCRA,6SRE avrbit XMCRA,7 ; External SRAM/XMEM EnableXMCRB sfr 0x75 ; External Memory Access Register BXMM0 avrbit XMCRB,0 ; External Memory High MaskXMM1 avrbit XMCRB,1XMM2 avrbit XMCRB,2XMBK avrbit XMCRB,7 ; External Memory Bus-keeper Enable;----------------------------------------------------------------------------; EEPROM/Program Memory Accessinclude "eem2.inc"EEPM0 avrbit EECR,4 ; EEPROM Programming ModeEEPM1 avrbit EECR,5include "spmcsr37.inc"SIGRD avrbit SPMCSR,5 ; Signature Read;----------------------------------------------------------------------------; GPIO__PORTPREFIX equ "PORT"PINA port 0x00 ; Port A @ 0x00 (IO) ff.PINB port 0x03 ; Port B @ 0x03 (IO) ff.PINC port 0x06 ; Port C @ 0x06 (IO) ff.PIND port 0x09 ; Port D @ 0x09 (IO) ff.PINE port 0x0c ; Port E @ 0x0c (IO) ff.PINF port 0x0f ; Port F @ 0x0f (IO) ff.GPIOR0 port 0x1e ; General Purpose I/O Register 0GPIOR1 port 0x2a ; General Purpose I/O Register 1GPIOR2 port 0x2b ; General Purpose I/O Register 2PUD avrbit MCUCR,4 ; Pullup DisablePCMSK0 sfr 0x6b ; Pin Change Mask Register 0PCICR sfr 0x68 ; Pin Change Control RegisterPCIFR port 0x1b ; Pin Change Flag Register;----------------------------------------------------------------------------; Interrupt Vectorsenumconf 2,codeenum INT0_vect=2 ; External Interrupt Request 0nextenum INT1_vect ; External Interrupt Request 1nextenum INT2_vect ; External Interrupt Request 2nextenum INT3_vect ; External Interrupt Request 3nextenum INT4_vect ; External Interrupt Request 4nextenum INT5_vect ; External Interrupt Request 5nextenum INT6_vect ; External Interrupt Request 6nextenum INT7_vect ; External Interrupt Request 7nextenum PCINT0_vect ; Pin Change Interrupt Request 0nextenum USB_GEN_vect ; USB General Interrupt Requestnextenum USB_COM_vect ; USB Endpoint Interrupt Requestnextenum WDT_vect ; Watchdog Time-out Interruptnextenum TIMER2_COMPA_vect ; Timer/Counter 2 Compare Match Anextenum TIMER2_COMPB_vect ; Timer/Counter 2 Compare Match Bnextenum TIMER2_OVF_vect ; Timer/Counter 2 Overflownextenum TIMER1_CAPT_vect ; Timer/Counter 1 Capturenextenum TIMER1_COMPA_vect ; Timer/Counter 1 Compare Match Anextenum TIMER1_COMPB_vect ; Timer/Counter 1 Compare Match Bnextenum TIMER1_COMPC_vect ; Timer/Counter 1 Compare Match Cnextenum TIMER1_OVF_vect ; Timer/Counter 1 Overflownextenum TIMER0_COMPA_vect ; Timer/Counter 0 Compare Match Anextenum TIMER0_COMPB_vect ; Timer/Counter 0 Compare Match Bnextenum TIMER0_OVF_vect ; Timer/Counter 0 Overflownextenum SPI_STC_vect ; SPI Serial Transfer Completenextenum USART1_RX_vect ; USART1 Rx Completenextenum USART1_UDRE_vect ; USART1 Data Register Emptynextenum USART1_TX_vect ; USART1 Tx Completenextenum ANALOG_COMP_vect ; Analog Comparatornextenum ADC_vect ; ADC Conversion Completenextenum EE_READY_vect ; EEPROM Readynextenum TIMER3_CAPT_vect ; Timer/Counter 3 Capturenextenum TIMER3_COMPA_vect ; Timer/Counter 3 Compare Match Anextenum TIMER3_COMPB_vect ; Timer/Counter 3 Compare Match Bnextenum TIMER3_COMPC_vect ; Timer/Counter 3 Compare Match Cnextenum TIMER3_OVF_vect ; Timer/Counter 3 Overflownextenum TWI_vect ; Two-Wire Serial Interfacenextenum SPM_READY_vect ; Store Program Memory Ready;----------------------------------------------------------------------------; External InterruptsEICRA sfr 0x69 ; External Interrupt Control Register AISC00 avrbit EICRA,0 ; External Interrupt 0 Sense ControlISC01 avrbit EICRA,1ISC10 avrbit EICRA,2 ; External Interrupt 1 Sense ControlISC11 avrbit EICRA,3ISC20 avrbit EICRA,4 ; External Interrupt 2 Sense ControlISC21 avrbit EICRA,5ISC30 avrbit EICRA,6 ; External Interrupt 3 Sense ControlISC31 avrbit EICRA,7EICRB sfr 0x6a ; External Interrupt Control Register AISC60 avrbit EICRB,4 ; External Interrupt 6 Sense ControlISC61 avrbit EICRB,5EIMSK port 0x1d ; External Interrupt Mask RegisterINT0 avrbit EIMSK,0 ; External Interrupt Request 0 EnableINT1 avrbit EIMSK,1 ; External Interrupt Request 1 EnableINT2 avrbit EIMSK,2 ; External Interrupt Request 2 EnableINT3 avrbit EIMSK,3 ; External Interrupt Request 3 EnableINT4 avrbit EIMSK,4 ; External Interrupt Request 4 EnableINT5 avrbit EIMSK,5 ; External Interrupt Request 5 EnableINT6 avrbit EIMSK,6 ; External Interrupt Request 6 EnableINT7 avrbit EIMSK,7 ; External Interrupt Request 7 EnableEIFR port 0x1c ; External Interrupt Flag RegisterINTF0 avrbit EIFR,0 ; External Interrupt 0 OccuredINTF1 avrbit EIFR,1 ; External Interrupt 1 OccuredINTF2 avrbit EIFR,2 ; External Interrupt 2 OccuredINTF3 avrbit EIFR,3 ; External Interrupt 3 OccuredINTF4 avrbit EIFR,4 ; External Interrupt 4 OccuredINTF5 avrbit EIFR,5 ; External Interrupt 5 OccuredINTF6 avrbit EIFR,6 ; External Interrupt 6 OccuredINTF7 avrbit EIFR,7 ; External Interrupt 7 Occured;----------------------------------------------------------------------------; TimersTCCR0A port 0x24 ; Timer/Counter 0 Control Register AWGM00 avrbit TCCR0A,0 ; Timer/Counter 0 Waveform Generation ModeWGM01 avrbit TCCR0A,1COM0B0 avrbit TCCR0A,4 ; Timer/Counter 0 Compare Match Output B ModeCOM0B1 avrbit TCCR0A,5COM0A0 avrbit TCCR0A,6 ; Timer/Counter 0 Compare Match Output A ModeCOM0A1 avrbit TCCR0A,7TCCR0B port 0x25 ; Timer/Counter 0 Control Register BCS00 avrbit TCCR0B,0 ; Clock SelectCS01 avrbit TCCR0B,1CS02 avrbit TCCR0B,2WGM02 avrbit TCCR0B,3FOC0B avrbit TCCR0B,6 ; Timer/Counter 0 Force Output Compare Match BFOC0A avrbit TCCR0B,7 ; Timer/Counter 0 Force Output Compare Match ATCNT0 port 0x26 ; Timer/Counter 0 ValueOCR0A port 0x27 ; Timer/Counter 0 Output Compare Register AOCR0B port 0x28 ; Timer/Counter 0 Output Compare Register BTCCR1A sfr 0x80 ; Timer/Counter 1 Control Register AWGM10 avrbit TCCR1A,0 ; Timer/Counter 1 Waveform Generation ModeWGM11 avrbit TCCR1A,1COM1C0 avrbit TCCR1A,2 ; Timer/Counter 1 Compare Mode CCOM1C1 avrbit TCCR1A,3COM1B0 avrbit TCCR1A,4 ; Timer/Counter 1 Compare Mode BCOM1B1 avrbit TCCR1A,5COM1A0 avrbit TCCR1A,6 ; Timer/Counter 1 Compare Mode ACOM1A1 avrbit TCCR1A,7TCCR1B sfr 0x81 ; Timer/Counter 1 Control Register BCS10 avrbit TCCR1B,0 ; Timer/Counter 1 Prescaler SettingCS11 avrbit TCCR1B,1CS12 avrbit TCCR1B,2WGM12 avrbit TCCR1B,3 ; Timer/Counter 1 Waveform Generation ModeWGM13 avrbit TCCR1B,4ICES1 avrbit TCCR1B,6 ; Timer/Counter 1 Capture Slope SelectionICNC1 avrbit TCCR1B,7 ; Timer/Counter 1 Capture Noise FilterTCCR1C sfr 0x82 ; Timer/Counter 1 Control Register CFOC1C avrbit TCCR1C,5 ; Timer/Counter 1 Force Output Compare CFOC1B avrbit TCCR1C,6 ; Timer/Counter 1 Force Output Compare BFOC1A avrbit TCCR1C,7 ; Timer/Counter 1 Force Output Compare ATCNT1L sfr 0x84 ; Timer/Counter 1 Value LSBTCNT1H sfr 0x85 ; Timer/Counter 1 Value MSBOCR1AL sfr 0x88 ; Timer/Counter 1 Output Compare Value A LSBOCR1AH sfr 0x89 ; Timer/Counter 1 Output Compare Value A MSBOCR1BL sfr 0x8a ; Timer/Counter 1 Output Compare Value B LSBOCR1BH sfr 0x8b ; Timer/Counter 1 Output Compare Value B MSBOCR1CL sfr 0x8c ; Timer/Counter 1 Output Compare Value C LSBOCR1CH sfr 0x8d ; Timer/Counter 1 Output Compare Value C MSBICR1L sfr 0x86 ; Timer/Counter 1 Input Capture Value LSBICR1H sfr 0x87 ; Timer/Counter 1 Input Capture Value MSBTCCR2A sfr 0xb0 ; Timer/Counter 2 Control Register AWGM20 avrbit TCCR2A,0 ; Timer/Counter 2 Waveform Generation ModeWGM21 avrbit TCCR2A,1COM2B0 avrbit TCCR2A,4 ; Timer/Counter 2 Compare Mode BCOM2B1 avrbit TCCR2A,5COM2A0 avrbit TCCR2A,6 ; Timer/Counter 2 Compare Mode ACOM2A1 avrbit TCCR2A,7TCCR2B sfr 0xb1 ; Timer/Counter 2 Control Register BCS20 avrbit TCCR2B,0 ; Timer/Counter 2 Prescaler SettingCS21 avrbit TCCR2B,1CS22 avrbit TCCR2B,2WGM22 avrbit TCCR2B,3FOC2B avrbit TCCR2B,6 ; Timer/Counter 2 Force Output Compare BFOC2A avrbit TCCR2B,7 ; Timer/Counter 2 Force Output Compare ATCNT2 sfr 0xb2 ; Timer/Counter 2 ValueOCR2A sfr 0xb3 ; Timer/Counter 2 Output Compare Value AOCR2B sfr 0xb4 ; Timer/Counter 2 Output Compare Value BTCCR3A sfr 0x90 ; Timer/Counter 3 Control Register AWGM30 avrbit TCCR3A,0 ; Timer/Counter 3 Waveform Generation ModeWGM31 avrbit TCCR3A,1COM3C0 avrbit TCCR3A,2 ; Timer/Counter 3 Compare Mode CCOM3C1 avrbit TCCR3A,3COM3B0 avrbit TCCR3A,4 ; Timer/Counter 3 Compare Mode BCOM3B1 avrbit TCCR3A,5COM3A0 avrbit TCCR3A,6 ; Timer/Counter 3 Compare Mode ACOM3A1 avrbit TCCR3A,7TCCR3B sfr 0x91 ; Timer/Counter 3 Control Register BCS30 avrbit TCCR3B,0 ; Timer/Counter 3 Prescaler SettingCS31 avrbit TCCR3B,1CS32 avrbit TCCR3B,2WGM32 avrbit TCCR3B,3 ; Timer/Counter 3 Waveform Generation ModeWGM33 avrbit TCCR3B,4ICES3 avrbit TCCR3B,6 ; Timer/Counter 3 Capture Slope SelectionICNC3 avrbit TCCR3B,7 ; Timer/Counter 3 Capture Noise FilterTCCR3C sfr 0x92 ; Timer/Counter 3 Control Register CFOC3C avrbit TCCR3C,5 ; Timer/Counter 3 Force Output Compare CFOC3B avrbit TCCR3B,6 ; Timer/Counter 3 Force Output Compare BFOC3A avrbit TCCR3C,7 ; Timer/Counter 3 Force Output Compare ATCNT3L sfr 0x94 ; Timer/Counter 3 Value LSBTCNT3H sfr 0x95 ; Timer/Counter 3 Value MSBOCR3AL sfr 0x98 ; Timer/Counter 3 Output Compare Value A LSBOCR3AH sfr 0x99 ; Timer/Counter 3 Output Compare Value A MSBOCR3BL sfr 0x9a ; Timer/Counter 3 Output Compare Value B LSBOCR3BH sfr 0x9b ; Timer/Counter 3 Output Compare Value B MSBOCR3CL sfr 0x9c ; Timer/Counter 3 Output Compare Value C LSBOCR3CH sfr 0x9d ; Timer/Counter 3 Output Compare Value C MSBICR3L sfr 0x96 ; Timer/Counter 3 Input Capture Value LSBICR3H sfr 0x97 ; Timer/Counter 3 Input Capture Value MSBTIMSK0 sfr 0x6e ; Timer/Counter 0 Interrupt Mask RegisterTOIE0 avrbit TIMSK0,0 ; Timer/Counter 0 Overflow Interrupt EnableOCIE0A avrbit TIMSK0,1 ; Timer/Counter 1 Output Compare Interrupt Enable AOCIE0B avrbit TIMSK0,2 ; Timer/Counter 1 Output Compare Interrupt Enable BTIFR0 port 0x15 ; Timer/Counter 0 Interrupt Flag RegisterTIMSK1 sfr 0x6f ; Timer/Counter 1 Interrupt Mask RegisterTOIE1 avrbit TIMSK1,0 ; Timer/Counter 1 Overflow Interrupt EnableOCIE1A avrbit TIMSK1,1 ; Timer/Counter 1 Output Compare Interrupt Enable AOCIE1B avrbit TIMSK1,2 ; Timer/Counter 1 Output Compare Interrupt Enable BOCIE1C avrbit TIMSK1,3 ; Timer/Counter 1 Output Compare Interrupt Enable CICIE1 avrbit TIMSK1,5 ; Timer/Counter 1 Input Capture Interrupt EnableTIFR1 port 0x16 ; Timer/Counter 1 Interrupt Flag RegisterTIMSK2 sfr 0x70 ; Timer/Counter 2 Interrupt Mask RegisterTOIE2 avrbit TIMSK2,0 ; Timer/Counter 2 Overflow Interrupt EnableOCIE2A avrbit TIMSK2,1 ; Timer/Counter 2 Output Compare Interrupt Enable AOCIE2B avrbit TIMSK2,2 ; Timer/Counter 2 Output Compare Interrupt Enable BTIFR2 port 0x17 ; Timer/Counter 2 Interrupt Flag RegisterTIMSK3 sfr 0x71 ; Timer/Counter 3 Interrupt Mask RegisterTOIE3 avrbit TIMSK3,0 ; Timer/Counter 3 Overflow Interrupt EnableOCIE3A avrbit TIMSK3,1 ; Timer/Counter 3 Output Compare Interrupt Enable AOCIE3B avrbit TIMSK3,2 ; Timer/Counter 3 Output Compare Interrupt Enable BOCIE3C avrbit TIMSK3,3 ; Timer/Counter 3 Output Compare Interrupt Enable CICIE3 avrbit TIMSK3,5 ; Timer/Counter 3 Input Capture Interrupt EnableTIFR3 port 0x18 ; Timer/Counter 3 Interrupt Flag RegisterGTCCR port 0x23 ; General Timer/Counter Control RegisterPSRSYNC avrbit GTCCR,0 ; Prescaler Reset for Synchronous Timer/CountersPSRASY avrbit GTCCR,1TSM avrbit GTCCR,7 ; Timer/Counter Synchronization ModeASSR sfr 0xb6 ; Asynchronous Status RegisterTCR2BUB avrbit ASSR,0 ; Timer/Counter Control Register2 Update BusyTCR2AUB avrbit ASSR,1 ; Timer/Counter Control Register2 Update BusyOCR2BUB avrbit ASSR,2 ; Output Compare Register2 Update BusyOCR2AUB avrbit ASSR,3 ; Output Compare Register2 Update BusyTCN2UB avrbit ASSR,4 ; Timer/Counter2 Update BusyAS2 avrbit ASSR,5 ; Asynchronous Timer/Counter 2EXCLK avrbit ASSR,6 ; Enable External Clock Input;----------------------------------------------------------------------------; Watchdog Timerinclude "wdme.inc";----------------------------------------------------------------------------; USARTUDR1 sfr 0xce ; I/O Data RegisterUCSR1A sfr 0xc8 ; Control & Status Register AMPCM1 avrbit UCSR1A,0 ; Multi Processor Communication ModeU2X1 avrbit UCSR1A,1 ; Double Transmission SpeedPE1 avrbit UCSR1A,2 ; Parity ErrorDOR1 avrbit UCSR1A,3 ; OverrunFE1 avrbit UCSR1A,4 ; Framing ErrorUDRE1 avrbit UCSR1A,5 ; Data Register EmptyTXC1 avrbit UCSR1A,6 ; Transmit CompleteRXC1 avrbit UCSR1A,7 ; Receive CompleteUCSR1B sfr 0xc9 ; Control & Status Register BTXB81 avrbit UCSR1B,0 ; Transmit Bit 8RXB81 avrbit UCSR1B,1 ; Receive Bit 8UCSZ21 avrbit UCSR1B,2 ; Character SizeTXEN1 avrbit UCSR1B,3 ; Enable TransmitterRXEN1 avrbit UCSR1B,4 ; Enable ReceiverUDRIE1 avrbit UCSR1B,5 ; Enable Data Register Empty InterruptTXCIE1 avrbit UCSR1B,6 ; Enable Transmit Complete InterruptRXCIE1 avrbit UCSR1B,7 ; Enable Receive Complete InterruptUCSR1C sfr 0xca ; Control & Status Register CUCPOL1 avrbit UCSR1C,0 ; Clock PolarityUCSZ10 avrbit UCSR1C,1 ; Character SizeUCSZ11 avrbit UCSR1C,2USBS1 avrbit UCSR1C,3 ; Stop Bit SelectUPM10 avrbit UCSR1C,4 ; Parity Mode : Odd/EvenUPM11 avrbit UCSR1C,5 ; Parity Mode : Enable/DisableUMSEL10 avrbit UCSR1C,6 ; USART Mode SelectUMSEL11 avrbit UCSR1C,7UBRR1H sfr 0xcc ; Baud Rate Register HighUBRR1L sfr 0xcd ; Baud Rate Register Low;----------------------------------------------------------------------------; SPIinclude "spim2c.inc";----------------------------------------------------------------------------; TWIinclude "twimb8.inc";----------------------------------------------------------------------------; Analog Comparatorinclude "acm30.inc";----------------------------------------------------------------------------; A/D Converterinclude "adcm78.inc"MUX4 avrbit ADMUX,4ADHSM avrbit ADCSRB,7 ; A/D Converter High Speed Mode;----------------------------------------------------------------------------; USBinclude "usbm.inc"OTGPADE avrbit USBCON,4 ; VBUS Pad EnableHOST avrbit USBCON,2 ; Host Mode (conditional?)IDTE avrbit USBCON,1 ; ID Transition Interrupt Enable BitVBUSTE avrbit USBCON,0 ; VBUS Transition Interrupt Enable BitLSM avrbit UDCON,2 ; USB Device Low Speed Mode SelectionEPRST5 avrbit UERST,5 ; Endpoint 5 FIFO ResetEPRST6 avrbit UERST,6 ; Endpoint 6 FIFO ResetEPINT5 avrbit UEINT,5 ; Endpoint Interrupts BitsEPINT6 avrbit UEINT,6 ;UHWCON sfr 0xd7 ; USB Hardware ControlUVREGE avrbit UHWCON,0 ; USB Pad Regulator EnableUVCONE avrbit UHWCON,4 ; UVCON Pin EnableUIDE avrbit UHWCON,6 ; UID Pin EnableUIMOD avrbit UHWCON,7 ; USB ModeUSBSTA sfr 0xd9 ;VBUS avrbit USBSTA,0 ; VBus FlagID avrbit USBSTA,1 ; ID statusSPEED avrbit USBSTA,3 ; Speed Status FlagUSBINT sfr 0xda ;VBUSTI avrbit USBINT,0 ; IVBUS Transition Interrupt FlagIDTI avrbit USBINT,1 ; D Transition Interrupt FlagUEBCHX sfr 0xf3 ; Byte Count Highif __USBHOSTMODE ; only for variants with host/OTG modeUHCON sfr 0x9e ; USB Host ControlSOFEN avrbit UHCON,0 ; Start Of Frame Generation EnableRESET avrbit UHCON,1 ; Send USB ResetRESUME avrbit UHCON,2 ; Send USB ResumeUHINT sfr 0x9f ; USB Host Interrupt StatusDCONNI avrbit UHINT,0 ; Device Connection InterruptDDISCI avrbit UHINT,1 ; Device Disconnection InterruptRSTI avrbit UHINT,2 ; USB Reset Sent InterruptRSMEDI avrbit UHINT,3 ; Downstream Resume Sent InterruptRXRSMI avrbit UHINT,4 ; Upstream Resume Received InterruptHSOFI avrbit UHINT,5 ; Host Start Of Frame InterruptHWUPI avrbit UHINT,6 ; Host Wake-Up InterruptUHIEN sfr 0xa0 ; USB Host Interrupt EnableDCONNE avrbit UHIEN,0 ; Device Connection Interrupt EnableDDISCE avrbit UHIEN,1 ; Device Disconnection Interrupt EnableRSTE avrbit UHIEN,2 ; USB Reset Sent Interrupt EnableRSMEDE avrbit UHIEN,3 ; Downstream Resume Sent Interrupt EnableRXRSME avrbit UHIEN,4 ; Upstream Resume Received Interrupt EnableHSOFE avrbit UHIEN,5 ; Host Start Of frame Interrupt EnableHWUPE avrbit UHIEN,6 ; Host Wake-Up Interrupt EnableUHADDR sfr 0xa1 ; USB Host AddressUHFNUML sfr 0xa2 ; USB Host Frame Number LSBUHFNUMH sfr 0xa3 ; USB Host Frame Number MSBUHFLEN sfr 0xa4 ; USB Host Frame LengthUPINRQX sfr 0xa5 ;INRQ0 avrbit UPINRQX,0 ; IN Request Number Before FreezeINRQ1 avrbit UPINRQX,1INRQ2 avrbit UPINRQX,2INRQ3 avrbit UPINRQX,3INRQ4 avrbit UPINRQX,4INRQ5 avrbit UPINRQX,5INRQ6 avrbit UPINRQX,6INRQ7 avrbit UPINRQX,7UPINTX sfr 0xa6 ; USB Pipe Interrupt StatusRXINI avrbit UPINTX,0 ; IN Data receivedRXSTALLI avrbit UPINTX,1 ; CRCERR - STALL Received / Isochronous CRC ErrorTXOUTI avrbit UPINTX,2 ; OUT Bank readyTXSTPI avrbit UPINTX,3 ; SETUP Bank readyPERRI avrbit UPINTX,4 ; PIPE ErrorPRWAL avrbit UPINTX,5 ; Read/Write Allowed (also as RWAL from UEINTX definition)PNAKEDI avrbit UPINTX,6 ; NAK Handshake received (also as NAKEDI from UEINTX definition)PFIFOCON avrbit UPINTX,7 ; FIFO ControlUPNUM sfr 0xa7 ; USB Pipe NumberPNUM0 avrbit UPNUM,0 ; Pipe NumberPNUM1 avrbit UPNUM,1PNUM2 avrbit UPNUM,2UPRST sfr 0xa8 ; USB Pipe ResetP0RST avrbit UPRST,0 ; Pipe 0 ResetP1RST avrbit UPRST,1 ; Pipe 1 ResetP2RST avrbit UPRST,2 ; Pipe 2 ResetP3RST avrbit UPRST,3 ; Pipe 3 ResetP4RST avrbit UPRST,4 ; Pipe 4 ResetP5RST avrbit UPRST,5 ; Pipe 5 ResetP6RST avrbit UPRST,6 ; Pipe 6 ResetUPCONX sfr 0xa9 ; USB Pipe ConfigPEN avrbit UPCONX,0 ; Pipe EnablePRSTDT avrbit UPCONX,3 ; Reset Data Toggle (also RSTDT from UECONX definition)INMODE avrbit UPCONX,5 ; IN Request modePFREEZE avrbit UPCONX,6 ; Pipe FreezeUPCFG0X sfr 0xaa ; USB Pipe Config 0PEPNUM0 avrbit UPCFG0X,0 ; Pipe Endpoint NumberPEPNUM1 avrbit UPCFG0X,1PEPNUM2 avrbit UPCFG0X,2PEPNUM3 avrbit UPCFG0X,3PTOKEN0 avrbit UPCFG0X,4 ; Pipe TokenPTOKEN1 avrbit UPCFG0X,5PTYPE0 avrbit UPCFG0X,6 ; Pipe TypePTYPE1 avrbit UPCFG0X,7UPCFG1X sfr 0xab ; USB Pipe Config 1PALLOC avrbit UPCFG1X,1 ; Configure Pipe Memory (also ALLOC from UECFG1X definition)PBK0 avrbit UPCFG1X,2 ; Pipe BankPBK1 avrbit UPCFG1X,3PSIZE0 avrbit UPCFG1X,4 ; Pipe SizePSIZE1 avrbit UPCFG1X,5PSIZE2 avrbit UPCFG1X,6UPSTAX sfr 0xac ; USB StatusPNBUSYBK0 avrbit UPSTAX,0 ; Busy Bank Flag (also NBUSYBK0/1 from UESTA0X definition)PNBUSYBK1 avrbit UPSTAX,1PDTSEQ0 avrbit UPSTAX,2 ; Toggle Sequencing Flag (also DTSEQ0/1 from UESTA0X definition)PDTSEQ1 avrbit UPSTAX,3PUNDERFI avrbit UPSTAX,5 ; Underflow (also UNDERFI from UESTA0X definition)POVERFI avrbit UPSTAX,6 ; Overflow (also OVERFI from UESTA0X definition)PCFGOK avrbit UPSTAX,7 ; Configure Pipe Memory OK (also CFGOK from UESTA0X definition)UPCFG2X sfr 0xad ; USB Pipe Config 2INTFRQ0 avrbit UPCFG2X,0 ; Interrupt Pipe Request FrequencyINTFRQ1 avrbit UPCFG2X,1INTFRQ2 avrbit UPCFG2X,2INTFRQ3 avrbit UPCFG2X,3INTFRQ4 avrbit UPCFG2X,4INTFRQ5 avrbit UPCFG2X,5INTFRQ6 avrbit UPCFG2X,6INTFRQ7 avrbit UPCFG2X,7UPIENX sfr 0xae ; USB Pipe Interrupt EnableRXINE avrbit UPIENX,0 ; IN Data received Interrupt EnableRXSTALLE avrbit UPIENX,1 ; STALL Received Interrupt EnableTXOUTE avrbit UPIENX,2 ; OUT Bank ready Interrupt EnableTXSTPE avrbit UPIENX,3 ; SETUP Bank ready Interrupt EnablePERRE avrbit UPIENX,4 ; PIPE Error Interrupt EnableNAKEDE avrbit UPIENX,6 ; NAK Handshake Received Interrupt EnablePFLERRE avrbit UPIENX,7 ; Flow Error Interrupt enable (also FLERRE from UEIENX definition)UPDATX sfr 0xaf ; Pipe Data BitsUPERRX sfr 0xf5 ; USB Pipe Error BitsDATATGL avrbit UPERRX,0 ; Bad Data ToggleDATAPID avrbit UPERRX,1 ; Data PID ErrorPID avrbit UPERRX,2 ; PID ErrorTIMEOUT avrbit UPERRX,3 ; Time-out ErrorCRC16 avrbit UPERRX,4 ; CRC16 ErrorCOUNTER0 avrbit UPERRX,5 ; Error counterCOUNTER1 avrbit UPERRX,6UPBCLX sfr 0xf6 ; USB Pipe Byte Count LSBUPBCHX sfr 0xf7 ; USB Pipe Byte Count MSBUPINT sfr 0xf8 ; USB Pipe InterruptsPINT0 avrbit UPINT,0 ; Pipe Interrupts BitsPINT1 avrbit UPINT,1PINT2 avrbit UPINT,2PINT3 avrbit UPINT,3PINT4 avrbit UPINT,4PINT5 avrbit UPINT,5PINT6 avrbit UPINT,6OTGTCON sfr 0xf9 ; USB On-The-Go ConfigurationVALUE0 avrbit OTGTCON,0 ; Value BitVALUE1 avrbit OTGTCON,1PAGE0 avrbit OTGTCON,5 ; Timer page access BitPAGE1 avrbit OTGTCON,6OTGCON sfr 0xdd ; USB On-The-Go ControlVBUSRQC avrbit OTGCON,0 ; VBUS Request Clear BitVBUSREQ avrbit OTGCON,1 ; VBUS Request BitVBUSHWC avrbit OTGCON,2 ; VBus Hardware Control BitSRPSEL avrbit OTGCON,3 ; SRP Selection BitSRPREQ avrbit OTGCON,4 ; SRP Request BitHNPREQ avrbit OTGCON,5 ; HNP Request BitOTGIEN sfr 0xde ; USB On-The-Go Interrupt EnableSRPE avrbit OTGIEN,0 ; SRP Interrupt Enable BitVBERRE avrbit OTGIEN,1 ; VBus Error Interrupt Enable BitBCERRE avrbit OTGIEN,2 ; B-Connection Error Interrupt Enable BitROLEEXE avrbit OTGIEN,3 ; Role Exchange Interrupt Enable BitHNPERRE avrbit OTGIEN,4 ; HNP Error Interrupt Enable BitSTOE avrbit OTGIEN,5 ; Suspend Time-out Error Interrupt Enable BitOTGINT sfr 0xdf ; USB On-The-Go Interrupt StatusSRPI avrbit OTGINT,0 ; Suspend Time-out Error Interrupt FlagVBERRI avrbit OTGINT,1 ; HNP Error Interrupt FlagBCERRI avrbit OTGINT,2 ; Role Exchange Interrupt FlagROLEEXI avrbit OTGINT,3 ; B-Connection Error Interrupt FlagHNPERRI avrbit OTGINT,4 ; V-Bus Error Interrupt FlagSTOI avrbit OTGINT,5 ; SRP Interrupt Flagendif ; __USBHOSTMODErestore ; re-enable Listingendif ; __regmxu6inc