Blame | Last modification | View Log | Download | RSS feed
ifndef __regm103inc__regm103inc equ 1savelisting off ; no listing over this file;****************************************************************************;* *;* AS 1.42 - File REGM103.INC *;* *;* Contains Bit & Register Definitions for ATmega103 *;* *;****************************************************************************;----------------------------------------------------------------------------; Memory LimitsE2END equ 4095RAMSTART equ 0x60,dataRAMEND equ 0x105f,dataFLASHEND label 0x1ffff;----------------------------------------------------------------------------; Chip ConfigurationMCUCR port 0x35 ; MCU General Control RegisterSM0 avrbit MCUCR,3SM1 avrbit MCUCR,4SE avrbit MCUCR,5 ; Sleep EnableSRW avrbit MCUCR,6 ; Wait State SelectSRE avrbit MCUCR,7 ; Enable External SRAMMCUSR port 0x34 ; MCU Status RegisterEXTRF avrbit MCUSR,1 ; External Reset OccuredPORF avrbit MCUSR,0 ; Power-On Reset OccuredXDIV port 0x3c ; XTAL Divide Control RegisterXDIVEN avrbit XDIV,7 ; XTAL Divide EnableXDIV6 avrbit XDIV,6 ; XTAL Divide SelectXDIV5 avrbit XDIV,5XDIV4 avrbit XDIV,4XDIV3 avrbit XDIV,3XDIV2 avrbit XDIV,2XDIV1 avrbit XDIV,1XDIV0 avrbit XDIV,0;----------------------------------------------------------------------------; EEPROMinclude "eem.inc";----------------------------------------------------------------------------; GPIOPINA port 0x19 ; Port A @ 0x19 (IO) ff.PINB port 0x16 ; Port B @ 0x16 (IO) ff.PINC port 0x13 ; Port C @ 0x13 (IO) ff.PIND port 0x10 ; Port D @ 0x10 (IO) ff.PINE port 0x01 ; Port E @ 0x01 (IO) ff.PINF port 0x00 ; Port F @ 0x01 (IO) ff.,PINF_inponly equ 1 ; Input Only;----------------------------------------------------------------------------; 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 TIMER2_COMP_vect ; Timer/Counter 2 Compare Matchnextenum TIMER2_OVF_vect ; Timer/Counter 2 Overflownextenum TIMER1_CAPT_vect ; Timer/Counter 1 Capture Eventnextenum TIMER1_COMPA_vect ; Timer/Counter 1 Compare Match Anextenum TIMER1_COMPB_vect ; Timer/Counter 1 Compare Match Bnextenum TIMER1_OVF_vect ; Timer/Counter 1 Overflownextenum TIMER0_COMP_vect ; Timer/Counter 0 Compare Matchnextenum TIMER0_OVF_vect ; Timer/Counter 0 Overflownextenum SPI_STC_vect ; SPI Serial Transfer Completenextenum UART_RX_vect ; UART Rx Completenextenum UART_UDRE_vect ; UART Data Register Emptynextenum UART_TX_vect ; UART Tx Completenextenum ADC_vect ; ADC Conversion Completenextenum EE_READY_vect ; EEPROM Readynextenum ANALOG_COMP_vect ; Analog Comparator;----------------------------------------------------------------------------; External InterruptsEICR port 0x3a ; External Interrupt Control RegisterISC40 avrbit EICR,0 ; External Interrupt 4 Sense ControlISC41 avrbit EICR,1ISC50 avrbit EICR,2 ; External Interrupt 5 Sense ControlISC51 avrbit EICR,3ISC60 avrbit EICR,4 ; External Interrupt 6 Sense ControlISC61 avrbit EICR,5ISC70 avrbit EICR,6 ; External Interrupt 7 Sense ControlISC71 avrbit EICR,7EIMSK port 0x39 ; External Interrupt Mask RegisterINT0 avrbit EIMSK,0 ; Enable External Interrupt 0INT1 avrbit EIMSK,1 ; Enable External Interrupt 1INT2 avrbit EIMSK,2 ; Enable External Interrupt 2INT3 avrbit EIMSK,3 ; Enable External Interrupt 3INT4 avrbit EIMSK,4 ; Enable External Interrupt 4INT5 avrbit EIMSK,5 ; Enable External Interrupt 5INT6 avrbit EIMSK,6 ; Enable External Interrupt 6INT7 avrbit EIMSK,7 ; Enable External Interrupt 7EIFR port 0x38 ; External Interrupt Flags RegisterINTF4 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;----------------------------------------------------------------------------; TimersTCCR0 port 0x33 ; Timer/Counter 0 Control RegisterCS00 avrbit TCCR0,0 ; Timer/Counter 0 Clock SelectCS01 avrbit TCCR0,1CS02 avrbit TCCR0,2CTC0 avrbit TCCR0,3 ; Timer/Counter 0 Clear on Compare MatchCOM00 avrbit TCCR0,4 ; Timer/Counter 0 Compare ModeCOM01 avrbit TCCR0,5PWM0 avrbit TCCR0,6 ; Timer/Counter 0 PWM ModeTCNT0 port 0x32 ; Timer/Counter 0 ValueOCR0 port 0x31TCCR1A port 0x2f ; Timer/Counter 1 Control Register APWM10 avrbit TCCR1A,0 ; Timer/Counter 1 PWM ModePWM11 avrbit TCCR1A,1COM1B0 avrbit TCCR1A,4 ; Timer/Counter 1 Compare Mode BCOM1B1 avrbit TCCR1A,5COM1A0 avrbit TCCR1A,6 ; Timer/Counter 1 Compare Mode ACOM1A1 avrbit TCCR1A,7TCCR1B port 0x2e ; Timer/Counter 1 Control Register BCS10 avrbit TCCR1B,0 ; Timer/Counter 1 Prescaler SettingCS11 avrbit TCCR1B,1CS12 avrbit TCCR1B,2CTC1 avrbit TCCR1B,3 ; Timer/Counter 1 Clear on Compare MatchICES1 avrbit TCCR1B,6 ; Timer/Counter 1 Capture Slope SelectionICNC1 avrbit TCCR1B,7 ; Timer/Counter 1 Capture Noise FilterTCNT1L port 0x2c ; Timer/Counter 1 Value LSBTCNT1H port 0x2d ; Timer/Counter 1 Value MSBOCR1AL port 0x2a ; Timer/Counter 1 Output Compare Value A LSBOCR1AH port 0x2b ; Timer/Counter 1 Output Compare Value A MSBOCR1BL port 0x28 ; Timer/Counter 1 Output Compare Value B LSBOCR1BH port 0x29 ; Timer/Counter 1 Output Compare Value B MSBICR1L port 0x26 ; Timer/Counter 1 Input Capture Value LSBICR1H port 0x27 ; Timer/Counter 1 Input Capture Value MSBTCCR2 port 0x25 ; Timer/Counter 2 Control RegisterCS20 avrbit TCCR2,0 ; Timer/Counter 2 Prescaler SettingCS21 avrbit TCCR2,1CS22 avrbit TCCR2,2CTC2 avrbit TCCR2,3 ; Timer/Counter 2 Clear on Compare MatchCOM20 avrbit TCCR2,4 ; Timer/Counter 2 Compare ModeCOM21 avrbit TCCR2,5PWM2 avrbit TCCR2,6 ; Timer/Counter 2 PWM ModeTCNT2 port 0x24 ; Timer/Counter 2 ValueOCR2 port 0x23 ; Timer/Counter 2 Output Compare ValueTIMSK port 0x37 ; Timer Interrupt Mask RegisterTOIE0 avrbit TIMSK,0 ; Timer/Counter 0 Overflow Interrupt EnableOCIE0 avrbit TIMSK,1 ; Timer/Counter 0 Output Compare Interrupt EnableTOIE1 avrbit TIMSK,2 ; Timer/Counter 1 Overflow Interrupt EnableOCIE1B avrbit TIMSK,3 ; Timer/Counter 1 Output Compare Interrupt Enable BOCIE1A avrbit TIMSK,4 ; Timer/Counter 1 Output Compare Interrupt Enable ATICIE1 avrbit TIMSK,5 ; Timer/Counter 1 Input Capture Interrupt EnableTOIE2 avrbit TIMSK,6 ; Timer/Counter 2 Overflow Interrupt EnableOCIE2 avrbit TIMSK,7 ; Timer/Counter 2 Output Compare Interrupt EnableTIFR port 0x36 ; Timer Interrupt Flag RegisterASSR port 0x30 ; Asynchronous Status RegisterTCR0UB avrbit ASSR,0 ; Timer/Counter Control Register 0 Update BusyOCR0UB avrbit ASSR,1 ; Output Compare Register 0TCN0UB avrbit ASSR,2 ; Timer/Counter 0 Update BusyAS0 avrbit ASSR,3 ; Asynchronous Timer/Counter 0;----------------------------------------------------------------------------; Watchdog Timerinclude "wdm21.inc"WDTOE avrbit WDTCR,4 ; Turn-Off Enable;----------------------------------------------------------------------------; UARTinclude "uart90.inc";----------------------------------------------------------------------------; SPIinclude "spi90.inc";----------------------------------------------------------------------------; A/D ConverterADMUX port 0x07 ; Multiplexer SelectionMUX2 avrbit ADMUX,2MUX1 avrbit ADMUX,1MUX0 avrbit ADMUX,0ADCSR port 0x06 ; Control/Status RegisterADEN avrbit ADCSR,7 ; Enable ADCADSC avrbit ADCSR,6 ; Start ConversionADIF avrbit ADCSR,4 ; Interrupt FlagADIE avrbit ADCSR,3 ; Interrupt EnableADPS2 avrbit ADCSR,2 ; Prescaler SelectADPS1 avrbit ADCSR,1ADPS0 avrbit ADCSR,0ADCH port 0x05 ; Data RegisterADCL port 0x04;----------------------------------------------------------------------------; Analog Comparatorinclude "ac90.inc"restore ; re-enable listingendif ; __regm103inc