Blame | Last modification | View Log | Download | RSS feed
ifndef __regtn20inc__regtn20inc equ 1savelisting off ; kein Listing ueber diesen File;****************************************************************************;* *;* AS 1.42 - File REGTN20.INC *;* *;* Contains Bit & Register Definitions for ATtiny20 *;* *;****************************************************************************;----------------------------------------------------------------------------; Memory LimitsRAMSTART equ 0x40,data ; Start Address SRAMRAMEND equ 0xbf,data ; End Address SRAMFLASHEND label 2047 ; End Address Flash;----------------------------------------------------------------------------; Chip ConfigurationRSTFLR port 0x3b ; Reset Flag RegisterWDRF avrbit RSTFLR,3 ; Watchdog Reset FlagBORF avrbit RSTFLR,2 ; Brown-out Reset FlagEXTRF avrbit RSTFLR,1 ; External Reset FlagPORF avrbit RSTFLR,0 ; Power-on Reset FlagOSCCAL port 0x39 ; Oscillator CalibrationCLKPSR port 0x36 ; Clock Prescaler RegisterCLKPS0 avrbit CLKPSR,0 ; Clock Prescaler SelectCLKPS1 avrbit CLKPSR,1CLKPS2 avrbit CLKPSR,2CLKPS3 avrbit CLKPSR,3CLKMSR port 0x37 ; Clock Main Settings RegisterCLKMS0 avrbit CLKMSR,0 ; Clock Main Select BitsCLKMS1 avrbit CLKMSR,1MCUCR port 0x3a ; MCU Control RegisterSE avrbit MCUCR,0 ; Sleep Mode EnableSM0 avrbit MCUCR,1 ; Sleep Mode SelectSM1 avrbit MCUCR,2SM2 avrbit MCUCR,3BODS avrbit MCUCR,4 ; BOD SleepPRR port 0x35 ; Power Reduction RegisterPRADC avrbit PRR,0 ; Power Reduction A/D ConverterPRTIM0 avrbit PRR,1 ; Power Reduction Timer/Counter 0PRTIM1 avrbit PRR,2 ; Power Reduction Timer/Counter 1PRSPI avrbit PRR,3 ; Power Reduction SPIPRTWI avrbit PRR,4 ; Power Reduction TWICCP port 0x3c ; Configuration Change Protection Register;----------------------------------------------------------------------------; EEPROM/Flash AccessNVMCSR port 0x32 ; Non-Volatile Memory Control and Status RegisterNVMBSY avrbit NVMCSR,7 ; Non-Volatile Memory BusyNVMCMD port 0x33 ; Non-Volatile Memory Command RegisterNVMCMD0 avrbit NVMCMD,0 ; Non-Volatile Memory CommandNVMCMD1 avrbit NVMCMD,1NVMCMD2 avrbit NVMCMD,2NVMCMD3 avrbit NVMCMD,3NVMCMD4 avrbit NVMCMD,4NVMCMD5 avrbit NVMCMD,5;----------------------------------------------------------------------------; GPIOPINA port 0x00 ; Port A @ 0x00 (IO) ff.PUEA port 0x03 ; Pull-Up Enable Port APUEA0 avrbit PUEA,0PUEA1 avrbit PUEA,1PUEA2 avrbit PUEA,2PUEA3 avrbit PUEA,3PUEA4 avrbit PUEA,4PUEA5 avrbit PUEA,5PUEA6 avrbit PUEA,6PUEA7 avrbit PUEA,7PINB port 0x04 ; Port B @ 0x03 (IO) ff.__PORTB_BITS equ 0x0f ; (bits 0..3)PUEB port 0x07 ; Pull-Up Enable Port BPUEB0 avrbit PUEB,0PUEB1 avrbit PUEB,1PUEB2 avrbit PUEB,2PUEB3 avrbit PUEB,3PCMSK0 port 0x09 ; Pin-Change Mask Register 0PCINT0 avrbit PCMSK0,0 ; Enable Pin-Change Interrupt 0PCINT1 avrbit PCMSK0,1 ; Enable Pin-Change Interrupt 1PCINT2 avrbit PCMSK0,2 ; Enable Pin-Change Interrupt 2PCINT3 avrbit PCMSK0,3 ; Enable Pin-Change Interrupt 3PCINT4 avrbit PCMSK0,4 ; Enable Pin-Change Interrupt 4PCINT5 avrbit PCMSK0,5 ; Enable Pin-Change Interrupt 5PCINT6 avrbit PCMSK0,6 ; Enable Pin-Change Interrupt 6PCINT7 avrbit PCMSK0,7 ; Enable Pin-Change Interrupt 7PCMSK1 port 0x0a ; Pin-Change Mask Register 1PCINT8 avrbit PCMSK1,0 ; Enable Pin-Change Interrupt 8PCINT9 avrbit PCMSK1,1 ; Enable Pin-Change Interrupt 9PCINT10 avrbit PCMSK1,2 ; Enable Pin-Change Interrupt 10PCINT11 avrbit PCMSK1,3 ; Enable Pin-Change Interrupt 11PORTCR port 0x08 ; Port Control RegisterBBMA avrbit PORTCR,0 ; Break-Before-Make Mode Enable Port ABBMB avrbit PORTCR,1 ; Break-Before-Make Mode Enable Port BQTCSR port 0x34 ; QTouch Control and Status Register;----------------------------------------------------------------------------; Interrupt Vectorsenumconf 1,codeenum INT0_vect=1 ; External Interrupt Request 0nextenum PCINT0_vect ; Pin Change Interrupt 0nextenum PCINT1_vect ; Pin Change Interrupt 1nextenum WDT_vect ; Watchdog Time-out Interruptnextenum TIM1_CAPT_vect ; Timer/Counter 1 Capturenextenum TIM1_COMPA_vect ; Timer/Counter 1 Compare Match Anextenum TIM1_COMPB_vect ; Timer/Counter 1 Compare Match Bnextenum TIM1_OVF_vect ; Timer/Counter 1 Overflownextenum TIM0_COMPA_vect ; Timer/Counter 0 Compare Match Anextenum TIM0_COMPB_vect ; Timer/Counter 0 Compare Match Bnextenum TIM0_OVF_vect ; Timer/Counter 0 Overflownextenum ANA_COMP_vect ; Analog Comparatornextenum ADC_vect ; ADC Conversion Completenextenum TWI_SLAVE_vect ; Two-Wire Interfacenextenum SPI_vect ; Serial Peripheral Interfacenextenum QTRIP_vect ; Touch Sensing;----------------------------------------------------------------------------; External InterruptsISC00 avrbit MCUCR,6 ; Interrupt Sense Control 0ISC01 avrbit MCUCR,7GIMSK port 0x0c ; General Interrupt Mask RegisterINT0 avrbit GIMSK,0 ; Enable External Interrupt 0PCIE0 avrbit GIMSK,4 ; Enable Pin-Change Interrupt 0PCIE1 avrbit GIMSK,5 ; Enable Pin-Change Interrupt 1GIFR port 0x0b ; General Interrupt Flag RegisterINTF0 avrbit GIFR,0 ; External Interrupt 0 OccuredPCIF0 avrbit GIFR,4 ; Pin-Change Interrupt 0 OccuredPCIF1 avrbit GIFR,5 ; Pin-Change Interrupt 1 Occured;----------------------------------------------------------------------------; TimersTCCR0A port 0x19 ; Timer/Counter 0 Control Register AWGM00 avrbit TCCR0A,0 ; Timer/Counter 0 Waveform Generation ModeWGM01 avrbit TCCR0A,1COM0B0 avrbit TCCR0A,4 ; Timer/Counter 0 Output Compare Mode BCOM0B1 avrbit TCCR0A,5COM0A0 avrbit TCCR0A,6 ; Timer/Counter 0 Output Compare Mode ACOM0A1 avrbit TCCR0A,7TCCR0B port 0x18 ; Timer/Counter 0 Control Register BCS00 avrbit TCCR0B,0 ; Timer/Counter 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 0x17 ; Timer/Counter 0 ValueOCR0A port 0x16 ; Timer/Counter 0 Output Compare Value AOCR0B port 0x15 ; Timer/Counter 0 Output Compare Value BTCCR1A port 0x24 ; Timer/Counter 1 Control Register AWGM10 avrbit TCCR1A,0 ; Timer/Counter 1 Waveform Generation ModeWGM11 avrbit TCCR1A,1COM1B0 avrbit TCCR1A,4 ; Timer/Counter 1 Output Compare Mode BCOM1B1 avrbit TCCR1A,5COM1A0 avrbit TCCR1A,6 ; Timer/Counter 1 Output Compare Mode ACOM1A1 avrbit TCCR1A,7TCCR1B port 0x23 ; Timer/Counter 1 Control Register BCS10 avrbit TCCR1B,0 ; Timer/Counter 1 Clock SelectCS11 avrbit TCCR1B,1CS12 avrbit TCCR1B,2WGM12 avrbit TCCR1B,3WGM13 avrbit TCCR1B,4ICES1 avrbit TCCR1B,6 ; Timer/Counter 1 Input Capture Edge SelectICNC1 avrbit TCCR1B,7 ; Timer/Counter 1 Input Capture Noise CancelerTCCR1C port 0x22 ; Timer/Counter 1 Control Register CFOC1B avrbit TCCR1C,6 ; Timer/Counter 1 Force Output Compare Match BFOC1A avrbit TCCR1C,7 ; Timer/Counter 1 Force Output Compare Match ATCNT1L port 0x20 ; Timer/Counter 1 Value LSBTCNT1H port 0x21 ; Timer/Counter 1 Value MSBOCR1AL port 0x1f ; Timer/Counter 1 Output Compare Value A LSBOCR1AH port 0x1e ; Timer/Counter 1 Output Compare Value A MSBOCR1BL port 0x1c ; Timer/Counter 1 Output Compare Value B LSBOCR1BH port 0x1d ; Timer/Counter 1 Output Compare Value B MSBICR1L port 0x1a ; Timer/Counter 1 Input Capture Register LSBICR1H port 0x1b ; Timer/Counter 1 Input Capture Register MSBTIMSK port 0x26 ; Timer/Counter Interrupt Mask RegisterTOIE0 avrbit TIMSK,0 ; Timer/Counter 0 Overflow Interrupt EnableOCIE0A avrbit TIMSK,1 ; Timer/Counter 0 Output Compare Interrupt Enable AOCIE0B avrbit TIMSK,2 ; Timer/Counter 0 Output Compare Interrupt Enable BTOIE1 avrbit TIMSK,3 ; Timer/Counter 1 Overflow Interrupt EnableOCIE1A avrbit TIMSK,4 ; Timer/Counter 1 Output Compare Interrupt Enable AOCIE1B avrbit TIMSK,5 ; Timer/Counter 1 Output Compare Interrupt Enable BICE1 avrbit TIMSK,7 ; Timer/Counter 1 Input Capture Interrupt EnableTIFR port 0x25 ; Timer/Counter Interrupt Status RegisterGTCCR port 0x27 ; General Timer/Counter Control RegisterPSR avrbit GTCCR,0 ; Prescaler Reset Timer/Counter 0/1TSM avrbit GTCCR,7 ; Timer/Counter Synchronization Mode;----------------------------------------------------------------------------; Watchdog TimerWDTCSR port 0x31 ; Watchdog Control/Status RegisterWDP0 avrbit WDTCSR,0 ; PrescalerWDP1 avrbit WDTCSR,1WDP2 avrbit WDTCSR,2WDE avrbit WDTCSR,3 ; Enable WatchdogWDP3 avrbit WDTCSR,5WDIE avrbit WDTCSR,6 ; Watchdog Interrupt EnableWDIF avrbit WDTCSR,7 ; Watchdog Interrupt Flag;----------------------------------------------------------------------------; Analog ComparatorACSRA port 0x14 ; Analog Comparator Control and Status Register AACIS0 avrbit ACSRA,0 ; Interrupt-ModeACIS1 avrbit ACSRA,1ACIC avrbit ACSRA,2 ; Use Comparator As Capture Signal For Timer 0?ACIE avrbit ACSRA,3 ; Interrupt EnableACI avrbit ACSRA,4 ; Interrupt FlagACO avrbit ACSRA,5 ; Analog Comparator OutputACBG avrbit ACSRA,6 ; Enable BandgapACD avrbit ACSRA,7 ; DisableACSRB port 0x13 ; Analog Comparator Control and Status Register BACIRS0 avrbit ACSRB,0 ; Reserved for QTouchACIRS1 avrbit ACSRB,1ACME avrbit ACSRB,2 ; Analog Comparator Multiplexer EnableACCE avrbit ACSRB,3 ; Reserved for QTouchACLP avrbit ACSRB,5 ; Reserved for QTouchHLEV avrbit ACSRB,6 ; Hysteresis LevelHSEL avrbit ACSRB,7 ; Hysteresis Select;----------------------------------------------------------------------------; A/D ConverterADMUX port 0x10 ; ADC Multiplexer Selection RegisterMUX0 avrbit ADMUX,0 ; Analog Channel SelectionMUX1 avrbit ADMUX,1MUX2 avrbit ADMUX,2MUX3 avrbit ADMUX,3ADC0EN avrbit ADMUX,4 ; Reserved for QTouchREFEN avrbit ADMUX,5 ; Enable ReferenceREFS avrbit ADMUX,6 ; Reference SelectionADCSRA port 0x12 ; ADC Control/Status Register AADEN avrbit ADCSRA,7 ; Enable ADCADSC avrbit ADCSRA,6 ; Start ConversionADATE avrbit ADCSRA,5 ; ADC Auto Trigger EnableADIF avrbit ADCSRA,4 ; Interrupt FlagADIE avrbit ADCSRA,3 ; Interrupt EnableADPS2 avrbit ADCSRA,2 ; Prescaler SelectADPS1 avrbit ADCSRA,1ADPS0 avrbit ADCSRA,0ADCSRB port 0x11 ; ADC Control/Status Register AADTS0 avrbit ADCSRB,0 ; ADC Auto Trigger SourceADTS1 avrbit ADCSRB,1ADTS2 avrbit ADCSRB,2ADLAR avrbit ADCSRB,3 ; ADC Left Adjust ResultVDPD avrbit ADCSRB,6 ; Reserved for QTouchVDEN avrbit ADCSRB,7 ; Reserved for QTouchADCL port 0x0e ; ADC Conversion Result LSBADCH port 0x0f ; ADC Conversion Result MSBDIDR0 port 0x0d ; Digital Input Disable Register 0ADC0D avrbit DIDR0,0 ; ADC0 Digital Input DisableADC1D avrbit DIDR0,1 ; ADC1 Digital Input DisableADC2D avrbit DIDR0,2 ; ADC2 Digital Input DisableADC3D avrbit DIDR0,3 ; ADC3 Digital Input DisableADC4D avrbit DIDR0,4 ; ADC4 Digital Input DisableADC5D avrbit DIDR0,5 ; ADC5 Digital Input DisableADC6D avrbit DIDR0,6 ; ADC6 Digital Input DisableADC7D avrbit DIDR0,7 ; ADC7 Digital Input Disable;----------------------------------------------------------------------------; SPISPCR port 0x30 ; SPI Control RegisterSPR0 avrbit SPCR,0 ; Clock SelectSPR1 avrbit SPCR,1CPHA avrbit SPCR,2 ; Clock PhaseCPOL avrbit SPCR,3 ; Clock PolarityMSTR avrbit SPCR,4 ; Master/Slave SelectionDORD avrbit SPCR,5 ; Bit OrderSPE avrbit SPCR,6 ; Enable SPISPIE avrbit SPCR,7 ; SPI Interrupt EnableSPSR port 0x2f ; SPI Status RegisterSPI2X avrbit SPSR,0 ; Double Speed ModeWCOL avrbit SPSR,6 ; Write CollisionSPIF avrbit SPSR,7 ; SPI Interrupt Occured?SPDR port 0x2e ; SPI Data Register;----------------------------------------------------------------------------; SPITWSCRA port 0x2d ; TWI Slave Control Register ATWSME avrbit TWSCRA,0 ; TWI Smart Mode EnableTWPME avrbit TWSCRA,1 ; TWI Promiscuous Mode EnableTWSIE avrbit TWSCRA,2 ; TWI Stop Interrupt EnableTWEN avrbit TWSCRA,3 ; TWI EnableTWASIE avrbit TWSCRA,4 ; TWI Address/Stop Interrupt EnableTWDIE avrbit TWSCRA,5 ; TWI Data Interrupt EnableTWSHE avrbit TWSCRA,7 ; TWI SDA Hold Time EnableTWSCRB port 0x2c ; TWI Slave Control Register BTWCMD0 avrbit TWSCRB,0 ; TWI CommandTWCMD1 avrbit TWSCRB,1TWAA avrbit TWSCRB,2 ; TWI Acknowledge ActionTWSSRA port 0x2b ; TWI Slave Status Register ATWAS avrbit TWSSRA,0 ; TWI Address or StopTWDIR avrbit TWSSRA,1 ; TWI Read/Write DirectionTWBE avrbit TWSSRA,2 ; TWI Bus ErrorTWC avrbit TWSSRA,3 ; TWI CollisionTWRA avrbit TWSSRA,4 ; TWI Receive AcknowledgeTWCH avrbit TWSSRA,5 ; TWI Clock HoldTWASIF avrbit TWSSRA,6 ; TWI Address/Stop Interrupt FlagTWDIF avrbit TWSSRA,7 ; TWI Data Interrupt FlagTWSA port 0x2a ; TWI Slave Address RegisterTWSAM port 0x29 ; TWI Slave Address Mask RegisterTWAE avrbit TWSAM,0 ; TWI Address EnableTWSD port 0x28 ; TWI Slave Data Registerrestoreendif ; __regtn20inc