Blame | Last modification | View Log | Download | RSS feed | ?url?
ifndef __regt13inc
__regt13inc equ 1
save
listing off ; kein Listing ueber diesen File
;****************************************************************************
;* *
;* AS 1.42 - File REGT13.INC *
;* *
;* Contains Bit & Register Definitions for ATtiny13 *
;* *
;****************************************************************************
;----------------------------------------------------------------------------
; Memory Limits
E2END equ 63 ; End Address EEPROM
RAMSTART equ 0x60,data ; Start Address SRAM
RAMEND equ 0x9f,data ; End Address SRAM
FLASHEND label 1023 ; End Address Flash
;----------------------------------------------------------------------------
; Chip Configuration
MCUCR port 0x35 ; MCU General Control Register
SM0 avrbit MCUCR,3 ; Sleep Mode Select
SM1 avrbit MCUCR,4
SE avrbit MCUCR,5 ; Sleep Enable
MCUSR port 0x34 ; MCU Status Register
WDRF avrbit MCUSR,3 ; Watchdog Reset Flag
BORF avrbit MCUSR,2 ; Brown-Out Reset Flag
EXTRF avrbit MCUSR,1 ; External Reset Flag
PORF avrbit MCUSR,0 ; Power-On Reset Flag
OSCCAL port 0x31 ; Oscillator Calibration
CLKPR port 0x26 ; Clock Prescale Register
CLKPS0 avrbit CLKPR,0 ; Clock Prescaler Select Bits
CLKPS1 avrbit CLKPR,1
CLKPS2 avrbit CLKPR,2
CLKPS3 avrbit CLKPR,3
CLKPCE avrbit CLKPR,7 ; Clock Prescaler Change Enable
;----------------------------------------------------------------------------
; JTAG etc.
DWDR port 0x2e ; debugWire Data Register
;----------------------------------------------------------------------------
; EEPROM/Flash Access
EEARL port 0x1e ; EEPROM Address Register
EEDR port 0x1d ; EEPROM Data Register
EECR port 0x1c ; EEPROM Control Register
EEPM1 avrbit EECR,5 ; EEPROM Programming Mode
EEPM0 avrbit EECR,4
EERIE avrbit EECR,3 ; EEPROM Ready Interrupt Enable
EEMPE avrbit EECR,2 ; EEPROM Master Program Enable
EEPE avrbit EECR,1 ; EEPROM Program Enable
EERE avrbit EECR,0 ; EEPROM Read Enable
SPMCSR port 0x37 ; Store Program Memory Control and Status Register
CTPB avrbit SPMCSR,4 ; Clear Temporary Page Buffer
RFLB avrbit SPMCSR,3 ; Read Fuse and Lock Bits
PGWRT avrbit SPMCSR,2 ; Page Write
PGERS avrbit SPMCSR,1 ; Page Erase
SELFPRGEN avrbit SPMCSR,0 ; Self Programming Enable
;----------------------------------------------------------------------------
; GPIO
PUD avrbit MCUCR,6 ; Pull-Up Disable
PINB port 0x16 ; Port B @ 0x16 (IO) ff.
__PORTB_BITS equ 0x3f ; (6 bits)
PCMSK port 0x15 ; Pin Change Interrupt Mask
PCINT0 avrbit PCMSK,0 ; Enable Pin Change Interrupt 0
PCINT1 avrbit PCMSK,1 ; Enable Pin Change Interrupt 1
PCINT2 avrbit PCMSK,2 ; Enable Pin Change Interrupt 2
PCINT3 avrbit PCMSK,3 ; Enable Pin Change Interrupt 3
PCINT4 avrbit PCMSK,4 ; Enable Pin Change Interrupt 4
PCINT5 avrbit PCMSK,5 ; Enable Pin Change Interrupt 5
DIDR0 port 0x14 ; Digital Input Disable Register 0
AIN0D avrbit DIDR0,0 ; Analog Comparator Digital Input Disable
AIN1D avrbit DIDR0,1
ADC1D avrbit DIDR0,2 ; ADC Digital Input Disable
ADC3D avrbit DIDR0,3
ADC2D avrbit DIDR0,4
ADC0D avrbit DIDR0,5
;----------------------------------------------------------------------------
; Interrupt Vectors
enumconf 1,code
enum INT0_vect=1 ; External Interrupt Request 0
nextenum PCINT0_vect ; Pin Change Interrupt Request 0
nextenum TIM0_OVF_vect ; Timer/Counter 0 Overflow
nextenum EE_RDY_vect ; EEPROM Ready
nextenum ANA_COMP_vect ; Analog Comparator
nextenum TIM0_COMPA_vect ; Timer/Counter 0 Compare Match A
nextenum TIM0_COMPB_vect ; Timer/Counter 0 Compare Match B
nextenum WDT_vect ; watchdog Timer
nextenum ADC_vect ; ADC conversion Complete
;----------------------------------------------------------------------------
; External Interrupts
ISC00 avrbit MCUCR,0 ; External Interrupt 0 Sense Control
ISC01 avrbit MCUCR,1
GIMSK port 0x3b ; General Interrupt Mask Register
INT0 avrbit GIMSK,6 ; Enable External Interrupt 0
PCIE avrbit GIMSK,5 ; pin change Interrupt Enable 0
GIFR port 0x3a ; General Interrupt Flag Register
INTF0 avrbit GIFR,6 ; External Interrupt 0 Occured
PCIF avrbit GIFR,5 ; Pin Change Interrupt 0 Occured
;----------------------------------------------------------------------------
; Timers
TCCR0A port 0x2f ; Timer/Counter 0 Control Register A
WGM00 avrbit TCCR0A,0 ; Timer/Counter 0 Waveform Generation Mode
WGM01 avrbit TCCR0A,1
COM0B0 avrbit TCCR0A,4 ; Timer/Counter 0 Compare Mode B
COM0B1 avrbit TCCR0A,5
COM0A0 avrbit TCCR0A,6 ; Timer/Counter 0 Compare Mode A
COM0A1 avrbit TCCR0A,7
TCCR0B port 0x33 ; Timer/Counter 0 Control Register B
CS00 avrbit TCCR0B,0 ; Timer/Counter 0 Clock Select
CS01 avrbit TCCR0B,1
CS02 avrbit TCCR0B,2
WGM02 avrbit TCCR0B,3
FOC0B avrbit TCCR0B,6 ; Timer/Counter 0 Force Output Compare Match B
FOC0A avrbit TCCR0B,7 ; Timer/Counter 0 Force Output Compare Match A
TCNT0 port 0x32 ; Timer/Counter 0 Value
OCR0A port 0x36 ; Timer/Counter 0 Output Compare Value A
OCR0B port 0x29 ; Timer/Counter 0 Output Compare Value B
TIMSK0 port 0x39 ; Timer Interrupt Mask Register 0
TOIE0 avrbit TIMSK0,1 ; Timer/Counter 0 Overflow Interrupt Enable
OCIE0A avrbit TIMSK0,2 ; Timer/Counter 0 Output Compare Interrupt Enable A
OCIE0B avrbit TIMSK0,3 ; Timer/Counter 0 Output Compare Interrupt Enable B
TIFR0 port 0x38 ; Timer Interrupt Flag Register 0
GTCCR port 0x28 ; Global Timer/Counter Control Register
PSR10 avrbit GTCCR,0 ; Prescaler Reset Timer 0/1
TSM avrbit GTCCR,7 ; Timer Synchronization
;----------------------------------------------------------------------------
; Watchdog Timer
include "wdm21.inc"
WDCE avrbit WDTCR,4 ; Watchdog Change Enable
WDP3 avrbit WDTCR,5 ;
WDTIE avrbit WDTCR,6 ; Watchdog Timer Interrupt Enable
WDTIF avrbit WDTCR,7 ; Watchdog Timer Interrupt Flag
;----------------------------------------------------------------------------
; Analog Comparator
include "acm.inc"
;----------------------------------------------------------------------------
; A/D Converter
ADMUX port 0x07 ; Multiplexer Selection
REFS0 avrbit ADMUX,6 ; Reference Selection Bits
ADLAR avrbit ADMUX,5 ; Left Adjust Right
MUX1 avrbit ADMUX,1
MUX0 avrbit ADMUX,0
ADCSRA port 0x06 ; Control/Status Register A
ADEN avrbit ADCSRA,7 ; Enable ADC
ADSC avrbit ADCSRA,6 ; Start Conversion
ADATE avrbit ADCSRA,5 ; Free Running Select
ADIF avrbit ADCSRA,4 ; Interrupt Flag
ADIE avrbit ADCSRA,3 ; Interrupt Enable
ADPS2 avrbit ADCSRA,2 ; Prescaler Select
ADPS1 avrbit ADCSRA,1
ADPS0 avrbit ADCSRA,0
ADCSRB port 0x03 ; Control/Status Register B
ADTS0 avrbit ADCSRB,0 ; ADC Auto Trigger Source
ADTS1 avrbit ADCSRB,1
ADTS2 avrbit ADCSRB,2
ACME avrbit ADCSRB,6 ; Analog Comparator multiplexer Enable
ADCH port 0x05 ; Data Register
ADCL port 0x04
restore
endif ; __regt13inc