Blame | Last modification | View Log | Download | RSS feed
ifndef __regmxu2inc__regmxu2inc equ 1savelisting off ; no listing over this file;****************************************************************************;* *;* AS 1.42 - File REGMXU2.INC *;* *;* Contains Bit & Register Definitions for ATmega[8|16|32]U2 *;* *;****************************************************************************;----------------------------------------------------------------------------; 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 RegisterUSBRF avrbit MCUSR,5 ; USB 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 0PRSPI avrbit PRR0,2 ; Power Reduction SPIPRTIM1 avrbit PRR0,3 ; Power Reduction Timer/Counter 1PRTIM0 avrbit PRR0,5 ; Power Reduction Timer/Counter 0PRR1 sfr 0x65 ; Power Reduction Register 1PRUSART1 avrbit PRR1,0 ; Power Reduction USART1PRUSB 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 EnablePINDIV avrbit PLLCSR,2 ; PLL Input Prescaler (1:1, 1:2)DIV3 avrbit PLLCSR,3 ; PLL Input Prescaler (1:3)DIV5 avrbit PLLCSR,4 ; PLL Input Prescaler (1:5)CLKSEL0 sfr 0xd0 ; Clock Selection Register 0CLKS avrbit CLKSEL0,0 ; Clock SelectorEXTE avrbit CLKSEL0,2 ; Enable External Oscillator / Low Power OscillatorRCE avrbit CLKSEL0,3 ; Enable RC OscillatorEXSUT0 avrbit CLKSEL0,4 ; SUT for External Oscillator / Low Power OscillatorEXSUT1 avrbit CLKSEL0,5RCSUT0 avrbit CLKSEL0,6 ; SUT for RC OscillatorRCSUT1 avrbit CLKSEL0,7CLKSEL1 sfr 0xd1 ; Clock Selection Register 1EXCKSEL0 avrbit CLKSEL1,0 ; CKSEL for External Oscillator / Low Power OscillatorEXCKSEL1 avrbit CLKSEL1,1EXCKSEL2 avrbit CLKSEL1,2EXCKSEL3 avrbit CLKSEL1,3RCCKSEL0 avrbit CLKSEL1,4 ; CKSEL for RC OscillatorRCCKSEL1 avrbit CLKSEL1,5RCCKSEL2 avrbit CLKSEL1,6RCCKSEL3 avrbit CLKSEL1,7CLKSTA sfr 0xd2 ; Clock Status RegisterEXTON avrbit CLKSTA,0 ; External Oscillator / Low Power Oscillator OnRCON avrbit CLKSTA,1 ; RC Oscillator On;----------------------------------------------------------------------------; JTAG etc.DWDR port 0x31 ; debugWire Data Register;----------------------------------------------------------------------------; EEPROM/Program Memory Accessinclude "eem2.inc"EEPM0 avrbit EECR,4 ; EEPROM Programming ModeEEPM1 avrbit EECR,5include "spmcsr37.inc"SIGRD avrbit SPMCSR,5 ; Signature Read;----------------------------------------------------------------------------; GPIOPINB port 0x03 ; Port B @ 0x03 (IO) ff.PINC port 0x06 ; Port C @ 0x06 (IO) ff.__PORTC_BITS equ 0xf7 ; (bits 0..2,4..7)PIND port 0x09 ; Port D @ 0x09 (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 0PCMSK1 sfr 0x6c ; Pin Change Mask Register 1PCINT8 avrbit PCMSK1,0 ; Pin Change Enable Mask 8PCINT9 avrbit PCMSK1,1 ; Pin Change Enable Mask 9PCINT10 avrbit PCMSK1,2 ; Pin Change Enable Mask 10PCINT11 avrbit PCMSK1,3 ; Pin Change Enable Mask 11PCINT12 avrbit PCMSK1,4 ; Pin Change Enable Mask 12PCICR 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 PCINT1_vect ; Pin Change Interrupt Request 1nextenum USB_GEN_vect ; USB General Interrupt Requestnextenum USB_COM_vect ; USB Endpoint Interrupt Requestnextenum WDT_vect ; Watchdog Time-out Interruptnextenum 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 EE_READY_vect ; EEPROM Readynextenum 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 AISC40 avrbit EICRB,0 ; External Interrupt 4 Sense ControlISC41 avrbit EICRB,1ISC50 avrbit EICRB,2 ; External Interrupt 5 Sense ControlISC51 avrbit EICRB,3ISC60 avrbit EICRB,4 ; External Interrupt 6 Sense ControlISC61 avrbit EICRB,5ISC70 avrbit EICRB,6 ; External Interrupt 7 Sense ControlISC71 avrbit EICRB,7EIMSK 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 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 RegisterGTCCR port 0x23 ; General Timer/Counter Control RegisterPSRSYNC avrbit GTCCR,0 ; Prescaler Reset for Synchronous Timer/CountersTSM avrbit GTCCR,7 ; Timer/Counter Synchronization Mode;----------------------------------------------------------------------------; Watchdog Timerinclude "wdme.inc"WDTCKD sfr 0x62 ; Watchdog Timer Clock Divider RegisterWCLKD0 avrbit WDTCKD,0 ; Watchdog Timer Clock DividerWCLKD1 avrbit WDTCKD,1WDEWIE avrbit WDTCKD,2 ; Watchdog Early Warning Interrupt EnableWDEWIF avrbit WDTCKD,3 ; Watchdog Early Warning Interrupt FlagWCLKD2 avrbit WDTCKD,4WDEWIFCM avrbit WDTCKD,5 ; Watchdog Early Warning Flag Clear Mode;----------------------------------------------------------------------------; 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,7UCSR1D sfr 0xcb ; Control & Status Register DRTSEN avrbit UCSR1D,0 ; USART RTS EnableCTSEN avrbit UCSR1D,1 ; USART CTS EnableUBRR1H sfr 0xcc ; Baud Rate Register HighUBRR1L sfr 0xcd ; Baud Rate Register Low;----------------------------------------------------------------------------; SPIinclude "spim2c.inc";----------------------------------------------------------------------------; Analog Comparatorinclude "acm30.inc"AIN6D avrbit DIDR1,6 ; Disable Digital Input on AIN6AIN5D avrbit DIDR1,5 ; Disable Digital Input on AIN5AIN4D avrbit DIDR1,4 ; Disable Digital Input on AIN4AIN3D avrbit DIDR1,3 ; Disable Digital Input on AIN3AIN2D avrbit DIDR1,2 ; Disable Digital Input on AIN2ACMUX sfr 0x7d ; Analog Comparator Multiplexer SelectionCMUX0 avrbit ACMUX,0 ; Multiplexer SelectCMUX1 avrbit ACMUX,1CMUX2 avrbit ACMUX,2;----------------------------------------------------------------------------; USBinclude "usbm.inc"UPOE sfr 0xfb ; USB Software Output Enable RegisterDMI avrbit UPOE,0 ; D- Input ValueDPI avrbit UPOE,1 ; D+ Input ValueDATAI avrbit UPOE,2SCKI avrbit UPOE,3UPDRV0 avrbit UPOE,4 ; USB Direct Drive ValuesUPDRV1 avrbit UPOE,5UPWE0 avrbit UPOE,6 ; USB Buffers Direct Drive Enable ConfigurationUPWE1 avrbit UPOE,7REGCR sfr 0x63 ; Regulator ControlREGDIS avrbit REGCR,0 ; Regulator DisableRSTCPU avrbit UDCON,2 ; USB Reset CPU BitKILLBK avrbit UEINTX,2 ; Kills the Last Loaded Bankrestore ; Re-Enable Listingendif ; __regmxu2inc