Devices are printed in a pretty way.
[avr-sim.git] / devices / atmega128
blob1234b2934961ebbfe513fcaa43e6c122971af089
1 <?xml version="1.0"?>
2 <!DOCTYPE device SYSTEM "device.dtd">
3 <device>
4 <interrupts num="35">
5 <interrupt vector="1" address="$0000" name="RESET">External Pin, Power-on Reset, Brown-out Reset, Watchdog Reset and JTAG AVR Reset</interrupt>
6 <interrupt vector="2" address="$0002" name="INT0">External Interrupt Request 0</interrupt>
7 <interrupt vector="3" address="$0004" name="INT1">External Interrupt Request 1</interrupt>
8 <interrupt vector="4" address="$0006" name="INT2">External Interrupt Request 2</interrupt>
9 <interrupt vector="5" address="$0008" name="INT3">External Interrupt Request 3</interrupt>
10 <interrupt vector="6" address="$000A" name="INT4">External Interrupt Request 4</interrupt>
11 <interrupt vector="7" address="$000C" name="INT5">External Interrupt Request 5</interrupt>
12 <interrupt vector="8" address="$000E" name="INT6">External Interrupt Request 6</interrupt>
13 <interrupt vector="9" address="$0010" name="INT7">External Interrupt Request 7</interrupt>
14 <interrupt vector="10" address="$0012" name="TIMER2 COMP">Timer/Counter2 Compare Match</interrupt>
15 <interrupt vector="11" address="$0014" name="TIMER2 OVF">Timer/Counter2 Overflow</interrupt>
16 <interrupt vector="12" address="$0016" name="TIMER1 CAPT">Timer/Counter1 Capture Event</interrupt>
17 <interrupt vector="13" address="$0018" name="TIMER1 COMPA">Timer/Counter1 Compare Match A</interrupt>
18 <interrupt vector="14" address="$001A" name="TIMER1 COMPB">Timer/Counter Compare Match B</interrupt>
19 <interrupt vector="15" address="$001C" name="TIMER1 OVF">Timer/Counter1 Overflow</interrupt>
20 <interrupt vector="16" address="$001E" name="TIMER0 COMP">Timer/Counter0 Compare Match</interrupt>
21 <interrupt vector="17" address="$0020" name="TIMER0 OVF">Timer/Counter0 Overflow</interrupt>
22 <interrupt vector="18" address="$0022" name="SPI, STC">SPI Serial Transfer Complete</interrupt>
23 <interrupt vector="19" address="$0024" name="USART0, RX">USART0, Rx Complete</interrupt>
24 <interrupt vector="20" address="$0026" name="USART0, UDRE">USART0 Data Register Empty</interrupt>
25 <interrupt vector="21" address="$0028" name="USART0, TX">USART0, Tx Complete</interrupt>
26 <interrupt vector="22" address="$002A" name="ADC">ADC Conversion Complete</interrupt>
27 <interrupt vector="23" address="$002C" name="EE READY">EEPROM Ready</interrupt>
28 <interrupt vector="24" address="$002E" name="ANALOG COMP">Analog Comparator</interrupt>
29 <interrupt vector="25" address="$0030" name="TIMER1 COMPC">Timer/Counter1 Compare Match C</interrupt>
30 <interrupt vector="26" address="$0032" name="TIMER3 CAPT">Timer/Counter3 Capture Event</interrupt>
31 <interrupt vector="27" address="$0034" name="TIMER3 COMPA">Timer/Counter3 Compare Match A</interrupt>
32 <interrupt vector="28" address="$0036" name="TIMER3 COMPB">Timer/Counter3 Compare Match B</interrupt>
33 <interrupt vector="29" address="$0038" name="TIMER3 COMPC">Timer/Counter3 Compare Match C</interrupt>
34 <interrupt vector="30" address="$003A" name="TIMER3 OVF">Timer/Counter3 Overflow</interrupt>
35 <interrupt vector="31" address="$003C" name="USART1, RX">USART1, Rx Complete</interrupt>
36 <interrupt vector="32" address="$003E" name="USART1, UDRE">USART1, Data Register Empty</interrupt>
37 <interrupt vector="33" address="$0040" name="USART1, TX">USART1, Tx Complete</interrupt>
38 <interrupt vector="34" address="$0042" name="TWI">2-wire Serial Interface</interrupt>
39 <interrupt vector="35" address="$0044" name="SPM READY">Store Program Memory Read</interrupt>
40 </interrupts>
41 <memory>
42 <flash size="131072"/>
43 <iospace start="$0020" stop="$00FF"/>
44 <sram size="4096"/>
45 <eram size="65536"/>
46 </memory>
47 <ioregisters>
48 <ioreg name="PINF" address="0x00"/>
49 <ioreg name="PINE" address="0x01"/>
50 <ioreg name="DDRE" address="0x02"/>
51 <ioreg name="PORTE" address="0x03"/>
52 <ioreg name="ADCL" address="0x04"/>
53 <ioreg name="ADCH" address="0x05"/>
54 <ioreg name="ADCSRA" address="0x06"/>
55 <ioreg name="ADMUX" address="0x07"/>
56 <ioreg name="ACSR" address="0x08"/>
57 <ioreg name="UBRR0L" address="0x09"/>
58 <ioreg name="UCSR0B" address="0x0A"/>
59 <ioreg name="UCSR0A" address="0x0B"/>
60 <ioreg name="UDR0" address="0x0C"/>
61 <ioreg name="SPCR" address="0x0D"/>
62 <ioreg name="SPSR" address="0x0E"/>
63 <ioreg name="SPDR" address="0x0F"/>
64 <ioreg name="PIND" address="0x10"/>
65 <ioreg name="DDRD" address="0x11"/>
66 <ioreg name="PORTD" address="0x12"/>
67 <ioreg name="PINC" address="0x13"/>
68 <ioreg name="DDRC" address="0x14"/>
69 <ioreg name="PORTC" address="0x15"/>
70 <ioreg name="PINB" address="0x16"/>
71 <ioreg name="DDRB" address="0x17"/>
72 <ioreg name="PORTB" address="0x18"/>
73 <ioreg name="PINA" address="0x19"/>
74 <ioreg name="DDRA" address="0x1A"/>
75 <ioreg name="PORTA" address="0x1B"/>
76 <ioreg name="EECR" address="0x1C"/>
77 <ioreg name="EEDR" address="0x1D"/>
78 <ioreg name="EEARL" address="0x1E"/>
79 <ioreg name="EEARH" address="0x1F"/>
80 <ioreg name="SFIOR" address="0x20"/>
81 <ioreg name="WDTCR" address="0x21"/>
82 <ioreg name="OCDR" address="0x22"/>
83 <ioreg name="OCR2" address="0x23"/>
84 <ioreg name="TCNT2" address="0x24"/>
85 <ioreg name="TCCR2" address="0x25"/>
86 <ioreg name="ICR1L" address="0x26"/>
87 <ioreg name="ICR1H" address="0x27"/>
88 <ioreg name="OCR1BL" address="0x28"/>
89 <ioreg name="OCR1BH" address="0x29"/>
90 <ioreg name="OCR1AL" address="0x2A"/>
91 <ioreg name="OCR1AH" address="0x2B"/>
92 <ioreg name="TCNT1L" address="0x2C"/>
93 <ioreg name="TCNT1H" address="0x2D"/>
94 <ioreg name="TCCR1B" address="0x2E"/>
95 <ioreg name="TCCR1A" address="0x2F"/>
96 <ioreg name="ASSR" address="0x30"/>
97 <ioreg name="OCR0" address="0x31"/>
98 <ioreg name="TCNT0" address="0x32"/>
99 <ioreg name="TCCR0" address="0x33"/>
100 <ioreg name="MCUCSR" address="0x34"/>
101 <ioreg name="MCUCR" address="0x35"/>
102 <ioreg name="TIFR" address="0x36"/>
103 <ioreg name="TIMSK" address="0x37"/>
104 <ioreg name="EIFR" address="0x38"/>
105 <ioreg name="EIMSK" address="0x39"/>
106 <ioreg name="EICRB" address="0x3A"/>
107 <ioreg name="RAMPZ" address="0x3B"/>
108 <ioreg name="XDIV" address="0x3C"/>
109 <ioreg name="SPL" address="0x3D"/>
110 <ioreg name="SPH" address="0x3E"/>
111 <ioreg name="SREG" address="0x3F"/>
112 <ioreg name="DDRF" address="0x61"/>
113 <ioreg name="PORTF" address="0x62"/>
114 <ioreg name="PING" address="0x63"/>
115 <ioreg name="DDRG" address="0x64"/>
116 <ioreg name="PORTG" address="0x65"/>
117 <ioreg name="SPMCSR" address="0x68"/>
118 <ioreg name="EICRA" address="0x6A"/>
119 <ioreg name="XMCRB" address="0x6C"/>
120 <ioreg name="XMCRA" address="0x6D"/>
121 <ioreg name="OSCCAL" address="0x6F"/>
122 <ioreg name="TWBR" address="0x70"/>
123 <ioreg name="TWSR" address="0x71"/>
124 <ioreg name="TWAR" address="0x72"/>
125 <ioreg name="TWDR" address="0x73"/>
126 <ioreg name="TWCR" address="0x74"/>
127 <ioreg name="OCR1CL" address="0x78"/>
128 <ioreg name="OCR1CH" address="0x79"/>
129 <ioreg name="TCCR1C" address="0x7A"/>
130 <ioreg name="ETIFR" address="0x7C"/>
131 <ioreg name="ETIMSK" address="0x7D"/>
132 <ioreg name="ICR3L" address="0x80"/>
133 <ioreg name="ICR3H" address="0x81"/>
134 <ioreg name="OCR3CL" address="0x82"/>
135 <ioreg name="OCR3CH" address="0x83"/>
136 <ioreg name="OCR3BL" address="0x84"/>
137 <ioreg name="OCR3BH" address="0x85"/>
138 <ioreg name="OCR3AL" address="0x86"/>
139 <ioreg name="OCR3AH" address="0x87"/>
140 <ioreg name="TCNT3L" address="0x88"/>
141 <ioreg name="TCNT3H" address="0x89"/>
142 <ioreg name="TCCR3B" address="0x8A"/>
143 <ioreg name="TCCR3A" address="0x8B"/>
144 <ioreg name="TCCR3C" address="0x8C"/>
145 <ioreg name="UBRR0H" address="0x90"/>
146 <ioreg name="UCSR0C" address="0x95"/>
147 <ioreg name="UBRR1H" address="0x98"/>
148 <ioreg name="UBRR1L" address="0x99"/>
149 <ioreg name="UCSR1B" address="0x9A"/>
150 <ioreg name="UCSR1A" address="0x9B"/>
151 <ioreg name="UDR1" address="0x9C"/>
152 <ioreg name="UCSR1C" address="0x9D"/>
153 </ioregisters>
154 <packages>
155 <package name="TQFP" pins="64">
156 <pin id="1" name="['PEN]"/>
157 <pin id="2" name="[PE0:RXD0:PDI]">PDI, Serial Programming Data Input. During Serial Program Downloading, this pin is used as data input line for the ATmega104. RXD0, USART0 Receive Pin. Receive Data (Data input pin for the USART0). When the USART0 receiver is enabled this pin is configured as an input regardless of the value of DDRE0. When the USART0 forces this pin to be an input, a logical one in PORTE0 will turn on the internal pull-up.</pin>
158 <pin id="3" name="[PE1:TXD0:PDO]">PDO, Serial Programming Data Output. During Serial Program Downloading, this pin is used as data output line for the ATmega104. TXD0, UART0 Transmit Pin.</pin>
159 <pin id="4" name="[PE2:XCK0:AIN0]">AIN0 - Analog Comparator Positive Input. This pin is directly connected to the positive input of the analog comparator. XCK0, USART0 external clock. The Data Direction Register (DDE2) controls whether the clock is output (DDE2 set) or input (DDE2 cleared). The XCK0 pin is active only when the USART0 operates in synchronous mode.</pin>
160 <pin id="5" name="[PE3:OC3A:AIN1]">AIN1 - Analog Comparator Negative Input. This pin is directly connected to the negative input of the analog comparator. OC3A, Output Compare matchA output: The PE3 pin can serve as an external output for the Timer/Counter3 output com-pareA. The pin has to be configured as an output (DDE3 set (one)) to serve this function. The OC3A pin is also the output pin for the PWM mode timer function.</pin>
161 <pin id="6" name="[PE4:OC3B:INT4]">INT4, External Interrupt source 4: The PE4 pin can serve as an external interrupt source. OC3B, Output Compare matchB output: The PE4 pin can serve as an external output for the Timer/Counter3 output com-pareB. The pin has to be configured as an output (DDE4 set (one)) to serve this function. The OC3B pin is also the output pin for the PWM mode timer function.</pin>
162 <pin id="7" name="[PE5:OC3C:INT5]">INT5, External Interrupt source 5: The PE5 pin can serve as an external interrupt source. OC3C, Output Compare matchC output: The PE5 pin can serve as an external output for the Timer/Counter3 output com-pareC. The pin has to be configured as an output (DDE5 set (one)) to serve this function. The OC3C pin is also the output pin for the PWM mode timer function.</pin>
163 <pin id="8" name="[PE6:T3:INT6]">INT6, External Interrupt source 6: The PE6 pin can serve as an external interrupt source. T3, Timer/Counter3 counter source.</pin>
164 <pin id="9" name="[PE7:IC3:INT7]">INT7, External Interrupt source 7: The PE7 pin can serve as an external interrupt source. IC3 - Input Capture Pin3: The PE7 pin can act as an input capture pin for Timer/Counter3.</pin>
165 <pin id="10" name="[PB0:'SS]">SS: Slave port select input. When the SPI is enabled as a slave, this pin is configured as an input regardless of the setting of DDB0. As a slave, the SPI is activated when this pin is driven low. When the SPI is enabled as a master, the data direc-tion of this pin is controlled by DDB0. When the pin is forced to be an input, the pull-up can still be controlled by the PORTB0 bit.</pin>
166 <pin id="11" name="[PB1:SCK]">SCK: Master clock output, slave clock input pin for SPI channel. When the SPI is enabled as a slave, this pin is configured as an input regardless of the setting of DDB1. When the SPI is enabled as a master, the data direction of this pin is con-trolled by DDB1. When the pin is forced to be an input, the pull-up can still be controlled by the PORTB1 bit.</pin>
167 <pin id="12" name="[PB2:MOSI]">MOSI: SPI Master data output, slave data input for SPI channel. When the SPI is enabled as a slave, this pin is configured as an input regardless of the setting of DDB2. When the SPI is enabled as a master, the data direction of this pin is con-trolled by DDB2. When the pin is forced to be an input, the pull-up can still be controlled by the PORTB2 bit.</pin>
168 <pin id="13" name="[PB3:MISO]">MISO: Master data input, slave data output pin for SPI channel. When the SPI is enabled as a master, this pin is configured as an input regardless of the setting of DDB3. When the SPI is enabled as a slave, the data direction of this pin is controlled by DDB3. When the pin is forced to be an input, the pull-up can still be controlled by the PORTB3 bit.</pin>
169 <pin id="14" name="[PB4:OC0:PWM0]">OC0, Output Compare match output: The PB4 pin can serve as an external output for the Timer/Counter0 output compare. The pin has to be configured as an output (DDB4 set (one)) to serve this function. The OC0 pin is also the output pin for the PWM mode timer function.</pin>
170 <pin id="15" name="[PB5:OC1A:PWM1A]">OC1A, Output Compare matchA output: The PB5 pin can serve as an external output for the Timer/Counter1 output com-pareA. The pin has to be configured as an output (DDB5 set (one)) to serve this function. The OC1A pin is also the output pin for the PWM mode timer function.</pin>
171 <pin id="16" name="[PB6:OC1B:PWM1B]">OC1B, Output Compare matchB output: The PB6 pin can serve as an external output for the Timer/Counter1 output compare B. The pin has to be configured as an output (DDB6 set (one)) to serve this function. The OC1B pin is also the output pin for the PWM mode timer function.</pin>
172 <pin id="17" name="[PB7:OC2:PWM2:OC1C]">OC2, Output Compare match output: The PB7 pin can serve as an external output for the Timer/Counter2 output compare. The pin has to be configured as an output (DDB7 set (one)) to serve this function. The OC2 pin is also the output pin for the PWM mode timer function.</pin>
173 <pin id="18" name="[PG3:TOSC2]">TOSC2, Timer Oscillator pin 2: When the AS0 bit in ASSR is set (one) to enable asynchronous clocking of Timer/Counter0, pin PG3 is disconnected from the port, and becomes the input of the inverting oscillator amplifier. In this mode, a crystal oscillator is connected to this pin, and the pin can not be used as an I/O pin.</pin>
174 <pin id="19" name="[PG4:TOSC1]">TOSC1, Timer Oscillator pin 1: When the AS0 bit in ASSR is set (one) to enable asynchronous clocking of Timer/Counter0, pin PG4 is disconnected from the port, and becomes the inverting output of the oscillator amplifier. In this mode, a crystal oscillator is connected to this pin, and the pin can not be used as an I/O pin.</pin>
175 <pin id="20" name="['RESET]"/>
176 <pin id="21" name="[VCC]"/>
177 <pin id="22" name="[GND]"/>
178 <pin id="23" name="[XTAL2]"/>
179 <pin id="24" name="[XTAL1]"/>
180 <pin id="25" name="[PD0:SCL:INT0]">INT0, External Interrupt source 0. The PD0 pin can serve as external active low interrupt source to the MCU. The internal pull up MOS resistors can be activated as described above. See the interrupt description for further details, and how to enable the source. SCL, 2-wire Serial Interface Clock: When the TWEN bit in TWCR is set (one) to enable the 2-wire Serial Interface, pin PD0 is disconnected from the port and becomes the Serial Clock I/O pin for the 2-wire Serial Interface. In this mode, there is a spike filter on the pin to suppress spikes shorter than 50 ns on the input signal, and the pin is driven by an open drain driver with slew-rate limitation</pin>
181 <pin id="26" name="[PD1:SDA:INT1]">INT1, External Interrupt source 1. The PD1 pin can serve as external active low interrupt source to the MCU. The internal pull up MOS resistors can be activated as described above. See the interrupt description for further details, and how to enable the source. SDA, 2-wire Serial Interface Data: When the TWEN bit in TWCR is set (one) to enable the 2-wire Serial Interface, pin PD1 is disconnected from the port and becomes the Serial Data I/O pin for the 2-wire Serial Interface. In this mode, there is aspike filter on the pin to suppress spikes shorter than 50 ns on the input signal, and the pin is driven by an open drain driver with slew-rate limitati</pin>
182 <pin id="27" name="[PD2:RXD1:INT2]">INT2, External Interrupt source 2. The PD2 pin can serve as external active low interrupt source to the MCU. The internal pull up MOS resistors can be activated as described above. See the interrupt description for further details, and how to enable the source. RXD1, Receive Data (Data input pin for the USART1). When the USART1 receiver is enabled this pin is configured as an input regardless of the value of DDD2. When the USART forces this pin to be an input, the pull-up can still be controlled by the PORTD2 bi</pin>
183 <pin id="28" name="[PD3:TXD1:INT3]">INT3, External Interrupt source 3. The PD3 pin can serve as external active low interrupt source to the MCU. The internal pull up MOS resistors can be activated as described above. See the interrupt description for further details, and how to enable the source. TXD1, Transmit Data (Data output pin for the USART1). When the USART1 transmitter is enabled, this pin is configured as an output regardless of the value of DDD3.</pin>
184 <pin id="29" name="[PD4:IC1]">IC1 - Input Capture Pin1: The PD4 pin can act as an input capture pin for Timer/Counter1.</pin>
185 <pin id="30" name="[PD5:XCK1]">XCK1, USART1 external clock. The Data Direction Register (DDD4) controls whether the clock is output (DDD4 set) or input (DDD4 cleared). The XCK1 pin is active only when the USART1 operates in synchronous mode.</pin>
186 <pin id="31" name="[PD6:T1]">T1, Timer/Counter1 counter source.</pin>
187 <pin id="32" name="[PD7:T2]">T2, Timer/Counter2 counter source.</pin>
188 <pin id="33" name="[PG0:'WR]">WR is the external data memory write control strobe.</pin>
189 <pin id="34" name="[PG1:'RD]">RD is the external data memory read control strobe.</pin>
190 <pin id="35" name="[PC0:A8]"/>
191 <pin id="36" name="[PC1:A9]"/>
192 <pin id="37" name="[PC2:A10]"/>
193 <pin id="38" name="[PC3:A11]"/>
194 <pin id="39" name="[PC4:A12]"/>
195 <pin id="40" name="[PC5:A13]"/>
196 <pin id="41" name="[PC6:A14]"/>
197 <pin id="42" name="[PC7:A15]"/>
198 <pin id="43" name="[PG2:ALE]">ALE is the external data memory Address Latch Enable signal.</pin>
199 <pin id="44" name="[PA7:AD7]"/>
200 <pin id="45" name="[PA6:AD6]"/>
201 <pin id="46" name="[PA5:AD5]"/>
202 <pin id="47" name="[PA4:AD4]"/>
203 <pin id="48" name="[PA3:AD3]"/>
204 <pin id="49" name="[PA2:AD2]"/>
205 <pin id="50" name="[PA1:AD1]"/>
206 <pin id="51" name="[PA0:AD0]"/>
207 <pin id="52" name="[VCC]"/>
208 <pin id="53" name="[GND]"/>
209 <pin id="54" name="[PF7:ADC7:TDI]">ADC7, Analog to Digital Converter, channel 7. TDI, JTAG Test Data In: Serial input data to be shifted in to the Instruction Register or Data Register (scan chains). When the JTAG interface is enabled, this pin can not be used as an I/O pin.</pin>
210 <pin id="55" name="[PF6:ADC6:TD0]">ADC6, Analog to Digital Converter, channel 6. TDO, JTAG Test Data Out: Serial output data from Instruction register or Data Register. When the JTAG interface is enabled, this pin can not be used as an I/O pin.</pin>
211 <pin id="56" name="[PF5:ADC5:TMS]">ADC5, Analog to Digital Converter, channel 5. TMS, JTAG Test Mode Select: This pin is used for navigating through the TAP-controller state machine. When the JTAG interface is enabled, this pin can not be used as an I/O pin.</pin>
212 <pin id="57" name="[PF4:ADC4:TCK]">ADC4, Analog to Digital Converter, channel 4. TCK, JTAG Test Clock: JTAG operation is synchronous to TCK. When the JTAG interface is enabled, this pin can not be used as an I/O pin.</pin>
213 <pin id="58" name="[PF3:ADC3]">Analog to Digital Converter, Channel 3</pin>
214 <pin id="59" name="[PF2:ADC2]">Analog to Digital Converter, Channel 2</pin>
215 <pin id="60" name="[PF1:ADC1]">Analog to Digital Converter, Channel 1</pin>
216 <pin id="61" name="[PF0:ADC0]">Analog to Digital Converter, Channel 0</pin>
217 <pin id="62" name="[AREF]"/>
218 <pin id="63" name="[GND]"/>
219 <pin id="64" name="[AVCC]"/>
220 </package>
221 </packages>
222 <hardware>
223 <!--Everything after this needs editing!!!-->
224 <module class="FUSE">
225 <registers name="FUSE" memspace="FUSE">
226 <reg size="1" name="EXTENDED" offset="0x02">
227 <bitfield name="M103C" mask="0x02" text="ATmega103 Compatibility Mode" icon=""/>
228 <bitfield name="WDTON" mask="0x01" text="Watchdog Timer always on" icon=""/>
229 </reg>
230 <reg size="1" name="HIGH" offset="0x01">
231 <bitfield name="OCDEN" mask="0x80" text="On-Chip Debug Enabled" icon=""/>
232 <bitfield name="JTAGEN" mask="0x40" text="JTAG Interface Enabled" icon=""/>
233 <bitfield name="SPIEN" mask="0x20" text="Serial program downloading (SPI) enabled" icon=""/>
234 <bitfield name="EESAVE" mask="0x08" text="Preserve EEPROM through the Chip Erase cycle" icon=""/>
235 <bitfield name="BOOTSZ" mask="0x06" text="Select Boot Size" icon="" enum="ENUM_BOOTSZ"/>
236 <bitfield name="BOOTRST" mask="0x01" text="Boot Reset vector Enabled" icon=""/>
237 <bitfield name="CKOPT" mask="0x10" text="CKOPT fuse (operation dependent of CKSEL fuses)" icon=""/>
238 </reg>
239 <reg size="1" name="LOW" offset="0x00">
240 <bitfield name="BODLEVEL" mask="0x80" text="Brown out detector trigger level" icon="" enum="ENUM_BODLEVEL"/>
241 <bitfield name="BODEN" mask="0x40" text="Brown-out detection enabled" icon=""/>
242 <bitfield name="SUT_CKSEL" mask="0x3F" text="Select Clock Source" icon="" enum="ENUM_SUT_CKSEL"/>
243 </reg>
244 </registers>
245 </module>
246 <module class="LOCKBIT">
247 <registers name="LOCKBIT" memspace="LOCKBIT">
248 <reg size="1" name="LOCKBIT" offset="0x00">
249 <bitfield name="LB" mask="0x03" text="Memory Lock" icon="" enum="ENUM_LB"/>
250 <bitfield name="BLB0" mask="0x0C" text="Boot Loader Protection Mode" icon="" enum="ENUM_BLB"/>
251 <bitfield name="BLB1" mask="0x30" text="Boot Loader Protection Mode" icon="" enum="ENUM_BLB2"/>
252 </reg>
253 </registers>
254 </module>
255 <module class="ANALOG_COMPARATOR">
256 <registers name="ANALOG_COMPARATOR" memspace="DATAMEM" text="" icon="io_analo.bmp">
257 <reg size="1" name="SFIOR" offset="0x40" text="Special Function IO Register" icon="io_flag.bmp">
258 <bitfield name="ACME" mask="0x08" text="Analog Comparator Multiplexer Enable" icon=""/>
259 </reg>
260 <reg size="1" name="ACSR" offset="0x28" text="Analog Comparator Control And Status Register" icon="io_analo.bmp">
261 <bitfield name="ACD" mask="0x80" text="Analog Comparator Disable" icon=""/>
262 <bitfield name="ACBG" mask="0x40" text="Analog Comparator Bandgap Select" icon=""/>
263 <bitfield name="ACO" mask="0x20" text="Analog Compare Output" icon=""/>
264 <bitfield name="ACI" mask="0x10" text="Analog Comparator Interrupt Flag" icon=""/>
265 <bitfield name="ACIE" mask="0x08" text="Analog Comparator Interrupt Enable" icon=""/>
266 <bitfield name="ACIC" mask="0x04" text="Analog Comparator Input Capture Enable" icon=""/>
267 <bitfield name="ACIS" mask="0x03" text="Analog Comparator Interrupt Mode Select bits" icon="" enum="ANALOG_COMP_INTERRUPT"/>
268 </reg>
269 </registers>
270 </module>
271 <module class="SPI">
272 <registers name="SPI" memspace="DATAMEM" text="" icon="io_com.bmp">
273 <reg size="1" name="SPDR" offset="0x2F" text="SPI Data Register" icon="io_com.bmp" mask="0xFF"/>
274 <reg size="1" name="SPSR" offset="0x2E" text="SPI Status Register" icon="io_flag.bmp">
275 <bitfield name="SPIF" mask="0x80" text="SPI Interrupt Flag" icon=""/>
276 <bitfield name="WCOL" mask="0x40" text="Write Collision Flag" icon=""/>
277 <bitfield name="SPI2X" mask="0x01" text="Double SPI Speed Bit" icon=""/>
278 </reg>
279 <reg size="1" name="SPCR" offset="0x2D" text="SPI Control Register" icon="io_flag.bmp">
280 <bitfield name="SPIE" mask="0x80" text="SPI Interrupt Enable" icon=""/>
281 <bitfield name="SPE" mask="0x40" text="SPI Enable" icon=""/>
282 <bitfield name="DORD" mask="0x20" text="Data Order" icon=""/>
283 <bitfield name="MSTR" mask="0x10" text="Master/Slave Select" icon=""/>
284 <bitfield name="CPOL" mask="0x08" text="Clock polarity" icon=""/>
285 <bitfield name="CPHA" mask="0x04" text="Clock Phase" icon=""/>
286 <bitfield name="SPR" mask="0x03" text="SPI Clock Rate Selects" icon="" enum="COMM_SCK_RATE_3BIT"/>
287 </reg>
288 </registers>
289 </module>
290 <module class="TWI">
291 <registers name="TWI" memspace="DATAMEM" text="" icon="io_com.bmp">
292 <reg size="1" name="TWBR" offset="0x70" text="TWI Bit Rate register" icon="io_com.bmp" mask="0xFF"/>
293 <reg size="1" name="TWCR" offset="0x74" text="TWI Control Register" icon="io_flag.bmp">
294 <bitfield name="TWINT" mask="0x80" text="TWI Interrupt Flag" icon=""/>
295 <bitfield name="TWEA" mask="0x40" text="TWI Enable Acknowledge Bit" icon=""/>
296 <bitfield name="TWSTA" mask="0x20" text="TWI Start Condition Bit" icon=""/>
297 <bitfield name="TWSTO" mask="0x10" text="TWI Stop Condition Bit" icon=""/>
298 <bitfield name="TWWC" mask="0x08" text="TWI Write Collition Flag" icon=""/>
299 <bitfield name="TWEN" mask="0x04" text="TWI Enable Bit" icon=""/>
300 <bitfield name="TWIE" mask="0x01" text="TWI Interrupt Enable" icon=""/>
301 </reg>
302 <reg size="1" name="TWSR" offset="0x71" text="TWI Status Register" icon="io_flag.bmp">
303 <bitfield name="TWS" mask="0xF8" text="TWI Status" icon="" lsb="3"/>
304 <bitfield name="TWPS" mask="0x03" text="TWI Prescaler" icon="" enum="COMM_TWI_PRESACLE"/>
305 </reg>
306 <reg size="1" name="TWDR" offset="0x73" text="TWI Data register" icon="io_com.bmp" mask="0xFF"/>
307 <reg size="1" name="TWAR" offset="0x72" text="TWI (Slave) Address register" icon="io_com.bmp">
308 <bitfield name="TWA" mask="0xFE" text="TWI (Slave) Address register Bits" icon=""/>
309 <bitfield name="TWGCE" mask="0x01" text="TWI General Call Recognition Enable Bit" icon=""/>
310 </reg>
311 </registers>
312 </module>
313 <module class="USART0">
314 <registers name="USART0" memspace="DATAMEM" text="" icon="io_com.bmp">
315 <reg size="1" name="UDR0" offset="0x2C" text="USART I/O Data Register" icon="io_com.bmp" mask="0xFF"/>
316 <reg size="1" name="UCSR0A" offset="0x2B" text="USART Control and Status Register A" icon="io_flag.bmp">
317 <bitfield name="RXC0" mask="0x80" text="USART Receive Complete" icon=""/>
318 <bitfield name="TXC0" mask="0x40" text="USART Transmitt Complete" icon=""/>
319 <bitfield name="UDRE0" mask="0x20" text="USART Data Register Empty" icon=""/>
320 <bitfield name="FE0" mask="0x10" text="Framing Error" icon=""/>
321 <bitfield name="DOR0" mask="0x08" text="Data overRun" icon=""/>
322 <bitfield name="UPE0" mask="0x04" text="Parity Error" icon=""/>
323 <bitfield name="U2X0" mask="0x02" text="Double the USART transmission speed" icon=""/>
324 <bitfield name="MPCM0" mask="0x01" text="Multi-processor Communication Mode" icon=""/>
325 </reg>
326 <reg size="1" name="UCSR0B" offset="0x2A" text="USART Control and Status Register B" icon="io_flag.bmp">
327 <bitfield name="RXCIE0" mask="0x80" text="RX Complete Interrupt Enable" icon=""/>
328 <bitfield name="TXCIE0" mask="0x40" text="TX Complete Interrupt Enable" icon=""/>
329 <bitfield name="UDRIE0" mask="0x20" text="USART Data register Empty Interrupt Enable" icon=""/>
330 <bitfield name="RXEN0" mask="0x10" text="Receiver Enable" icon=""/>
331 <bitfield name="TXEN0" mask="0x08" text="Transmitter Enable" icon=""/>
332 <bitfield name="UCSZ02" mask="0x04" text="Character Size" icon=""/>
333 <bitfield name="RXB80" mask="0x02" text="Receive Data Bit 8" icon=""/>
334 <bitfield name="TXB80" mask="0x01" text="Transmit Data Bit 8" icon=""/>
335 </reg>
336 <reg size="1" name="UCSR0C" offset="0x95" text="USART Control and Status Register C" icon="io_flag.bmp">
337 <bitfield name="UMSEL0" mask="0x40" text="USART Mode Select" icon="" enum="COMM_USART_MODE"/>
338 <bitfield name="UPM0" mask="0x30" text="Parity Mode Bits" icon="" enum="COMM_UPM_PARITY_MODE"/>
339 <bitfield name="USBS0" mask="0x08" text="Stop Bit Select" icon="" enum="COMM_STOP_BIT_SEL"/>
340 <bitfield name="UCSZ0" mask="0x06" text="Character Size" icon=""/>
341 <bitfield name="UCPOL0" mask="0x01" text="Clock Polarity" icon=""/>
342 </reg>
343 <reg size="1" name="UBRR0H" offset="0x90" text="USART Baud Rate Register Hight Byte" icon="io_com.bmp" mask="0x0F"/>
344 <reg size="1" name="UBRR0L" offset="0x29" text="USART Baud Rate Register Low Byte" icon="io_com.bmp" mask="0xFF"/>
345 </registers>
346 </module>
347 <module class="USART1">
348 <registers name="USART1" memspace="DATAMEM" text="" icon="io_com.bmp">
349 <reg size="1" name="UDR1" offset="0x9C" text="USART I/O Data Register" icon="io_com.bmp" mask="0xFF"/>
350 <reg size="1" name="UCSR1A" offset="0x9B" text="USART Control and Status Register A" icon="io_flag.bmp">
351 <bitfield name="RXC1" mask="0x80" text="USART Receive Complete" icon=""/>
352 <bitfield name="TXC1" mask="0x40" text="USART Transmitt Complete" icon=""/>
353 <bitfield name="UDRE1" mask="0x20" text="USART Data Register Empty" icon=""/>
354 <bitfield name="FE1" mask="0x10" text="Framing Error" icon=""/>
355 <bitfield name="DOR1" mask="0x08" text="Data overRun" icon=""/>
356 <bitfield name="UPE1" mask="0x04" text="Parity Error" icon=""/>
357 <bitfield name="U2X1" mask="0x02" text="Double the USART transmission speed" icon=""/>
358 <bitfield name="MPCM1" mask="0x01" text="Multi-processor Communication Mode" icon=""/>
359 </reg>
360 <reg size="1" name="UCSR1B" offset="0x9A" text="USART Control and Status Register B" icon="io_flag.bmp">
361 <bitfield name="RXCIE1" mask="0x80" text="RX Complete Interrupt Enable" icon=""/>
362 <bitfield name="TXCIE1" mask="0x40" text="TX Complete Interrupt Enable" icon=""/>
363 <bitfield name="UDRIE1" mask="0x20" text="USART Data register Empty Interrupt Enable" icon=""/>
364 <bitfield name="RXEN1" mask="0x10" text="Receiver Enable" icon=""/>
365 <bitfield name="TXEN1" mask="0x08" text="Transmitter Enable" icon=""/>
366 <bitfield name="UCSZ12" mask="0x04" text="Character Size" icon=""/>
367 <bitfield name="RXB81" mask="0x02" text="Receive Data Bit 8" icon=""/>
368 <bitfield name="TXB81" mask="0x01" text="Transmit Data Bit 8" icon=""/>
369 </reg>
370 <reg size="1" name="UCSR1C" offset="0x9D" text="USART Control and Status Register C" icon="io_flag.bmp">
371 <bitfield name="UMSEL1" mask="0x40" text="USART Mode Select" icon="" enum="COMM_USART_MODE"/>
372 <bitfield name="UPM1" mask="0x30" text="Parity Mode Bits" icon="" enum="COMM_UPM_PARITY_MODE"/>
373 <bitfield name="USBS1" mask="0x08" text="Stop Bit Select" icon="" enum="COMM_STOP_BIT_SEL"/>
374 <bitfield name="UCSZ1" mask="0x06" text="Character Size" icon=""/>
375 <bitfield name="UCPOL1" mask="0x01" text="Clock Polarity" icon=""/>
376 </reg>
377 <reg size="1" name="UBRR1H" offset="0x98" text="USART Baud Rate Register Hight Byte" icon="io_com.bmp" mask="0x0F"/>
378 <reg size="1" name="UBRR1L" offset="0x99" text="USART Baud Rate Register Low Byte" icon="io_com.bmp" mask="0xFF"/>
379 </registers>
380 </module>
381 <module class="CPU">
382 <registers name="CPU" memspace="DATAMEM" text="" icon="io_cpu.bmp">
383 <reg size="1" name="SREG" offset="0x5F" text="Status Register" icon="io_sreg.bmp">
384 <bitfield name="I" mask="0x80" text="Global Interrupt Enable" icon=""/>
385 <bitfield name="T" mask="0x40" text="Bit Copy Storage" icon=""/>
386 <bitfield name="H" mask="0x20" text="Half Carry Flag" icon=""/>
387 <bitfield name="S" mask="0x10" text="Sign Bit" icon=""/>
388 <bitfield name="V" mask="0x08" text="Two's Complement Overflow Flag" icon=""/>
389 <bitfield name="N" mask="0x04" text="Negative Flag" icon=""/>
390 <bitfield name="Z" mask="0x02" text="Zero Flag" icon=""/>
391 <bitfield name="C" mask="0x01" text="Carry Flag" icon=""/>
392 </reg>
393 <reg size="2" name="SP" offset="0x5D" text="Stack Pointer " icon="io_sph.bmp" mask="0xFFFF"/>
394 <reg size="1" name="MCUCR" offset="0x55" text="MCU Control Register" icon="io_flag.bmp">
395 <bitfield name="SRE" mask="0x80" text="External SRAM Enable" icon=""/>
396 <bitfield name="SRW10" mask="0x40" text="External SRAM Wait State Select" icon=""/>
397 <bitfield name="SE" mask="0x20" text="Sleep Enable" icon=""/>
398 <bitfield name="SM" mask="0x18" text="Sleep Mode Select" icon=""/>
399 <bitfield name="SM2" mask="0x04" text="Sleep Mode Select" icon=""/>
400 <bitfield name="IVSEL" mask="0x02" text="Interrupt Vector Select" icon=""/>
401 <bitfield name="IVCE" mask="0x01" text="Interrupt Vector Change Enable" icon=""/>
402 </reg>
403 <reg size="1" name="MCUCSR" offset="0x54" text="MCU Control And Status Register" icon="io_flag.bmp">
404 <bitfield name="JTD" mask="0x80" text="JTAG Interface Disable" icon=""/>
405 <bitfield name="JTRF" mask="0x10" text="JTAG Reset Flag" icon=""/>
406 <bitfield name="WDRF" mask="0x08" text="Watchdog Reset Flag" icon=""/>
407 <bitfield name="BORF" mask="0x04" text="Brown-out Reset Flag" icon=""/>
408 <bitfield name="EXTRF" mask="0x02" text="External Reset Flag" icon=""/>
409 <bitfield name="PORF" mask="0x01" text="Power-on reset flag" icon=""/>
410 </reg>
411 <reg size="1" name="XMCRA" offset="0x6D" text="External Memory Control Register A" icon="io_cpu.bmp">
412 <bitfield name="SRL" mask="0x70" text="Wait state page limit" icon="" enum="CPU_SECTOR_LIMITS"/>
413 <bitfield name="SRW0" mask="0x0C" text="Wait state select bit lower page" icon="" enum="CPU_WAIT_STATES"/>
414 <bitfield name="SRW11" mask="0x02" text="Wait state select bit upper page" icon=""/>
415 </reg>
416 <reg size="1" name="XMCRB" offset="0x6C" text="External Memory Control Register B" icon="io_cpu.bmp">
417 <bitfield name="XMBK" mask="0x80" text="External Memory Bus Keeper Enable" icon=""/>
418 <bitfield name="XMM" mask="0x07" text="External Memory High Mask" icon=""/>
419 </reg>
420 <reg size="1" name="OSCCAL" offset="0x6F" text="Oscillator Calibration Value" icon="io_cpu.bmp" mask="0xFF"/>
421 <reg size="1" name="XDIV" offset="0x5C" text="XTAL Divide Control Register" icon="io_cpu.bmp" mask="0xFF"/>
422 <reg size="1" name="RAMPZ" offset="0x5B" text="RAM Page Z Select Register" icon="io_cpu.bmp">
423 <bitfield name="RAMPZ0" mask="0x01" text="RAM Page Z Select Register Bit 0" icon=""/>
424 </reg>
425 </registers>
426 </module>
427 <module class="BOOT_LOAD">
428 <registers name="BOOT_LOAD" memspace="DATAMEM" text="" icon="io_cpu.bmp">
429 <reg size="1" name="SPMCSR" offset="0x68" text="Store Program Memory Control Register" icon="io_flag.bmp">
430 <bitfield name="SPMIE" mask="0x80" text="SPM Interrupt Enable" icon=""/>
431 <bitfield name="RWWSB" mask="0x40" text="Read While Write Section Busy" icon=""/>
432 <bitfield name="RWWSRE" mask="0x10" text="Read While Write section read enable" icon=""/>
433 <bitfield name="BLBSET" mask="0x08" text="Boot Lock Bit Set" icon=""/>
434 <bitfield name="PGWRT" mask="0x04" text="Page Write" icon=""/>
435 <bitfield name="PGERS" mask="0x02" text="Page Erase" icon=""/>
436 <bitfield name="SPMEN" mask="0x01" text="Store Program Memory Enable" icon=""/>
437 </reg>
438 </registers>
439 </module>
440 <module class="JTAG">
441 <registers name="JTAG" memspace="DATAMEM" text="" icon="io_com.bmp">
442 <reg size="1" name="OCDR" offset="0x42" text="On-Chip Debug Related Register in I/O Memory" icon="io_com.bmp">
443 <bitfield name="OCDR" mask="0xFF" text="On-Chip Debug Register Bits" icon=""/>
444 </reg>
445 <reg size="1" name="MCUCSR" offset="0x54" text="MCU Control And Status Register" icon="io_flag.bmp">
446 <bitfield name="JTD" mask="0x80" text="JTAG Interface Disable" icon=""/>
447 <bitfield name="JTRF" mask="0x10" text="JTAG Reset Flag" icon=""/>
448 </reg>
449 </registers>
450 </module>
451 <module class="MISC">
452 <registers name="MISC" memspace="DATAMEM" text="" icon="io_cpu.bmp">
453 <reg size="1" name="SFIOR" offset="0x40" text="Special Function IO Register" icon="io_flag.bmp">
454 <bitfield name="TSM" mask="0x80" text="Timer/Counter Synchronization Mode" icon=""/>
455 <bitfield name="ACME" mask="0x08" text="Analog Comparator Multiplexer Enable" icon=""/>
456 <bitfield name="PUD" mask="0x04" text="Pull Up Disable" icon=""/>
457 <bitfield name="PSR0" mask="0x02" text="Prescaler Reset Timer/Counter0" icon=""/>
458 <bitfield name="PSR321" mask="0x01" text="Prescaler Reset Timer/Counter3, Timer/Counter2, and Timer/Counter1" icon=""/>
459 </reg>
460 </registers>
461 </module>
462 <module class="EXTERNAL_INTERRUPT">
463 <registers name="EXTERNAL_INTERRUPT" memspace="DATAMEM" text="" icon="io_ext.bmp">
464 <reg size="1" name="EICRA" offset="0x6A" text="External Interrupt Control Register A" icon="io_flag.bmp">
465 <bitfield name="ISC3" mask="0xC0" text="External Interrupt Sense Control Bit" icon="" enum="INTERRUPT_SENSE_CONTROL"/>
466 <bitfield name="ISC2" mask="0x30" text="External Interrupt Sense Control Bit" icon="" enum="INTERRUPT_SENSE_CONTROL"/>
467 <bitfield name="ISC1" mask="0x0C" text="External Interrupt Sense Control Bit" icon="" enum="INTERRUPT_SENSE_CONTROL"/>
468 <bitfield name="ISC0" mask="0x03" text="External Interrupt Sense Control Bit" icon="" enum="INTERRUPT_SENSE_CONTROL"/>
469 </reg>
470 <reg size="1" name="EICRB" offset="0x5A" text="External Interrupt Control Register B" icon="io_flag.bmp">
471 <bitfield name="ISC7" mask="0xC0" text="External Interrupt 7-4 Sense Control Bit" icon="" enum="INTERRUPT_SENSE_CONTROL"/>
472 <bitfield name="ISC6" mask="0x30" text="External Interrupt 7-4 Sense Control Bit" icon="" enum="INTERRUPT_SENSE_CONTROL"/>
473 <bitfield name="ISC5" mask="0x0C" text="External Interrupt 7-4 Sense Control Bit" icon="" enum="INTERRUPT_SENSE_CONTROL"/>
474 <bitfield name="ISC4" mask="0x03" text="External Interrupt 7-4 Sense Control Bit" icon="" enum="INTERRUPT_SENSE_CONTROL"/>
475 </reg>
476 <reg size="1" name="EIMSK" offset="0x59" text="External Interrupt Mask Register" icon="io_flag.bmp">
477 <bitfield name="INT" mask="0xFF" text="External Interrupt Request 7 Enable" icon=""/>
478 </reg>
479 <reg size="1" name="EIFR" offset="0x58" text="External Interrupt Flag Register" icon="io_flag.bmp">
480 <bitfield name="INTF" mask="0xFF" text="External Interrupt Flags" icon=""/>
481 </reg>
482 </registers>
483 </module>
484 <module class="EEPROM">
485 <registers name="EEPROM" memspace="DATAMEM" text="" icon="io_cpu.bmp">
486 <reg size="2" name="EEAR" offset="0x3E" text="EEPROM Read/Write Access Bytes" icon="io_cpu.bmp" mask="0x0FFF"/>
487 <reg size="1" name="EEDR" offset="0x3D" text="EEPROM Data Register" icon="io_cpu.bmp" mask="0xFF"/>
488 <reg size="1" name="EECR" offset="0x3C" text="EEPROM Control Register" icon="io_flag.bmp">
489 <bitfield name="EERIE" mask="0x08" text="EEPROM Ready Interrupt Enable" icon=""/>
490 <bitfield name="EEMWE" mask="0x04" text="EEPROM Master Write Enable" icon=""/>
491 <bitfield name="EEWE" mask="0x02" text="EEPROM Write Enable" icon=""/>
492 <bitfield name="EERE" mask="0x01" text="EEPROM Read Enable" icon=""/>
493 </reg>
494 </registers>
495 </module>
496 <module class="PORTA">
497 <registers name="PORTA" memspace="DATAMEM" text="" icon="io_port.bmp">
498 <reg size="1" name="PORTA" offset="0x3B" text="Port A Data Register" icon="io_port.bmp" mask="0xFF"/>
499 <reg size="1" name="DDRA" offset="0x3A" text="Port A Data Direction Register" icon="io_flag.bmp" mask="0xFF"/>
500 <reg size="1" name="PINA" offset="0x39" text="Port A Input Pins" icon="io_port.bmp" mask="0xFF"/>
501 </registers>
502 </module>
503 <module class="PORTB">
504 <registers name="PORTB" memspace="DATAMEM" text="" icon="io_port.bmp">
505 <reg size="1" name="PORTB" offset="0x38" text="Port B Data Register" icon="io_port.bmp" mask="0xFF"/>
506 <reg size="1" name="DDRB" offset="0x37" text="Port B Data Direction Register" icon="io_flag.bmp" mask="0xFF"/>
507 <reg size="1" name="PINB" offset="0x36" text="Port B Input Pins" icon="io_port.bmp" mask="0xFF"/>
508 </registers>
509 </module>
510 <module class="PORTC">
511 <registers name="PORTC" memspace="DATAMEM" text="" icon="io_port.bmp">
512 <reg size="1" name="PORTC" offset="0x35" text="Port C Data Register" icon="io_port.bmp" mask="0xFF"/>
513 <reg size="1" name="DDRC" offset="0x34" text="Port C Data Direction Register" icon="io_flag.bmp" mask="0xFF"/>
514 <reg size="1" name="PINC" offset="0x33" text="Port C Input Pins" icon="io_port.bmp" mask="0xFF"/>
515 </registers>
516 </module>
517 <module class="PORTD">
518 <registers name="PORTD" memspace="DATAMEM" text="" icon="io_port.bmp">
519 <reg size="1" name="PORTD" offset="0x32" text="Port D Data Register" icon="io_port.bmp" mask="0xFF"/>
520 <reg size="1" name="DDRD" offset="0x31" text="Port D Data Direction Register" icon="io_flag.bmp" mask="0xFF"/>
521 <reg size="1" name="PIND" offset="0x30" text="Port D Input Pins" icon="io_port.bmp" mask="0xFF"/>
522 </registers>
523 </module>
524 <module class="PORTE">
525 <registers name="PORTE" memspace="DATAMEM" text="" icon="io_port.bmp">
526 <reg size="1" name="PORTE" offset="0x23" text="Data Register, Port E" icon="io_port.bmp" mask="0xFF"/>
527 <reg size="1" name="DDRE" offset="0x22" text="Data Direction Register, Port E" icon="io_flag.bmp" mask="0xFF"/>
528 <reg size="1" name="PINE" offset="0x21" text="Input Pins, Port E" icon="io_port.bmp" mask="0xFF"/>
529 </registers>
530 </module>
531 <module class="PORTF">
532 <registers name="PORTF" memspace="DATAMEM" text="" icon="io_port.bmp">
533 <reg size="1" name="PORTF" offset="0x62" text="Data Register, Port F" icon="io_port.bmp" mask="0xFF"/>
534 <reg size="1" name="DDRF" offset="0x61" text="Data Direction Register, Port F" icon="io_flag.bmp" mask="0xFF"/>
535 <reg size="1" name="PINF" offset="0x20" text="Input Pins, Port F" icon="io_port.bmp" mask="0xFF"/>
536 </registers>
537 </module>
538 <module class="PORTG">
539 <registers name="PORTG" memspace="DATAMEM" text="" icon="io_port.bmp">
540 <reg size="1" name="PORTG" offset="0x65" text="Data Register, Port G" icon="io_port.bmp" mask="0x1F"/>
541 <reg size="1" name="DDRG" offset="0x64" text="Data Direction Register, Port G" icon="io_flag.bmp" mask="0x1F"/>
542 <reg size="1" name="PING" offset="0x63" text="Input Pins, Port G" icon="io_port.bmp" mask="0x1F"/>
543 </registers>
544 </module>
545 <module class="TIMER_COUNTER_0">
546 <registers name="TIMER_COUNTER_0" memspace="DATAMEM" text="" icon="io_timer.bmp">
547 <reg size="1" name="TCCR0" offset="0x53" text="Timer/Counter Control Register" icon="io_flag.bmp">
548 <bitfield name="FOC0" mask="0x80" text="Force Output Compare" icon=""/>
549 <bitfield name="WGM00" mask="0x40" text="Waveform Generation Mode 0" icon="" enum="WAVEFORM_GEN_MODE"/>
550 <bitfield name="COM0" mask="0x30" text="Compare Match Output Modes" icon=""/>
551 <bitfield name="WGM01" mask="0x08" text="Waveform Generation Mode 1" icon=""/>
552 <bitfield name="CS0" mask="0x07" text="Clock Selects" icon="" enum="CLK_SEL_3BIT"/>
553 </reg>
554 <reg size="1" name="TCNT0" offset="0x52" text="Timer/Counter Register" icon="io_timer.bmp" mask="0xFF"/>
555 <reg size="1" name="OCR0" offset="0x51" text="Output Compare Register" icon="io_timer.bmp" mask="0xFF"/>
556 <reg size="1" name="ASSR" offset="0x50" text="Asynchronus Status Register" icon="io_flag.bmp">
557 <bitfield name="AS0" mask="0x08" text="Asynchronus Timer/Counter 0" icon=""/>
558 <bitfield name="TCN0UB" mask="0x04" text="Timer/Counter0 Update Busy" icon=""/>
559 <bitfield name="OCR0UB" mask="0x02" text="Output Compare register 0 Busy" icon=""/>
560 <bitfield name="TCR0UB" mask="0x01" text="Timer/Counter Control Register 0 Update Busy" icon=""/>
561 </reg>
562 <reg size="1" name="TIMSK" offset="0x57" text="Timer/Counter Interrupt Mask Register" icon="io_flag.bmp">
563 <bitfield name="OCIE0" mask="0x02" text="Timer/Counter0 Output Compare Match Interrupt register" icon=""/>
564 <bitfield name="TOIE0" mask="0x01" text="Timer/Counter0 Overflow Interrupt Enable" icon=""/>
565 </reg>
566 <reg size="1" name="TIFR" offset="0x56" text="Timer/Counter Interrupt Flag register" icon="io_flag.bmp">
567 <bitfield name="OCF0" mask="0x02" text="Output Compare Flag 0" icon=""/>
568 <bitfield name="TOV0" mask="0x01" text="Timer/Counter0 Overflow Flag" icon=""/>
569 </reg>
570 <reg size="1" name="SFIOR" offset="0x40" text="Special Function IO Register" icon="io_cpu.bmp">
571 <bitfield name="TSM" mask="0x80" text="Timer/Counter Synchronization Mode" icon=""/>
572 <bitfield name="PSR0" mask="0x02" text="Prescaler Reset Timer/Counter0" icon=""/>
573 </reg>
574 </registers>
575 </module>
576 <module class="TIMER_COUNTER_1">
577 <registers name="TIMER_COUNTER_1" memspace="DATAMEM" text="" icon="io_timer.bmp">
578 <reg size="1" name="TIMSK" offset="0x57" text="Timer/Counter Interrupt Mask Register" icon="io_flag.bmp">
579 <bitfield name="TICIE1" mask="0x20" text="Timer/Counter1 Input Capture Interrupt Enable" icon=""/>
580 <bitfield name="OCIE1A" mask="0x10" text="Timer/Counter1 Output CompareA Match Interrupt Enable" icon=""/>
581 <bitfield name="OCIE1B" mask="0x08" text="Timer/Counter1 Output CompareB Match Interrupt Enable" icon=""/>
582 <bitfield name="TOIE1" mask="0x04" text="Timer/Counter1 Overflow Interrupt Enable" icon=""/>
583 </reg>
584 <reg size="1" name="ETIMSK" offset="0x7D" text="Extended Timer/Counter Interrupt Mask Register" icon="io_flag.bmp">
585 <bitfield name="OCIE1C" mask="0x01" text="Timer/Counter 1, Output Compare Match C Interrupt Enable" icon=""/>
586 </reg>
587 <reg size="1" name="TIFR" offset="0x56" text="Timer/Counter Interrupt Flag register" icon="io_flag.bmp">
588 <bitfield name="ICF1" mask="0x20" text="Input Capture Flag 1" icon=""/>
589 <bitfield name="OCF1A" mask="0x10" text="Output Compare Flag 1A" icon=""/>
590 <bitfield name="OCF1B" mask="0x08" text="Output Compare Flag 1B" icon=""/>
591 <bitfield name="TOV1" mask="0x04" text="Timer/Counter1 Overflow Flag" icon=""/>
592 </reg>
593 <reg size="1" name="ETIFR" offset="0x7C" text="Extended Timer/Counter Interrupt Flag register" icon="io_flag.bmp">
594 <bitfield name="OCF1C" mask="0x01" text="Timer/Counter 1, Output Compare C Match Flag" icon=""/>
595 </reg>
596 <reg size="1" name="SFIOR" offset="0x40" text="Special Function IO Register" icon="io_cpu.bmp">
597 <bitfield name="TSM" mask="0x80" text="Timer/Counter Synchronization Mode" icon=""/>
598 <bitfield name="PSR321" mask="0x01" text="Prescaler Reset, T/C3, T/C2, T/C1" icon=""/>
599 </reg>
600 <reg size="1" name="TCCR1A" offset="0x4F" text="Timer/Counter1 Control Register A" icon="io_flag.bmp">
601 <bitfield name="COM1A" mask="0xC0" text="Compare Output Mode 1A, bits" icon=""/>
602 <bitfield name="COM1B" mask="0x30" text="Compare Output Mode 1B, bits" icon=""/>
603 <bitfield name="COM1C" mask="0x0C" text="Compare Output Mode 1C, bits" icon=""/>
604 <bitfield name="WGM1" mask="0x03" text="Waveform Generation Mode Bits" icon=""/>
605 </reg>
606 <reg size="1" name="TCCR1B" offset="0x4E" text="Timer/Counter1 Control Register B" icon="io_flag.bmp">
607 <bitfield name="ICNC1" mask="0x80" text="Input Capture 1 Noise Canceler" icon=""/>
608 <bitfield name="ICES1" mask="0x40" text="Input Capture 1 Edge Select" icon=""/>
609 <bitfield name="WGM1" mask="0x18" text="Waveform Generation Mode" icon="" lsb="2"/>
610 <bitfield name="CS1" mask="0x07" text="Clock Select1 bits" icon="" enum="CLK_SEL_3BIT_EXT"/>
611 </reg>
612 <reg size="1" name="TCCR1C" offset="0x7A" text="Timer/Counter1 Control Register C" icon="io_flag.bmp">
613 <bitfield name="FOC1A" mask="0x80" text="Force Output Compare for channel A" icon=""/>
614 <bitfield name="FOC1B" mask="0x40" text="Force Output Compare for channel B" icon=""/>
615 <bitfield name="FOC1C" mask="0x20" text="Force Output Compare for channel C" icon=""/>
616 </reg>
617 <reg size="2" name="TCNT1" offset="0x4C" text="Timer/Counter1 Bytes" icon="io_timer.bmp" mask="0xFFFF"/>
618 <reg size="2" name="OCR1A" offset="0x4A" text="Timer/Counter1 Outbut Compare Register Bytes" icon="io_timer.bmp" mask="0xFFFF"/>
619 <reg size="2" name="OCR1B" offset="0x48" text="Timer/Counter1 Output Compare Register Bytes" icon="io_timer.bmp" mask="0xFFFF"/>
620 <reg size="2" name="OCR1C" offset="0x78" text="Timer/Counter1 Output Compare Register Bytes" icon="io_timer.bmp" mask="0xFFFF"/>
621 <reg size="2" name="ICR1" offset="0x46" text="Timer/Counter1 Input Capture Register Bytes" icon="io_timer.bmp" mask="0xFFFF"/>
622 </registers>
623 </module>
624 <module class="TIMER_COUNTER_2">
625 <registers name="TIMER_COUNTER_2" memspace="DATAMEM" text="" icon="io_timer.bmp">
626 <reg size="1" name="TCCR2" offset="0x45" text="Timer/Counter Control Register" icon="io_flag.bmp">
627 <bitfield name="FOC2" mask="0x80" text="Force Output Compare" icon=""/>
628 <bitfield name="WGM20" mask="0x40" text="Wafeform Generation Mode" icon="" enum="WAVEFORM_GEN_MODE"/>
629 <bitfield name="COM2" mask="0x30" text="Compare Match Output Mode" icon=""/>
630 <bitfield name="WGM21" mask="0x08" text="Waveform Generation Mode" icon=""/>
631 <bitfield name="CS2" mask="0x07" text="Clock Select" icon="" enum="CLK_SEL_3BIT_EXT"/>
632 </reg>
633 <reg size="1" name="TCNT2" offset="0x44" text="Timer/Counter Register" icon="io_timer.bmp" mask="0xFF"/>
634 <reg size="1" name="OCR2" offset="0x43" text="Output Compare Register" icon="io_timer.bmp" mask="0xFF"/>
635 <reg size="1" name="TIFR" offset="0x56" text="Timer/Counter Interrupt Flag Register" icon="io_flag.bmp">
636 <bitfield name="OCF2" mask="0x80" text="Output Compare Flag 2" icon=""/>
637 <bitfield name="TOV2" mask="0x40" text="Timer/Counter2 Overflow Flag" icon=""/>
638 </reg>
639 <reg size="1" name="TIMSK" offset="0x57" text="" icon="io_flag.bmp">
640 <bitfield name="OCIE2" mask="0x80" text="" icon=""/>
641 <bitfield name="TOIE2" mask="0x40" text="" icon=""/>
642 </reg>
643 </registers>
644 </module>
645 <module class="TIMER_COUNTER_3">
646 <registers name="TIMER_COUNTER_3" memspace="DATAMEM" text="" icon="io_timer.bmp">
647 <reg size="1" name="ETIMSK" offset="0x7D" text="Extended Timer/Counter Interrupt Mask Register" icon="io_flag.bmp">
648 <bitfield name="TICIE3" mask="0x20" text="Timer/Counter3 Input Capture Interrupt Enable" icon=""/>
649 <bitfield name="OCIE3A" mask="0x10" text="Timer/Counter3 Output CompareA Match Interrupt Enable" icon=""/>
650 <bitfield name="OCIE3B" mask="0x08" text="Timer/Counter3 Output CompareB Match Interrupt Enable" icon=""/>
651 <bitfield name="TOIE3" mask="0x04" text="Timer/Counter3 Overflow Interrupt Enable" icon=""/>
652 <bitfield name="OCIE3C" mask="0x02" text="Timer/Counter3, Output Compare Match Interrupt Enable" icon=""/>
653 </reg>
654 <reg size="1" name="ETIFR" offset="0x7C" text="Extended Timer/Counter Interrupt Flag register" icon="io_flag.bmp">
655 <bitfield name="ICF3" mask="0x20" text="Input Capture Flag 1" icon=""/>
656 <bitfield name="OCF3A" mask="0x10" text="Output Compare Flag 1A" icon=""/>
657 <bitfield name="OCF3B" mask="0x08" text="Output Compare Flag 1B" icon=""/>
658 <bitfield name="TOV3" mask="0x04" text="Timer/Counter3 Overflow Flag" icon=""/>
659 <bitfield name="OCF3C" mask="0x02" text="Timer/Counter3 Output Compare C Match Flag" icon=""/>
660 </reg>
661 <reg size="1" name="SFIOR" offset="0x40" text="Special Function IO Register" icon="io_cpu.bmp">
662 <bitfield name="TSM" mask="0x80" text="Timer/Counter Synchronization Mode" icon=""/>
663 <bitfield name="PSR321" mask="0x01" text="Prescaler Reset, T/C3, T/C2, T/C1" icon=""/>
664 </reg>
665 <reg size="1" name="TCCR3A" offset="0x8B" text="Timer/Counter3 Control Register A" icon="io_flag.bmp">
666 <bitfield name="COM3A" mask="0xC0" text="Compare Output Mode 3A, bits" icon=""/>
667 <bitfield name="COM3B" mask="0x30" text="Compare Output Mode 3B, bits" icon=""/>
668 <bitfield name="COM3C" mask="0x0C" text="Compare Output Mode 3C, bits" icon=""/>
669 <bitfield name="WGM3" mask="0x03" text="Waveform Generation Mode Bits" icon=""/>
670 </reg>
671 <reg size="1" name="TCCR3B" offset="0x8A" text="Timer/Counter3 Control Register B" icon="io_flag.bmp">
672 <bitfield name="ICNC3" mask="0x80" text="Input Capture 3 Noise Canceler" icon=""/>
673 <bitfield name="ICES3" mask="0x40" text="Input Capture 3 Edge Select" icon=""/>
674 <bitfield name="WGM3" mask="0x18" text="Waveform Generation Mode" icon="" lsb="2"/>
675 <bitfield name="CS3" mask="0x07" text="Clock Select3 bits" icon="" enum="CLK_SEL_3BIT_EXT"/>
676 </reg>
677 <reg size="1" name="TCCR3C" offset="0x8C" text="Timer/Counter3 Control Register C" icon="io_flag.bmp">
678 <bitfield name="FOC3A" mask="0x80" text="Force Output Compare for channel A" icon=""/>
679 <bitfield name="FOC3B" mask="0x40" text="Force Output Compare for channel B" icon=""/>
680 <bitfield name="FOC3C" mask="0x20" text="Force Output Compare for channel C" icon=""/>
681 </reg>
682 <reg size="2" name="TCNT3" offset="0x88" text="Timer/Counter3 Bytes" icon="io_timer.bmp" mask="0xFFFF"/>
683 <reg size="2" name="OCR3A" offset="0x86" text="Timer/Counter3 Outbut Compare Register A Bytes" icon="io_timer.bmp" mask="0xFFFF"/>
684 <reg size="2" name="OCR3B" offset="0x84" text="Timer/Counter3 Output Compare Register B Bytes" icon="io_timer.bmp" mask="0xFFFF"/>
685 <reg size="2" name="OCR3C" offset="0x82" text="Timer/Counter3 Output compare Register C Bytes" icon="io_timer.bmp" mask="0xFFFF"/>
686 <reg size="2" name="ICR3" offset="0x80" text="Timer/Counter3 Input Capture Register Bytes" icon="io_timer.bmp" mask="0xFFFF"/>
687 </registers>
688 </module>
689 <module class="WATCHDOG">
690 <registers name="WATCHDOG" memspace="DATAMEM" text="" icon="io_watch.bmp">
691 <reg size="1" name="WDTCR" offset="0x41" text="Watchdog Timer Control Register" icon="io_flag.bmp">
692 <bitfield name="WDCE" mask="0x10" text="Watchdog Change Enable" icon=""/>
693 <bitfield name="WDE" mask="0x08" text="Watch Dog Enable" icon=""/>
694 <bitfield name="WDP" mask="0x07" text="Watch Dog Timer Prescaler bits" icon="" enum="WDOG_TIMER_PRESCALE_3BITS"/>
695 </reg>
696 </registers>
697 </module>
698 <module class="AD_CONVERTER">
699 <registers name="AD_CONVERTER" memspace="DATAMEM" text="" icon="io_analo.bmp">
700 <reg size="1" name="ADMUX" offset="0x27" text="The ADC multiplexer Selection Register" icon="io_analo.bmp">
701 <bitfield name="REFS" mask="0xC0" text="Reference Selection Bits" icon="" enum="ANALOG_ADC_V_REF2"/>
702 <bitfield name="ADLAR" mask="0x20" text="Left Adjust Result" icon=""/>
703 <bitfield name="MUX" mask="0x1F" text="Analog Channel and Gain Selection Bits" icon=""/>
704 </reg>
705 <reg size="1" name="ADCSRA" offset="0x26" text="The ADC Control and Status register" icon="io_flag.bmp">
706 <bitfield name="ADEN" mask="0x80" text="ADC Enable" icon=""/>
707 <bitfield name="ADSC" mask="0x40" text="ADC Start Conversion" icon=""/>
708 <bitfield name="ADFR" mask="0x20" text="ADC Free Running Select" icon=""/>
709 <bitfield name="ADIF" mask="0x10" text="ADC Interrupt Flag" icon=""/>
710 <bitfield name="ADIE" mask="0x08" text="ADC Interrupt Enable" icon=""/>
711 <bitfield name="ADPS" mask="0x07" text="ADC Prescaler Select Bits" icon="" enum="ANALIG_ADC_PRESCALER"/>
712 </reg>
713 <reg size="2" name="ADC" offset="0x24" text="ADC Data Register Bytes" icon="io_analo.bmp" mask="0xFFFF"/>
714 </registers>
715 </module>
716 </hardware>
717 </device>