Blame | Last modification | View Log | Download | RSS feed
ifndef __regm3250inc__regm3250inc equ 1savelisting off ; no listing over this file;****************************************************************************;* *;* AS 1.42 - File REGM3250.INC *;* *;* Contains Bit & Register Definitions for ATmega3250 *;* *;****************************************************************************;----------------------------------------------------------------------------; Memory LimitsE2END equ 1023RAMSTART equ 0x100,dataRAMEND equ 0x8ff,dataFLASHEND label 0x7fff;----------------------------------------------------------------------------; Chip ControlMCUCR port 0x35 ; MCU Control RegisterIVCE avrbit MCUCR,0 ; Interrupt Vector Change EnableIVSEL avrbit MCUCR,1 ; Interrupt Vector SelectMCUSR port 0x34 ; MCU Status RegisterPORF avrbit MCUSR,0 ; Power-On Reset OccuredEXTRF avrbit MCUSR,1 ; External Reset OccuredBORF avrbit MCUSR,2 ; Brown Out Reset OccuredWDRF avrbit MCUSR,3 ; Watchdog Reset OccuredSMCR port 0x33 ; Sleep Mode Control RegisterSE avrbit SMCR,0 ; Sleep Mode EnableSM0 avrbit SMCR,1 ; Sleep Mode SelectSM1 avrbit SMCR,2SM2 avrbit SMCR,3PRR sfr 0x64 ; Power Reduction RegisterPRADC avrbit PRR,0 ; Power Reduction ADCPRUSART0 avrbit PRR,1 ; Power Reduction USART0PRSPI avrbit PRR,2 ; Power Reduction Serial Peripheral InterfacePRTIM1 avrbit PRR,3 ; Power Reduction Timer/Counter1OSCCAL sfr 0x66 ; Oscillator CalibrationCLKPR sfr 0x61 ; Clock Prescale RegisterCLKPS0 avrbit CLKPR,0 ; Clock Prescaler SelectCLKPS1 avrbit CLKPR,1CLKPS2 avrbit CLKPR,2CLKPS3 avrbit CLKPR,3CLKPCE avrbit CLKPR,7 ; Clock Prescaler Change Enable;----------------------------------------------------------------------------; EEPROM/Program Memory Accessinclude "eem2.inc"include "spmcsr37.inc";----------------------------------------------------------------------------; JTAGJTD avrbit MCUCR,7 ; JTAG DisableJTRF avrbit MCUSR,4 ; JTAG Reset OccuredOCDR port 0x31 ; On-Chip Debug Register;----------------------------------------------------------------------------; GPIOPUD avrbit MCUCR,4 ; Pull Up DisablePINA port 0x00 ; Port A @ 0x00 (IO) ff.PINB port 0x03 ; Port B @ 0x03 (IO) ff.PINC port 0x06 ; Port C @ 0x06 (IO) ff.PIND port 0x09 ; Port D @ 0x09 (IO) ff.PINE port 0x0c ; Port E @ 0x0c (IO) ff.PINF port 0x0f ; Port F @ 0x0f (IO) ff.PING port 0x12 ; Port G @ 0x12 (IO) ff.PINH sfr 0xd8 ; Port H @ 0xd8 (DATA) ff.PINJ sfr 0xdb ; Port J @ 0xdb (DATA) ff.PCMSK0 sfr 0x6b ; Pin Change Mask Register 0PCMSK1 sfr 0x6c ; Pin Change Mask Register 1PCMSK2 sfr 0x6d ; Pin Change Mask Register 2PCMSK3 sfr 0x73 ; Pin Change Mask Register 3GPIOR0 port 0x1e ; General Purpose I/O RegistersGPIOR1 port 0x2aGPIOR2 port 0x2b;----------------------------------------------------------------------------; Interrupt Vectorsenumconf 2,codeenum INT0_vect=2 ; External Interrupt Request 0nextenum PCINT0_vect ; Pin Change Interrupt Request 0nextenum PCINT1_vect ; Pin Change Interrupt Request 1nextenum TIMER2_COMP_vect ; Timer/Counter 2 Compare Matchnextenum TIMER2_OVF_vect ; Timer/Counter 2 Overflownextenum 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_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 USART_RX_vect ; USART Rx Completenextenum USART_UDRE_vect ; USART Data Register Emptynextenum USART_TX_vect ; USART Tx Completenextenum USI_START_vect ; USI Start Conditionnextenum USI_OVERFLOW_vect ; USI Overflownextenum ANALOG_COMP_vect ; Analog Comparatornextenum ADC_vect ; ADC Conversion Completenextenum EE_READY_vect ; EEPROM Readynextenum SPM_READY_vect ; Store Program Memory Readynextenum NOT_USED_vect ; Reservednextenum PCINT2_vect ; Pin Change Interrupt Request 2nextenum PCINT3_vect ; Pin change Interrupt Request 3;----------------------------------------------------------------------------; External InterruptsEICRA sfr 0x69 ; External Interrupt Control Register AISC00 avrbit EICRA,0 ; External Interrupt 0 Sense ControlISC01 avrbit EICRA,1EIMSK port 0x1d ; External Interrupt Mask RegisterINT0 avrbit EIMSK,0 ; Enable External Interrupt 0PCIE0 avrbit EIMSK,4 ; Pin Change Interrupt Enable 0PCIE1 avrbit EIMSK,5 ; Pin Change Interrupt Enable 1PCIE2 avrbit EIMSK,6 ; Pin Change Interrupt Enable 2PCIE3 avrbit EIMSK,7 ; Pin Change Interrupt Enable 3EIFR port 0x1c ; External Interrupt Flag RegisterINTF0 avrbit EIFR,0 ; External Interrupt 0 OccuredPCIF0 avrbit EIFR,4 ; Pin Change Interrupt 0 OccuredPCIF1 avrbit EIFR,5 ; Pin Change Interrupt 1 OccuredPCIF2 avrbit EIFR,6 ; Pin Change Interrupt 2 OccuredPCIF3 avrbit EIFR,7 ; Pin Change Interrupt 3 Occured;----------------------------------------------------------------------------; TimersGTCCR port 0x23 ; General Timer/Counter Control RegisterPSR10 avrbit GTCCR,0 ; Prescaler Reset Timer 0/1PSR2 avrbit GTCCR,1 ; Prescaler Reset Timer 2TSM avrbit GTCCR,7 ; Timer/Counter Synchronization ModeTCCR0A port 0x24 ; Timer/Counter 0 Control Register ACS00 avrbit TCCR0A,0 ; Timer/Counter 0 Clock SelectCS01 avrbit TCCR0A,1CS02 avrbit TCCR0A,2WGM01 avrbit TCCR0A,3COM0A0 avrbit TCCR0A,4 ; Timer/Counter 0 Compare Mode ACOM0A1 avrbit TCCR0A,5WGM00 avrbit TCCR0A,6 ; Timer/Counter 0 Waveform Generation ModeFOC0A avrbit TCCR0A,7 ; Timer/Counter 0 Force Output Compare Match ATCNT0 port 0x26 ; Timer/Counter 0 ValueOCR0A port 0x27 ; Timer/Counter 0 Output Compare Value ATCCR1A sfr 0x80 ; Timer/Counter 1 Control Register AWGM10 avrbit TCCR1A,0 ; Timer/Counter 1 Waveform Generation ModeWGM11 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 sfr 0x81 ; Timer/Counter 1 Control Register BCS10 avrbit TCCR1B,0 ; Timer/Counter 1 Prescaler SettingCS11 avrbit TCCR1B,1CS12 avrbit TCCR1B,2WGM12 avrbit TCCR1B,3WGM13 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 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 MSBICR1L sfr 0x86 ; Timer/Counter 1 Input Capture Value LSBICR1H sfr 0x87 ; Timer/Counter 1 Input Capture Value MSBTCCR2A sfr 0xb0 ; Timer/Counter 2 Control Register ACS20 avrbit TCCR2A,0 ; Timer/Counter 2 Prescaler SettingCS21 avrbit TCCR2A,1CS22 avrbit TCCR2A,2WGM21 avrbit TCCR2A,3COM2A0 avrbit TCCR2A,4 ; Timer/Counter 2 Compare Mode ACOM2A1 avrbit TCCR2A,5WGM20 avrbit TCCR2A,6 ; Timer/Counter 2 Waveform Generation ModeFOC2A avrbit TCCR2A,7 ; Timer/Counter 2 Force Output Compare ATCNT2 sfr 0xb2 ; Timer/Counter 2 ValueOCR2A sfr 0xb3 ; Timer/Counter 2 Output Compare Value ATIMSK0 sfr 0x6e ; Timer/Counter 0 Interrupt Mask RegisterTOIE0 avrbit TIMSK0,0 ; Timer/Counter 0 Overflow Interrupt EnableOCIE0A avrbit TIMSK0,1 ; Timer/Counter 0 Output Compare Interrupt Enable ATIMSK1 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 BICIE1 avrbit TIMSK1,5 ; Timer/Counter 1 Input Capture EnableTIMSK2 sfr 0x70 ; Timer/Counter 2 Interrupt Mask RegisterTOIE2 avrbit TIMSK2,0 ; Timer/Counter 2 Overflow Interrupt EnableOCIE2A avrbit TIMSK2,1 ; Timer/Counter 2 Output Compare Interrupt Enable ATIFR0 port 0x15 ; Timer/Counter 0 Interrupt Status RegisterTIFR1 port 0x16 ; Timer/Counter 1 Interrupt Status RegisterTIFR2 port 0x17 ; Timer/Counter 2 Interrupt Status RegisterASSR sfr 0xb6 ; Asynchronous Status RegisterTCR2UB avrbit ASSR,0 ; Timer/Counter Control Register 2 Update BusyOCR2UB avrbit ASSR,1 ; Output Compare Register 2TCN2UB avrbit ASSR,2 ; Timer/Counter 2 Update BusyAS2 avrbit ASSR,3 ; Asynchronous Timer/Counter 2EXCLK avrbit ASSR,4 ; Enable External Clock Input;----------------------------------------------------------------------------; Watchdog Timerinclude "wdm60.inc";----------------------------------------------------------------------------; USARTinclude "usartc0.inc";----------------------------------------------------------------------------; SPIinclude "spim2c.inc";----------------------------------------------------------------------------; TWIinclude "usimb8.inc";----------------------------------------------------------------------------; A/D Converterinclude "adcm78.inc"MUX4 avrbit ADMUX,4;----------------------------------------------------------------------------; Analog Comparatorinclude "acm30.inc"restore ; re-enable listingendif ; __regm3250inc