Subversion Repositories pentevo

Rev

Blame | Last modification | View Log | Download | RSS feed | ?url?

                ifndef  __regu355inc
__regu355inc    equ     1
                save
                listing off   ; no listing over this file

;****************************************************************************
;*                                                                          *
;*   AS 1.42 - File REGU355.INC                                             *
;*                                                                          *
;*   Contains Bit & Register Definitions for AT43USB355                     *
;*                                                                          *
;****************************************************************************

;----------------------------------------------------------------------------
; Memory Limits

                ; no EEPROM!
RAMSTART        equ     0x60,data
RAMEND          equ     0x45f,data
FLASHEND        label   0x5fff

;----------------------------------------------------------------------------
; Chip Configuration

MCUCR           port    0x35            ; MCU General Control Register
SM              avrbit  MCUCR,4         ; Choose Idle/Power Down Mode
SE              avrbit  MCUCR,5         ; Enable Sleep Mode

;----------------------------------------------------------------------------
; GPIO

PINA            port    0x19            ; Port A @ 0x19 (IO) ff.
PINB            port    0x16            ; Port B @ 0x16 (IO) ff.
PIND            port    0x10            ; Port D @ 0x10 (IO) ff.
PINF            port    0x04            ; Port F @ 0x04 (IO) ff.

;----------------------------------------------------------------------------
; Interrupt Vectors

                enumconf 1,code
                enum     INT0_vect=1            ; External Interrupt Request 0
                nextenum INT1_vect              ; External Interrupt Request 1
                nextenum TIMER1_CAPT_vect       ; Timer/Counter 1 Capture Event
                nextenum TIMER1_COMPA_vect      ; Timer/Counter 1 Compare Match A
                nextenum TIMER1_COMPB_vect      ; Timer/Counter 1 Compare Match B
                nextenum TIMER1_OVF_vect        ; Timer/Counter 1 Overflow
                nextenum TIMER0_OVF_vect        ; Timer/Counter 0 Overflow
                nextenum SPI_STC_vect           ; SPI Serial Transfer Complete
                nextenum Reserved1_vect
                nextenum Reserved2_vect
                nextenum ADC_vect               ; ADC Conversion Complete
                nextenum ANA_COMP_vect          ; Analog Comparator
                nextenum USB_HW_vect            ; USB Hardware

;----------------------------------------------------------------------------
; External Interrupts

ISC00           avrbit  MCUCR,0         ; External Interrupt 0 Sense Control
ISC01           avrbit  MCUCR,1
ISC10           avrbit  MCUCR,2         ; External Interrupt 1 Sense Control
ISC11           avrbit  MCUCR,3

GIMSK           port    0x3b            ; General Interrupt Mask Register
INT0            avrbit  GIMSK,6         ; Enable External Interrupt 0
INT1            avrbit  GIMSK,7         ; Enable External Interrupt 1

GIFR            port    0x3a            ; External Interrupt-Flags
INTF0           avrbit  GIFR,6          ; External Interrupt 0 Occured
INTF1           avrbit  GIFR,7          ; External Interrupt 1 Occured

;----------------------------------------------------------------------------
; Timers

TCCR0           port    0x33            ; Timer/Counter 0 Control Register
CS00            avrbit  TCCR0,0         ; Clock Select
CS01            avrbit  TCCR0,1
CS02            avrbit  TCCR0,2
TCNT0           port    0x32            ; Timer/Counter 0 Value

TCCR1A          port    0x2f            ; Timer/Counter 1 Control Register A
PWM10           avrbit  TCCR1A,0        ; Mode of Pulse Width Modulator
PWM11           avrbit  TCCR1A,1
COM1B0          avrbit  TCCR1A,4        ; Timer/Counter 1 Compare Mode B
COM1B1          avrbit  TCCR1A,5
COM1A0          avrbit  TCCR1A,6        ; Timer/Counter 1 Compare Mode A
COM1A1          avrbit  TCCR1A,7
TCCR1B          port    0x2e            ; Timer/Counter 1 Control Register B
CS10            avrbit  TCCR1B,0        ; Timer/Counter Clock Select
CS11            avrbit  TCCR1B,1
CS12            avrbit  TCCR1B,2
CTC1            avrbit  TCCR1B,3        ; Clear after Equality?
ICES1           avrbit  TCCR1B,6        ; Capture Slope Selection
ICNC1           avrbit  TCCR1B,7        ; Capture Noise Filter
TCNT1L          port    0x2c            ; Timer/Counter 1 Value LSB
TCNT1H          port    0x2d            ; Timer/Counter 1 Value MSB
OCR1AL          port    0x2a            ; Timer/Counter 1 Output Compare Value A LSB
OCR1AH          port    0x2b            ; Timer/Counter 1 Output Compare Value A MSB
OCR1BL          port    0x28            ; Timer/Counter 1 Output Compare Value B LSB
OCR1BH          port    0x29            ; Timer/Counter 1 Output Compare Value B MSB
ICR1L           port    0x24            ; Timer/Counter 1 Input Capture Value LSB
ICR1H           port    0x25            ; Timer/Counter 1 Input Capture Value MSB

TIMSK           port    0x39            ; Timer Interrupt Mask Register
TOIE0           avrbit  TIMSK,1         ; Timer/Counter 0 Overflow Interrupt Enable
TICIE1          avrbit  TIMSK,3         ; Timer/Counter 1 Input Capture Interrupt Enable
OCIE1B          avrbit  TIMSK,5         ; Timer/Counter 1 Output Compare Interrupt Enable B
OCIE1A          avrbit  TIMSK,6         ; Timer/Counter 1 Output Compare Interrupt Enable A
TOIE1           avrbit  TIMSK,7         ; Timer/Counter 1 Overflow Interrupt Enable

TIFR            port    0x38            ; Timer Interrupt Flag Register

;----------------------------------------------------------------------------
; Watchdog Timer

                include "wdm21.inc"
WDTOE           avrbit  WDTCR,4         ; Turn-Off Enable

;----------------------------------------------------------------------------
; SPI

                include "spi90.inc"

;----------------------------------------------------------------------------
; A/D Converter

ADMUX           port    0x08            ; Multiplexer Selection
MUX3            avrbit  ADMUX,3         ; Multiplexer
MUX2            avrbit  ADMUX,2
MUX1            avrbit  ADMUX,1
MUX0            avrbit  ADMUX,0

ADCSR           port    0x07            ; Control/Status Register
ADEN            avrbit  ADCSR,7         ; Enable ADC
ADSC            avrbit  ADCSR,6         ; Start Conversion
ADFR            avrbit  ADCSR,5         ; Free Running Select
ADIF            avrbit  ADCSR,4         ; Interrupt Flag
ADIE            avrbit  ADCSR,3         ; Interrupt Enable
ADPS2           avrbit  ADCSR,2         ; Prescaler Select
ADPS1           avrbit  ADCSR,1
ADPS0           avrbit  ADCSR,0

ADCH            port    0x03            ; Data Register
ADCL            port    0x02

;----------------------------------------------------------------------------
; USB

FCAR3           sfr     0x1fa2          ; Function End-point 3 Control and Acknowledge Register
FCAR2           sfr     0x1fa3          ; Function End-point 2 Control and Acknowledge Register
FCAR1           sfr     0x1fa4          ; Function End-point 1 Control and Acknowledge Register
FCAR0           sfr     0x1fa5          ; Function End-point 0 Control and Acknowledge Register
HCAR0           sfr     0x1fa7          ; Hub End-point 0 Control and Acknowledge Register
PSTATE2         sfr     0x1fa9          ; Hub Port 2 Bus State Register
PSTATE3         sfr     0x1faa          ; Hub Port 3 Bus State Register
HPSCR1          sfr     0x1fb0          ; Hub Port 1 Status Change Register
HPSCR2          sfr     0x1fb1          ; Hub Port 2 Status Change Register
HPSCR3          sfr     0x1fb2          ; Hub Port 3 Status Change Register
HPSTAT1         sfr     0x1fb8          ; Hub Port 1 Status Register
HPSTAT2         sfr     0x1fb9          ; Hub Port 2 Status Register
HPSTAT3         sfr     0x1fba          ; Hub Port 3 Status Register
HPCON           sfr     0x1fc5          ; Hub Port Control Register
HSTR            sfr     0x1fc7          ; Hub Status Register
FBYTE_CNT3      sfr     0x1fca          ; Function End-point 3 Byte Count Register
FBYTE_CNT2      sfr     0x1fcb          ; Function End-point 2 Byte Count Register
FBYTE_CNT1      sfr     0x1fcc          ; Function End-point 1 Byte Count Register
FBYTE_CNT0      sfr     0x1fcd          ; Function End-point 0 Byte Count Register
HBYTE_CNT0      sfr     0x1fcf          ; Hub End-point 0 Byte Count Register
FDR3            sfr     0x1fd2          ; Function End-point 3 FIFO Data Register
FDR2            sfr     0x1fd3          ; Function End-point 2 FIFO Data Register
FDR1            sfr     0x1fd4          ; Function End-point 1 FIFO Data Register
FDR0            sfr     0x1fd5          ; Function End-point 0 FIFO Data Register
HDR0            sfr     0x1fd7          ; Hub End-point 0 FIFO Data Register
FCSR3           sfr     0x1fda          ; Function Controller End-point 3 Service Routine Register
FCSR2           sfr     0x1fdb          ; Function Controller End-point 2 Service Routine Register
FCSR1           sfr     0x1fdc          ; Function Controller End-point 1 Service Routine Register
FCSR0           sfr     0x1fdd          ; Function Controller End-point 0 Service Routine Register
HCSR0           sfr     0x1fdf          ; Hub Controller End-point 0 Service Routine Register
FEND_P3_CNTR    sfr     0x1fe2          ; Function End-point 3 Control Register
FEND_P2_CNTR    sfr     0x1fe3          ; Function End-point 2 Control Register
FEND_P1_CNTR    sfr     0x1fe4          ; Function End-point 1 Control Register
FEND_P0_CNTR    sfr     0x1fe5          ; Function End-point 0 Control Register
HEND_P0_CNTR    sfr     0x1fe7          ; Hub End-point 0 Control Register
FADDR           sfr     0x1fee          ; Function Address Register
HADDR           sfr     0x1fef          ; Hub Address Register
UOVCER          sfr     0x1ff2          ; Overcurrent Detect Register
UIER            sfr     0x1ff3          ; USB Interrupt Enable Register
SOF_IE          avrbit  UIER,7          ; Enable Start of Frame Interrupt
EOF2_IE         avrbit  UIER,6          ; Enable EOF2 Interrupt
FEP3_IE         avrbit  UIER,4          ; Enable Function End-point 3 Interrupt
HEP0_IE         avrbit  UIER,3          ; Enable Hub End-point 0 Interrupt
FEP2_IE         avrbit  UIER,2          ; Enable Function End-point 2 Interrupt
FEP1_IE         avrbit  UIER,1          ; Enable Function End-point 1 Interrupt
FEP0_IE         avrbit  UIER,0          ; Enable Function End-point 0 Interrupt
UIAR            sfr     0x1ff5          ; USB Interrupt Acknowledge Register
SOF_INTACK      avrbit  UIAR,7          ; Start of Frame Interrupt Acknowledge
EOF2_INTACK     avrbit  UIAR,5          ; EOF2 Interrupt Acknowledge
FEP3_INTACK     avrbit  UIAR,4          ; Function End-point 3 Interrupt Acknowledge
HEP0_INTACK     avrbit  UIAR,3          ; Hub End-point 0 Interrupt Acknowledge
FEP2_INTACK     avrbit  UIAR,2          ; Function End-point 2 Interrupt Acknowledge
FEP1_INTACK     avrbit  UIAR,1          ; Function End-point 1 Interrupt Acknowledge
FEP0_INTACK     avrbit  UIAR,0          ; Function End-point 0 Interrupt Acknowledge
UIMSKR          sfr     0x1ff6          ; USB Interrupt Mask Register
SOF_IMSK        avrbit  UIMSKR,7        ; Start of Frame Interrupt Mask
EOF2_IMSK       avrbit  UIMSKR,5        ; EOF2 Interrupt Mask
FEP3_IMSK       avrbit  UIMSKR,4        ; Function End-point 3 Interrupt Mask
HEP0_IMSK       avrbit  UIMSKR,3        ; Hub End-point 0 Interrupt Mask
FEP2_IMSK       avrbit  UIMSKR,2        ; Function End-point 2 Interrupt Mask
FEP1_IMSK       avrbit  UIMSKR,1        ; Function End-point 1 Interrupt Mask
FEP0_IMSK       avrbit  UIMSKR,0        ; Function End-point 0 Interrupt Mask
UISR            sfr     0x1ff7          ; USB Interrupt Status Register
SOF_INT         avrbit  UISR,7          ; Start of Frame Interrupt
EOF2_INT        avrbit  UISR,5          ; EOF2 Interrupt
FE3_INT         avrbit  UISR,4          ; Function End-point 3 Interrupt
HEP0_INT        avrbit  UISR,3          ; Hub End-point 0 Interrupt
FE2_INT         avrbit  UISR,2          ; Function End-point 2 Interrupt
FE1_INT         avrbit  UISR,1          ; Function End-point 1 Interrupt
FE0_INT         avrbit  UISR,0          ; Function End-point 0 Interrupt
SPRSMSK         sfr     0x1ff8          ; Suspend/Resume Interrupt Mask Register
BUS_INT_MSK     avrbit  SPRSMSK,3       ; USB Reset Interrupt Mask
FRWUP_INT_MSK   avrbit  SPRSMSK,2       ; Function Remote Wakeup Interrupt Mask
RSM_INT_MSK     avrbit  SPRSMSK,1       ; Resume Interrupt Mask
GLB_SUSP_INT_MSK avrbit SPRSMSK,0       ; Global Suspend Interrupt Enable
SPRSIE          sfr     0x1ff9          ; Suspend/Resume Interrupt Enable Register
BUS_IE          avrbit  SPRSIE,3        ; USB Reset Interrupt Enable
FRWUP_IE        avrbit  SPRSIE,2        ; Function Remote Wakeup Interrupt Enable
RSM_IE          avrbit  SPRSIE,1        ; Resume Interrupt Enable
GLB_SUSP_IE     avrbit  SPRSIE,0        ; Global Suspend Interrupt Enable
SPRSR           sfr     0x1ffa          ; Suspend/Resume Register
BUS_INT         avrbit  SPRSR,3         ; USB Bus Interrupt
FRWUP_INT       avrbit  SPRSR,2         ; Function Remote Wakeup
RSM_INT         avrbit  SPRSR,1         ; Resume
GLB_SUSP_INT    avrbit  SPRSR,0         ; Global Suspend
GLB_STATE       sfr     0x1ffb          ; Global State Register
FRM_NUM_L       sfr     0x1ffc          ; Frame Number Low Register
FRM_NUM_H       sfr     0x1ffd          ; Frame Number High Register

                restore                 ; re-enable listing

                endif                   ; __regu355inc