Devices are printed in a pretty way.
[avr-sim.git] / devices / attiny461
blob46f6c87ab1d7e88e38869e5c664c3c87a01d6f0a
1 <?xml version="1.0"?>
2 <!DOCTYPE device SYSTEM "device.dtd">
3 <device>
4 <packages>
5 <package name="PDIP" pins="20">
6 <pin id="1" name="[MOSI:DI:SDA:'OC1A:PCINT8:PB0]">DI: Data input in USI 3-wire mode. USI 3-wire mode does not override normal port functions., so pin must be configure as an input. SDA: Serial data in USI 2-wire mode. Serial data pin is bi-directional and uses open-col-lector output. The SDA pin is enabled by setting the pin as an output. The pin is pulled low when the PORTB0 or USI shiftregister is zero when DDB0 is set (one). Pull-up is disabled in USI 2-wire mode. OC1A: Inverted Timer/Counter1 PWM Output A: The PB0 pin can serve as an Inverted output for the PWM mode if not used in programming or USI. The PB0 pin has to be configured as an output (DDB0 set (one)) to serve this function. For further reading on PCINT0 please refer to the man</pin>
7 <pin id="2" name="[MISO:DO:OC1A:PCINT9:PB1]">DO: Data output in USI 3-wire mode. Data output (DO) overrides PORTB1 value and it is driven to the port when the data direction bit DDB1 is set (one). However the PORTB1 bit still controls the pullup, enabling pullup if direction is input and PORTB1 is set(one). OC1A: Output compare match output: The PB1 pin can serve as an output for the Timer/Counter1 compare match A. The PB1 pin has to be configured as an output (DDB3 set (one)) to serve this function. The OC1B pin is also the output pin for the PWM mode timer function if not used in programming or USI. PCINT0: Pin Change Interrupt 0 pin. Pin change interrupt is enabled on pin when global interrupt is enabled, pin change interrupt is enabled and the alternate functions do not mask the interrupt. The masking alternate functions are the output compare match out-put OC1A and data output DO in USI 3-wire mode. Digital input is enabled on pin PB4 also in SLEEP modes, if the pin change interrupt is enabled and not masked by the alternate functi</pin>
8 <pin id="3" name="[SCK:USCK:SCL:'OC1B:PCINT10:PB2]">SCK: Clock input or output in USI 3-wire mode. When the SPI is enabled this pin is con-figured</pin>
9 <pin id="4" name="[OC1B:PCINT11:PB3]">OC1B: Output compare match output: The PB3 pin can serve as an output for the Timer/Counter1 compare match B. The PB3 pin has to be configured as an output (DDB3 set (one)) to serve this function. The OC1B pin is also the output pin for the PWM mode. PCINT0: Pin Change Interrupt 0 pin. Pin change interrupt is enabled on pin when global interrupt is enabled, pin change interrupt is enabled and the alternate functions do not mask the interrupt. The masking alternate function is the output compare match output OC1B. Digital input is enabled on pin PB3 also in SLEEP modes, if the pin change interrupt is enabled and not masked by the alternate functi</pin>
10 <pin id="5" name="[VCC]"/>
11 <pin id="6" name="[GND]"/>
12 <pin id="7" name="[ADC7:XTAL1:PCINT12:'OC1D:CLKI:PB4]">ADC7: ADC input channel 7. Configure the port pins as inputs with the internal pull-ups switched off to avoid the digital port function from interfering with the function of the ana-log to digital converter. XTAL1: Chip clock oscillator pin 1. Used for all chip clock sources except internal cali-brateble RC oscillator and PLL clock. When used as a clock pin, the pin can not be used as an I/O pin. When using internal calibratable RC oscillator or PLL clock as chip clock sources, PB4 serves as an ordinary I/O pin. PCINT1: Pin Change Interrupt 1 pin. Pin change interrupt is enabled on pin when global interrupt is enabled, pin change interrupt is enabled and the alternate functions do not mask the interrupt. The masking alternate functions are the XTAL1 inputs. Digital input is enabled on pin PB4 also in SLEEP modes, if the pin change interrupt is enabled and not masked by the alternate functi</pin>
13 <pin id="8" name="[ADC8:XTAL2:PCINT13:OC1D:CKLO:PB5]">ADC8: ADC input channel 8. Configure the port pins as inputs with the internal pull-ups switched off to avoid the digital port function from interfering with the function of the ana-log to digital converter. XTAL2: Chip clock oscillator pin 2. Used as clock pin for all chip clock sources except internal calibrateble RC oscillator, external clock and PLL clock. When used as a clock pin, the pin can not be used as an I/O pin. When using internal calibratable RC oscillator, external clock or PLL clock as chip clock sources, PB5 serves as an ordinary I/O pin. PCINT1: Pin Change Interrupt 1 pin. Pin change interrupt is enabled on pin when global interrupt is enabled, pin change interrupt is enabled and the alternate functions do not mask the interrupt. The masking alternate functions are the XTAL2 outputs. Digital input is enabled on pin PB5 also in SLEEP modes, if the pin change interrupt is enabled and not masked by the alternate functio</pin>
14 <pin id="9" name="[ADC9:INT0:T0:PCINT14:PB6]">ADC9: ADC input channel 9. Configure the port pins as inputs with the internal pull-ups switched off to avoid the digital port function from interfering with the function of the analog to digital converter. INT0: External Interrupt source 0: The PB6 pin can serve as an external interrupt source enabled by setting (one) the bit INT0 in the general input mask register (GIMSK). T0: Timer/Counter0 External Counter Clock Input is enabled by setting (one) the bits CS02 and CS01 in the Timer/Counter0 control register (TCCR0). PCINT1: Pin Change Interrupt 1 pin. Pin change interrupt is enabled on pin when global interrupt is enabled, pin change interrupt is enabled and the alternate functions do not mask the interrupt. The masking alternate functions are the external low level Interrupt source 0 (INT0) and the Timer/Counter0 external counter clock input (T0). Digital input is enabled on pin PB6 also in SLEEP modes, if the pin change interrupt is enabled and not masked by the alternate func</pin>
15 <pin id="10" name="[ADC10:'RESET:PCINT15:PB7]">ADC10: ADC input channel 10. Configure the port pins as inputs with the internal pull-ups switched off to avoid the digital port function from interfering with the function of the analog to digital converter. RESET: External Reset Input is active low and enabled by unprogramming (“1”) the RSTDISBL fuse. Pullup is activated and output driver and digital input are deactivated when the pin is used as the RESET pin. PCINT1: Pin Change Interrupt 1 pin. Pin change interrupt is enabled on pin when global interrupt is enabled, pin change interrupt is enabled and the alternate function do not mask the interrupt. The masking alternate function is the pin usage as RESET. Digital input is enabled on pin PB7 also in SLEEP modes, if the pin change interrupt is enabled and not masked by the alternate func</pin>
16 <pin id="11" name="[ADC6:AIN1:PCINT7:PA7]">AIN1: Analog Comparator Negative Input and ADC6: ADC input channel 6. Configure the port pin as input with the internal pull-up switched off to avoid the digital port function from interfering with the function of the analog comparator or analog to digital converter. PCINT1: Pin Change Interrupt 1 pin. Pin change interrupt is enabled on pin when global interrupt is enabled, pin change interrupt is enabled and the alternate function do not mask the interrupt. The masking alternate function is the analog comparator.Digital input is enabled on pin PA7 also in SLEEP modes, if the pin change interrupt is enabled and not masked by the alternate functi</pin>
17 <pin id="12" name="[ADC5:AIN0:PCINT6:PA6]">AIN0: Analog Comparator Positive Input and ADC5: ADC input channel 5. Configure the port pin as input with the internal pull-up switched off to avoid the digital port function from interfering with the function of the analog comparator or analog to digital converter. PCINT1: Pin Change Interrupt 1 pin. Pin change interrupt is enabled on pin when global interrupt is enabled, pin change interrupt is enabled and the alternate function do not mask the interrupt. The masking alternate function is the analog comparator.Digital input is enabled on pin PA6 also in SLEEP modes, if the pin change interrupt is enabled and not masked by the alternate funct</pin>
18 <pin id="13" name="[ADC4:AIN2:PCINT5:PA5]">ADC4/ADC3: ADC input channel 4 and 3. Configure the port pins as inputs with the internal pull-ups switched off to avoid the digital port function from interfering with the function of the analog to digital converter.</pin>
19 <pin id="14" name="[ADC3:ICP0:PCINT4:PA4]">ADC4/ADC3: ADC input channel 4 and 3. Configure the port pins as inputs with the internal pull-ups switched off to avoid the digital port function from interfering with the function of the analog to digital converter.</pin>
20 <pin id="15" name="[AVCC]"/>
21 <pin id="16" name="[AGND]"/>
22 <pin id="17" name="[AREF:PCINT3:PA3]">AREF: External reference for ADC. Pullup and output driver are disabled on PA3 when the pin is used as an external reference or Internal Voltage Reference (2.56V) with external capacitor at the AREF pin by setting (one) the bit REFS0 in the ADC Multiplexer Selection Register (ADMUX). PCINT1: Pin Change Interrupt 1 pin. Pin change interrupt is enabled on pin when global interrupt is enabled, pin change interrupt is enabled and the alternate function do not mask the interrupt. The masking alternate function is the pin usage as an analog refer-ence for the ADC. Digital input is enabled on pin PA3 also in SLEEP modes, if the pin change interrupt is enabled and not masked by the alternate function. Please refer to the manual for further detail</pin>
23 <pin id="18" name="[ADC2:INT1:USCK:SCL:PCINT2:PA2]"/>
24 <pin id="19" name="[ADC1:DO:PCINT1:PA1]"/>
25 <pin id="20" name="[ADC0:DI:SDA:PCINT0:PA0]"/>
26 </package>
27 </packages>
28 <interrupts num="19">
29 <interrupt vector="1" address="$000" name="RESET">External Reset, Power-on Reset and Watchdog Reset</interrupt>
30 <interrupt vector="2" address="$001" name="INT0">External Interrupt 0</interrupt>
31 <interrupt vector="3" address="$002" name="PCINT">Pin Change Interrupt</interrupt>
32 <interrupt vector="4" address="$003" name="TIMER1_COMPA">Timer/Counter1 Compare Match 1A</interrupt>
33 <interrupt vector="5" address="$004" name="TIMER1_COMPB">Timer/Counter1 Compare Match 1B</interrupt>
34 <interrupt vector="6" address="$005" name="TIMER1_OVF">Timer/Counter1 Overflow</interrupt>
35 <interrupt vector="7" address="$006" name="TIMER0_OVF">Timer/Counter0 Overflow</interrupt>
36 <interrupt vector="8" address="$007" name="USI_START">USI Start</interrupt>
37 <interrupt vector="9" address="$008" name="USI_OVF">USI Overflow</interrupt>
38 <interrupt vector="10" address="$009" name="EE_RDY">EEPROM Ready</interrupt>
39 <interrupt vector="11" address="$00A" name="ANA_COMP">Analog Comparator</interrupt>
40 <interrupt vector="12" address="$00B" name="ADC">ADC Conversion Complete</interrupt>
41 <interrupt vector="13" address="$00C" name="WDT">Watchdog Time-Out</interrupt>
42 <interrupt vector="14" address="$00D" name="INT1">External Interrupt 1</interrupt>
43 <interrupt vector="15" address="$00E" name="TIMER0_COMPA">Timer/Counter0 Compare Match A</interrupt>
44 <interrupt vector="16" address="$00F" name="TIMER0_COMPB">Timer/Counter0 Compare Match B</interrupt>
45 <interrupt vector="17" address="$010" name="TIMER0_CAPT">ADC Conversion Complete</interrupt>
46 <interrupt vector="18" address="$011" name="TIMER1_COMPD">Timer/Counter1 Compare Match D</interrupt>
47 <interrupt vector="19" address="$012" name="FAULT_PROTECTION">Timer/Counter1 Fault Protection</interrupt>
48 </interrupts>
49 <memory>
50 <flash size="4096"/>
51 <iospace start="$20" stop="$5F"/>
52 <sram size="256"/>
53 <eram size="0"/>
54 </memory>
55 <ioregisters>
56 <ioreg name="TCCR1E" address="$00"/>
57 <ioreg name="DIDR0" address="$01"/>
58 <ioreg name="DIDR1" address="$02"/>
59 <ioreg name="ADCSRB" address="$03"/>
60 <ioreg name="ADCL" address="$04"/>
61 <ioreg name="ADCH" address="$05"/>
62 <ioreg name="ADCSRA" address="$06"/>
63 <ioreg name="ADMUX" address="$07"/>
64 <ioreg name="ACSRA" address="$08"/>
65 <ioreg name="ACSRB" address="$09"/>
66 <ioreg name="GPIOR0" address="$0A"/>
67 <ioreg name="GPIOR1" address="$0B"/>
68 <ioreg name="GPIOR2" address="$0C"/>
69 <ioreg name="USICR" address="$0D"/>
70 <ioreg name="USISR" address="$0E"/>
71 <ioreg name="USIDR" address="$0F"/>
72 <ioreg name="USIBR" address="$10"/>
73 <ioreg name="USIPP" address="$11"/>
74 <ioreg name="OCR0B" address="$12"/>
75 <ioreg name="OCR0A" address="$13"/>
76 <ioreg name="TCNT0H" address="$14"/>
77 <ioreg name="TCCR0A" address="$15"/>
78 <ioreg name="PINB" address="$16"/>
79 <ioreg name="DDRB" address="$17"/>
80 <ioreg name="PORTB" address="$18"/>
81 <ioreg name="PINA" address="$19"/>
82 <ioreg name="DDRA" address="$1A"/>
83 <ioreg name="PORTA" address="$1B"/>
84 <ioreg name="EECR" address="$1C"/>
85 <ioreg name="EEDR" address="$1D"/>
86 <ioreg name="EEARL" address="$1E"/>
87 <ioreg name="EEARH" address="$1F"/>
88 <ioreg name="DWDR" address="$20"/>
89 <ioreg name="WDTCR" address="$21"/>
90 <ioreg name="PCMSK1" address="$22"/>
91 <ioreg name="PCMSK0" address="$23"/>
92 <ioreg name="DT1" address="$24"/>
93 <ioreg name="TC1H" address="$25"/>
94 <ioreg name="TCCR1D" address="$26"/>
95 <ioreg name="TCCR1C" address="$27"/>
96 <ioreg name="CLKPR" address="$28"/>
97 <ioreg name="PLLCSR" address="$29"/>
98 <ioreg name="OCR1D" address="$2A"/>
99 <ioreg name="OCR1C" address="$2B"/>
100 <ioreg name="OCR1B" address="$2C"/>
101 <ioreg name="OCR1A" address="$2D"/>
102 <ioreg name="TCNT1" address="$2E"/>
103 <ioreg name="TCCR1B" address="$2F"/>
104 <ioreg name="TCCR1A" address="$30"/>
105 <ioreg name="OSCCAL" address="$31"/>
106 <ioreg name="TCNT0L" address="$32"/>
107 <ioreg name="TCCR0B" address="$33"/>
108 <ioreg name="MCUSR" address="$34"/>
109 <ioreg name="MCUCR" address="$35"/>
110 <ioreg name="PRR" address="$36"/>
111 <ioreg name="SPMCSR" address="$37"/>
112 <ioreg name="TIFR" address="$38"/>
113 <ioreg name="TIMSK" address="$39"/>
114 <ioreg name="GIFR" address="$3A"/>
115 <ioreg name="GIMSK" address="$3B"/>
116 <ioreg name="SPL" address="$3D"/>
117 <ioreg name="SPH" address="$3E"/>
118 <ioreg name="SREG" address="$3F"/>
119 </ioregisters>
120 <hardware>
121 <!--Everything after this needs editing!!!-->
122 <module class="FUSE">
123 <registers name="FUSE" memspace="FUSE">
124 <reg size="1" name="EXTENDED" offset="0x02">
125 <bitfield name="SELFPRGEN" mask="0x01" text="Self Programming enable" icon=""/>
126 </reg>
127 <reg size="1" name="HIGH" offset="0x01">
128 <bitfield name="RSTDISBL" mask="0x80" text="Reset Disabled (Enable PB7 as i/o pin)" icon=""/>
129 <bitfield name="DWEN" mask="0x40" text="Debug Wire enable" icon=""/>
130 <bitfield name="SPIEN" mask="0x20" text="Serial program downloading (SPI) enabled" icon=""/>
131 <bitfield name="WDTON" mask="0x10" text="Watch-dog Timer always on" icon=""/>
132 <bitfield name="EESAVE" mask="0x08" text="Preserve EEPROM through the Chip Erase cycle" icon=""/>
133 <bitfield name="BODLEVEL" mask="0x07" text="Brown-out Detector trigger level" icon="" enum="ENUM_BODLEVEL"/>
134 </reg>
135 <reg size="1" name="LOW" offset="0x00">
136 <bitfield name="CKDIV8" mask="0x80" text="Divide clock by 8 internally" icon=""/>
137 <bitfield name="CKOUT" mask="0x40" text="Clock output on PORTB5" icon=""/>
138 <bitfield name="SUT_CKSEL" mask="0x3F" text="Select Clock source" icon="" enum="ENUM_SUT_CKSEL"/>
139 </reg>
140 </registers>
141 </module>
142 <module class="LOCKBIT">
143 <registers name="LOCKBIT" memspace="LOCKBIT">
144 <reg size="1" name="LOCKBIT" offset="0x00">
145 <bitfield name="LB" mask="0x03" text="Memory Lock" icon="" enum="ENUM_LB"/>
146 </reg>
147 </registers>
148 </module>
149 <module class="PORTA">
150 <registers name="PORTA" memspace="DATAMEM" text="" icon="io_port.bmp">
151 <reg size="1" name="PORTA" offset="0x3B" text="Port A Data Register" icon="io_port.bmp" mask="0xFF"/>
152 <reg size="1" name="DDRA" offset="0x3A" text="Port A Data Direction Register" icon="io_flag.bmp" mask="0xFF"/>
153 <reg size="1" name="PINA" offset="0x39" text="Port A Input Pins" icon="io_port.bmp" mask="0xFF"/>
154 </registers>
155 </module>
156 <module class="PORTB">
157 <registers name="PORTB" memspace="DATAMEM" text="" icon="io_port.bmp">
158 <reg size="1" name="PORTB" offset="0x38" text="Port B Data Register" icon="io_port.bmp" mask="0xFF"/>
159 <reg size="1" name="DDRB" offset="0x37" text="Port B Data Direction Register" icon="io_flag.bmp" mask="0xFF"/>
160 <reg size="1" name="PINB" offset="0x36" text="Port B Input Pins" icon="io_port.bmp" mask="0xFF"/>
161 </registers>
162 </module>
163 <module class="AD_CONVERTER">
164 <registers name="AD_CONVERTER" memspace="DATAMEM" text="" icon="io_analo.bmp">
165 <reg size="1" name="ADMUX" offset="0x27" text="The ADC multiplexer Selection Register" icon="io_analo.bmp">
166 <bitfield name="REFS" mask="0xC0" text="Reference Selection Bits" icon=""/>
167 <bitfield name="ADLAR" mask="0x20" text="Left Adjust Result" icon=""/>
168 <bitfield name="MUX" mask="0x1F" text="Analog Channel and Gain Selection Bits" icon=""/>
169 </reg>
170 <reg size="1" name="ADCSRA" offset="0x26" text="The ADC Control and Status register" icon="io_flag.bmp">
171 <bitfield name="ADEN" mask="0x80" text="ADC Enable" icon=""/>
172 <bitfield name="ADSC" mask="0x40" text="ADC Start Conversion" icon=""/>
173 <bitfield name="ADATE" mask="0x20" text="ADC Auto Trigger Enable" icon=""/>
174 <bitfield name="ADIF" mask="0x10" text="ADC Interrupt Flag" icon=""/>
175 <bitfield name="ADIE" mask="0x08" text="ADC Interrupt Enable" icon=""/>
176 <bitfield name="ADPS" mask="0x07" text="ADC Prescaler Select Bits" icon="" enum="ANALIG_ADC_PRESCALER"/>
177 </reg>
178 <reg size="2" name="ADC" offset="0x24" text="ADC Data Register Bytes" icon="io_analo.bmp" mask="0xFFFF"/>
179 <reg size="1" name="ADCSRB" offset="0x23" text="ADC Control and Status Register B" icon="io_analo.bmp">
180 <bitfield name="BIN" mask="0x80" text="Bipolar Input Mode" icon=""/>
181 <bitfield name="GSEL" mask="0x40" text="Gain Select" icon=""/>
182 <bitfield name="IPR" mask="0x20" text="Input Polarity Mode" icon=""/>
183 <bitfield name="REFS2" mask="0x10" text="" icon=""/>
184 <bitfield name="MUX5" mask="0x08" text="" icon=""/>
185 <bitfield name="ADTS" mask="0x07" text="ADC Auto Trigger Sources" icon="" enum="ANALIG_ADC_AUTO_TRIGGER3"/>
186 </reg>
187 <reg size="1" name="DIDR1" offset="0x22" text="Digital Input Disable Register 1" icon="io_analo.bmp">
188 <bitfield name="ADC10D" mask="0x80" text="ADC10 Digital input Disable" icon=""/>
189 <bitfield name="ADC9D" mask="0x40" text="ADC9 Digital input Disable" icon=""/>
190 <bitfield name="ADC8D" mask="0x20" text="ADC8 Digital input Disable" icon=""/>
191 <bitfield name="ADC7D" mask="0x10" text="ADC7 Digital input Disable" icon=""/>
192 </reg>
193 <reg size="1" name="DIDR0" offset="0x21" text="Digital Input Disable Register 0" icon="io_analo.bmp">
194 <bitfield name="ADC6D" mask="0x80" text="ADC6 Digital input Disable" icon=""/>
195 <bitfield name="ADC5D" mask="0x40" text="ADC5 Digital input Disable" icon=""/>
196 <bitfield name="ADC4D" mask="0x20" text="ADC4 Digital input Disable" icon=""/>
197 <bitfield name="ADC3D" mask="0x10" text="ADC3 Digital input Disable" icon=""/>
198 <bitfield name="AREFD" mask="0x08" text="AREF Digital Input Disable" icon=""/>
199 <bitfield name="ADC2D" mask="0x04" text="ADC2 Digital input Disable" icon=""/>
200 <bitfield name="ADC1D" mask="0x02" text="ADC1 Digital input Disable" icon=""/>
201 <bitfield name="ADC0D" mask="0x01" text="ADC0 Digital input Disable" icon=""/>
202 </reg>
203 </registers>
204 </module>
205 <module class="ANALOG_COMPARATOR">
206 <registers name="ANALOG_COMPARATOR" memspace="DATAMEM" text="" icon="io_analo.bmp">
207 <reg size="1" name="ACSRB" offset="0x29" text="Analog Comparator Control And Status Register B" icon="io_analo.bmp">
208 <bitfield name="HSEL" mask="0x80" text="Hysteresis Select" icon=""/>
209 <bitfield name="HLEV" mask="0x40" text="Hysteresis Level" icon=""/>
210 <bitfield name="ACM" mask="0x07" text="Analog Comparator Multiplexer" icon=""/>
211 </reg>
212 <reg size="1" name="ACSRA" offset="0x28" text="Analog Comparator Control And Status Register A" icon="io_analo.bmp">
213 <bitfield name="ACD" mask="0x80" text="Analog Comparator Disable" icon=""/>
214 <bitfield name="ACBG" mask="0x40" text="Analog Comparator Bandgap Select" icon=""/>
215 <bitfield name="ACO" mask="0x20" text="Analog Compare Output" icon=""/>
216 <bitfield name="ACI" mask="0x10" text="Analog Comparator Interrupt Flag" icon=""/>
217 <bitfield name="ACIE" mask="0x08" text="Analog Comparator Interrupt Enable" icon=""/>
218 <bitfield name="ACME" mask="0x04" text="Analog Comparator Multiplexer Enable" icon=""/>
219 <bitfield name="ACIS" mask="0x03" text="Analog Comparator Interrupt Mode Select bits" icon="" enum="ANALOG_COMP_INTERRUPT"/>
220 </reg>
221 </registers>
222 </module>
223 <module class="USI">
224 <registers name="USI" memspace="DATAMEM" text="" icon="io_com.bmp">
225 <reg size="1" name="USIPP" offset="0x31" text="USI Pin Position" icon="io_com.bmp" mask="0x01"/>
226 <reg size="1" name="USIBR" offset="0x30" text="USI Buffer Register" icon="io_com.bmp" mask="0xFF"/>
227 <reg size="1" name="USIDR" offset="0x2F" text="USI Data Register" icon="io_com.bmp" mask="0xFF"/>
228 <reg size="1" name="USISR" offset="0x2E" text="USI Status Register" icon="io_flag.bmp">
229 <bitfield name="USISIF" mask="0x80" text="Start Condition Interrupt Flag" icon=""/>
230 <bitfield name="USIOIF" mask="0x40" text="Counter Overflow Interrupt Flag" icon=""/>
231 <bitfield name="USIPF" mask="0x20" text="Stop Condition Flag" icon=""/>
232 <bitfield name="USIDC" mask="0x10" text="Data Output Collision" icon=""/>
233 <bitfield name="USICNT" mask="0x0F" text="USI Counter Value Bits" icon=""/>
234 </reg>
235 <reg size="1" name="USICR" offset="0x2D" text="USI Control Register" icon="io_flag.bmp">
236 <bitfield name="USISIE" mask="0x80" text="Start Condition Interrupt Enable" icon=""/>
237 <bitfield name="USIOIE" mask="0x40" text="Counter Overflow Interrupt Enable" icon=""/>
238 <bitfield name="USIWM" mask="0x30" text="USI Wire Mode Bits" icon="" enum="COMM_USI_OP"/>
239 <bitfield name="USICS" mask="0x0C" text="USI Clock Source Select Bits" icon=""/>
240 <bitfield name="USICLK" mask="0x02" text="Clock Strobe" icon=""/>
241 <bitfield name="USITC" mask="0x01" text="Toggle Clock Port Pin" icon=""/>
242 </reg>
243 </registers>
244 </module>
245 <module class="EEPROM">
246 <registers name="EEPROM" memspace="DATAMEM" text="" icon="io_cpu.bmp">
247 <reg size="2" name="EEAR" offset="0x3E" text="EEPROM Address Register Bytes" icon="io_cpu.bmp" mask="0x01FF"/>
248 <reg size="1" name="EEDR" offset="0x3D" text="EEPROM Data Register" icon="io_cpu.bmp" mask="0xFF"/>
249 <reg size="1" name="EECR" offset="0x3C" text="EEPROM Control Register" icon="io_flag.bmp">
250 <bitfield name="EEPM" mask="0x30" text="EEPROM Programming Mode Bits" icon="" enum="EEP_MODE"/>
251 <bitfield name="EERIE" mask="0x08" text="EEPROM Ready Interrupt Enable" icon=""/>
252 <bitfield name="EEMPE" mask="0x04" text="EEPROM Master Write Enable" icon=""/>
253 <bitfield name="EEPE" mask="0x02" text="EEPROM Write Enable" icon=""/>
254 <bitfield name="EERE" mask="0x01" text="EEPROM Read Enable" icon=""/>
255 </reg>
256 </registers>
257 </module>
258 <module class="WATCHDOG">
259 <registers name="WATCHDOG" memspace="DATAMEM" text="" icon="io_watch.bmp">
260 <reg size="1" name="WDTCR" offset="0x41" text="Watchdog Timer Control Register" icon="io_flag.bmp">
261 <bitfield name="WDIF" mask="0x80" text="Watchdog Timeout Interrupt Flag" icon=""/>
262 <bitfield name="WDIE" mask="0x40" text="Watchdog Timeout Interrupt Enable" icon=""/>
263 <bitfield name="WDP" mask="0x27" text="Watchdog Timer Prescaler Bits" icon="" enum="WDOG_TIMER_PRESCALE_4BITS"/>
264 <bitfield name="WDCE" mask="0x10" text="Watchdog Change Enable" icon=""/>
265 <bitfield name="WDE" mask="0x08" text="Watch Dog Enable" icon=""/>
266 </reg>
267 </registers>
268 </module>
269 <module class="TIMER_COUNTER_0">
270 <registers name="TIMER_COUNTER_0" memspace="DATAMEM" text="" icon="io_timer.bmp">
271 <reg size="1" name="TIMSK" offset="0x59" text="Timer/Counter Interrupt Mask Register" icon="io_flag.bmp">
272 <bitfield name="OCIE0A" mask="0x10" text="Timer/Counter0 Output Compare Match A Interrupt Enable" icon=""/>
273 <bitfield name="OCIE0B" mask="0x08" text="Timer/Counter0 Output Compare Match B Interrupt Enable" icon=""/>
274 <bitfield name="TOIE0" mask="0x02" text="Timer/Counter0 Overflow Interrupt Enable" icon=""/>
275 <bitfield name="TICIE0" mask="0x01" text="Timer/Counter0 Input Capture Interrupt Enable" icon=""/>
276 </reg>
277 <reg size="1" name="TIFR" offset="0x58" text="Timer/Counter0 Interrupt Flag register" icon="io_flag.bmp">
278 <bitfield name="OCF0A" mask="0x10" text="Timer/Counter0 Output Compare Flag 0A" icon=""/>
279 <bitfield name="OCF0B" mask="0x08" text="Timer/Counter0 Output Compare Flag 0B" icon=""/>
280 <bitfield name="TOV0" mask="0x02" text="Timer/Counter0 Overflow Flag" icon=""/>
281 <bitfield name="ICF0" mask="0x01" text="Timer/Counter0 Input Capture Flag" icon=""/>
282 </reg>
283 <reg size="1" name="TCCR0A" offset="0x35" text="Timer/Counter Control Register A" icon="io_flag.bmp">
284 <bitfield name="TCW0" mask="0x80" text="Timer/Counter 0 Width" icon=""/>
285 <bitfield name="ICEN0" mask="0x40" text="Input Capture Mode Enable" icon=""/>
286 <bitfield name="ICNC0" mask="0x20" text="Input Capture Noice Canceler" icon=""/>
287 <bitfield name="ICES0" mask="0x10" text="Input Capture Edge Select" icon=""/>
288 <bitfield name="ACIC0" mask="0x08" text="Analog Comparator Input Capture Enable" icon=""/>
289 <bitfield name="WGM00" mask="0x01" text="Waveform Generation Mode" icon=""/>
290 </reg>
291 <reg size="1" name="TCCR0B" offset="0x53" text="Timer/Counter Control Register B" icon="io_flag.bmp">
292 <bitfield name="TSM" mask="0x10" text="Timer/Counter Synchronization Mode" icon=""/>
293 <bitfield name="PSR0" mask="0x08" text="Timer/Counter 0 Prescaler Reset" icon=""/>
294 <bitfield name="CS0" mask="0x07" text="Clock Select" icon="" enum="CLK_SEL_3BIT_EXT"/>
295 </reg>
296 <reg size="1" name="TCNT0H" offset="0x34" text="Timer/Counter0 High" icon="io_timer.bmp" mask="0xFF"/>
297 <reg size="1" name="TCNT0L" offset="0x52" text="Timer/Counter0 Low" icon="io_timer.bmp" mask="0xFF"/>
298 <reg size="1" name="OCR0A" offset="0x33" text="Timer/Counter0 Output Compare Register" icon="io_timer.bmp" mask="0xFF"/>
299 <reg size="1" name="OCR0B" offset="0x32" text="Timer/Counter0 Output Compare Register" icon="io_timer.bmp" mask="0xFF"/>
300 </registers>
301 </module>
302 <module class="TIMER_COUNTER_1">
303 <registers name="TIMER_COUNTER_1" memspace="DATAMEM" text="" icon="io_timer.bmp">
304 <reg size="1" name="TCCR1A" offset="0x50" text="Timer/Counter Control Register A" icon="io_flag.bmp">
305 <bitfield name="COM1A" mask="0xC0" text="Compare Output Mode, Bits" icon=""/>
306 <bitfield name="COM1B" mask="0x30" text="Compare Output Mode, Bits" icon=""/>
307 <bitfield name="FOC1A" mask="0x08" text="Force Output Compare Match 1A" icon=""/>
308 <bitfield name="FOC1B" mask="0x04" text="Force Output Compare Match 1B" icon=""/>
309 <bitfield name="PWM1A" mask="0x02" text="Pulse Width Modulator Enable" icon=""/>
310 <bitfield name="PWM1B" mask="0x01" text="Pulse Width Modulator Enable" icon=""/>
311 </reg>
312 <reg size="1" name="TCCR1B" offset="0x4F" text="Timer/Counter Control Register B" icon="io_flag.bmp">
313 <bitfield name="PSR1" mask="0x40" text="Timer/Counter 1 Prescaler reset" icon=""/>
314 <bitfield name="DTPS1" mask="0x30" text="Dead Time Prescaler" icon="" enum="MISC_2BIT_SCALE"/>
315 <bitfield name="CS1" mask="0x0F" text="Clock Select Bits" icon="" enum="CLK_SEL_4BIT"/>
316 </reg>
317 <reg size="1" name="TCCR1C" offset="0x47" text="Timer/Counter Control Register C" icon="io_flag.bmp">
318 <bitfield name="COM1A1S" mask="0x80" text="COM1A1 Shadow Bit" icon=""/>
319 <bitfield name="COM1A0S" mask="0x40" text="COM1A0 Shadow Bit" icon=""/>
320 <bitfield name="COM1B1S" mask="0x20" text="COM1B1 Shadow Bit" icon=""/>
321 <bitfield name="COM1B0S" mask="0x10" text="COM1B0 Shadow Bit" icon=""/>
322 <bitfield name="COM1D" mask="0x0C" text="Comparator D output mode" icon=""/>
323 <bitfield name="FOC1D" mask="0x02" text="Force Output Compare Match 1D" icon=""/>
324 <bitfield name="PWM1D" mask="0x01" text="Pulse Width Modulator D Enable" icon=""/>
325 </reg>
326 <reg size="1" name="TCCR1D" offset="0x46" text="Timer/Counter Control Register D" icon="io_flag.bmp">
327 <bitfield name="FPIE1" mask="0x80" text="Fault Protection Interrupt Enable" icon=""/>
328 <bitfield name="FPEN1" mask="0x40" text="Fault Protection Mode Enable" icon=""/>
329 <bitfield name="FPNC1" mask="0x20" text="Fault Protection Noise Canceler" icon=""/>
330 <bitfield name="FPES1" mask="0x10" text="Fault Protection Edge Select" icon=""/>
331 <bitfield name="FPAC1" mask="0x08" text="Fault Protection Analog Comparator Enable" icon=""/>
332 <bitfield name="FPF1" mask="0x04" text="Fault Protection Interrupt Flag" icon=""/>
333 <bitfield name="WGM1" mask="0x03" text="Waveform Generation Mode Bit" icon="" enum="PULSE_WIDTH_MODU2"/>
334 </reg>
335 <reg size="1" name="TCCR1E" offset="0x20" text="Timer/Counter1 Control Register E" icon="io_flag.bmp">
336 <bitfield name="OC1OE" mask="0x3F" text="Ouput Compare Override Enable Bits" icon=""/>
337 </reg>
338 <reg size="1" name="TCNT1" offset="0x4E" text="Timer/Counter Register" icon="io_timer.bmp" mask="0xFF"/>
339 <reg size="1" name="TC1H" offset="0x45" text="Timer/Counter 1 Register High" icon="io_timer.bmp" mask="0x03"/>
340 <reg size="1" name="OCR1A" offset="0x4D" text="Output Compare Register" icon="io_timer.bmp" mask="0xFF"/>
341 <reg size="1" name="OCR1B" offset="0x4C" text="Output Compare Register" icon="io_timer.bmp" mask="0xFF"/>
342 <reg size="1" name="OCR1C" offset="0x4B" text="Output compare register" icon="io_timer.bmp" mask="0xFF"/>
343 <reg size="1" name="OCR1D" offset="0x4A" text="Output compare register" icon="io_timer.bmp" mask="0xFF"/>
344 <reg size="1" name="TIMSK" offset="0x59" text="Timer/Counter Interrupt Mask Register" icon="io_flag.bmp">
345 <bitfield name="OCIE1D" mask="0x80" text="OCIE1D: Timer/Counter1 Output Compare Interrupt Enable" icon=""/>
346 <bitfield name="OCIE1A" mask="0x40" text="OCIE1A: Timer/Counter1 Output Compare Interrupt Enable" icon=""/>
347 <bitfield name="OCIE1B" mask="0x20" text="OCIE1A: Timer/Counter1 Output Compare B Interrupt Enable" icon=""/>
348 <bitfield name="TOIE1" mask="0x04" text="Timer/Counter1 Overflow Interrupt Enable" icon=""/>
349 </reg>
350 <reg size="1" name="TIFR" offset="0x58" text="Timer/Counter Interrupt Flag Register" icon="io_flag.bmp">
351 <bitfield name="OCF1D" mask="0x80" text="Timer/Counter1 Output Compare Flag 1D" icon=""/>
352 <bitfield name="OCF1A" mask="0x40" text="Timer/Counter1 Output Compare Flag 1A" icon=""/>
353 <bitfield name="OCF1B" mask="0x20" text="Timer/Counter1 Output Compare Flag 1B" icon=""/>
354 <bitfield name="TOV1" mask="0x04" text="Timer/Counter1 Overflow Flag" icon=""/>
355 </reg>
356 <reg size="1" name="DTPS" offset="" text="Dead time prescaler register" icon="io_flag.bmp">
357 <bitfield name="DTPS" mask="0x03" text="" icon=""/>
358 </reg>
359 <reg size="1" name="DT1" offset="0x44" text="Timer/Counter 1 Dead Time Value" icon="io_flag.bmp">
360 <bitfield name="DT1H" mask="0xF0" text="" icon=""/>
361 <bitfield name="DT1L" mask="0x0F" text="" icon=""/>
362 </reg>
363 </registers>
364 </module>
365 <module class="BOOT_LOAD">
366 <registers name="BOOT_LOAD" memspace="DATAMEM" text="" icon="io_cpu.bmp">
367 <reg size="1" name="SPMCSR" offset="0x57" text="Store Program Memory Control Register" icon="io_flag.bmp">
368 <bitfield name="CTPB" mask="0x10" text="Clear temporary page buffer" icon=""/>
369 <bitfield name="RFLB" mask="0x08" text="Read fuse and lock bits" icon=""/>
370 <bitfield name="PGWRT" mask="0x04" text="Page Write" icon=""/>
371 <bitfield name="PGERS" mask="0x02" text="Page Erase" icon=""/>
372 <bitfield name="SPMEN" mask="0x01" text="Store Program Memory Enable" icon=""/>
373 </reg>
374 </registers>
375 </module>
376 <module class="CPU">
377 <registers name="CPU" memspace="DATAMEM" text="" icon="io_cpu.bmp">
378 <reg size="1" name="SREG" offset="0x5F" text="Status Register" icon="io_sreg.bmp">
379 <bitfield name="I" mask="0x80" text="Global Interrupt Enable" icon=""/>
380 <bitfield name="T" mask="0x40" text="Bit Copy Storage" icon=""/>
381 <bitfield name="H" mask="0x20" text="Half Carry Flag" icon=""/>
382 <bitfield name="S" mask="0x10" text="Sign Bit" icon=""/>
383 <bitfield name="V" mask="0x08" text="Two's Complement Overflow Flag" icon=""/>
384 <bitfield name="N" mask="0x04" text="Negative Flag" icon=""/>
385 <bitfield name="Z" mask="0x02" text="Zero Flag" icon=""/>
386 <bitfield name="C" mask="0x01" text="Carry Flag" icon=""/>
387 </reg>
388 <reg size="1" name="PRR" offset="0x56" text="Power Reduction Register" icon="io_sreg.bmp">
389 <bitfield name="PRTIM1" mask="0x08" text="Power Reduction Timer/Counter1" icon=""/>
390 <bitfield name="PRTIM0" mask="0x04" text="Power Reduction Timer/Counter0" icon=""/>
391 <bitfield name="PRUSI" mask="0x02" text="Power Reduction USI" icon=""/>
392 <bitfield name="PRADC" mask="0x01" text="Power Reduction ADC" icon=""/>
393 </reg>
394 <reg size="2" name="SP" offset="0x5D" text="Stack Pointer Bytes" icon="io_sreg.bmp" mask="0x01FF"/>
395 <reg size="1" name="MCUCR" offset="0x55" text="MCU Control Register" icon="io_cpu.bmp">
396 <bitfield name="PUD" mask="0x40" text="Pull-up Disable" icon=""/>
397 <bitfield name="SE" mask="0x20" text="Sleep Enable" icon=""/>
398 <bitfield name="SM" mask="0x18" text="Sleep Mode Select Bits" icon="" enum="CPU_SLEEP_MODE"/>
399 <bitfield name="ISC0" mask="0x03" text="Interrupt Sense Control 0 bits" icon="" enum="INTERRUPT_SENSE_CONTROL2"/>
400 </reg>
401 <reg size="1" name="MCUSR" offset="0x54" text="MCU Status register" icon="io_cpu.bmp">
402 <bitfield name="WDRF" mask="0x08" text="Watchdog Reset Flag" icon=""/>
403 <bitfield name="BORF" mask="0x04" text="Brown-out Reset Flag" icon=""/>
404 <bitfield name="EXTRF" mask="0x02" text="External Reset Flag" icon=""/>
405 <bitfield name="PORF" mask="0x01" text="Power-On Reset Flag" icon=""/>
406 </reg>
407 <reg size="1" name="OSCCAL" offset="0x51" text="Oscillator Calibration Register" icon="io_sreg.bmp" mask="0xFF"/>
408 <reg size="1" name="CLKPR" offset="0x48" text="Clock Prescale Register" icon="io_sreg.bmp">
409 <bitfield name="CLKPCE" mask="0x80" text="Clock Prescaler Change Enable" icon=""/>
410 <bitfield name="CLKPS" mask="0x0F" text="Clock Prescaler Select Bits" icon="" enum="CPU_CLK_PRESCALE_4_BITS_SMALL"/>
411 </reg>
412 <reg size="1" name="PLLCSR" offset="0x49" text="PLL Control and status register" icon="io_sreg.bmp">
413 <bitfield name="LSM" mask="0x80" text="Low speed mode" icon=""/>
414 <bitfield name="PCKE" mask="0x04" text="PCK Enable" icon=""/>
415 <bitfield name="PLLE" mask="0x02" text="PLL Enable" icon=""/>
416 <bitfield name="PLOCK" mask="0x01" text="PLL Lock detector" icon=""/>
417 </reg>
418 <reg size="1" name="DWDR" offset="0x40" text="debugWire data register" icon="io_cpu.bmp" mask="0xFF"/>
419 <reg size="1" name="GPIOR2" offset="0x2C" text="General Purpose IO register 2" icon="io_sreg.bmp" mask="0xFF"/>
420 <reg size="1" name="GPIOR1" offset="0x2B" text="General Purpose register 1" icon="io_sreg.bmp" mask="0xFF"/>
421 <reg size="1" name="GPIOR0" offset="0x2A" text="General purpose register 0" icon="io_sreg.bmp" mask="0xFF"/>
422 </registers>
423 </module>
424 <module class="EXTERNAL_INTERRUPT">
425 <registers name="EXTERNAL_INTERRUPT" memspace="DATAMEM" text="" icon="io_ext.bmp">
426 <reg size="1" name="MCUCR" offset="0x55" text="MCU Control Register" icon="io_cpu.bmp">
427 <bitfield name="ISC01" mask="0x02" text="Interrupt Sense Control 0 Bit 1" icon=""/>
428 <bitfield name="ISC00" mask="0x01" text="Interrupt Sense Control 0 Bit 0" icon="" enum="INTERRUPT_SENSE_CONTROL"/>
429 </reg>
430 <reg size="1" name="GIMSK" offset="0x5B" text="General Interrupt Mask Register" icon="io_flag.bmp">
431 <bitfield name="INT" mask="0xC0" text="External Interrupt Request 1 Enable" icon=""/>
432 <bitfield name="PCIE" mask="0x30" text="Pin Change Interrupt Enables" icon=""/>
433 </reg>
434 <reg size="1" name="GIFR" offset="0x5A" text="General Interrupt Flag register" icon="io_flag.bmp">
435 <bitfield name="INTF" mask="0xC0" text="External Interrupt Flags" icon=""/>
436 <bitfield name="PCIF" mask="0x20" text="Pin Change Interrupt Flag" icon=""/>
437 </reg>
438 <reg size="1" name="PCMSK1" offset="0x42" text="Pin Change Enable Mask 1" icon="io_flag.bmp" mask="0xFF"/>
439 <reg size="1" name="PCMSK0" offset="0x43" text="Pin Change Enable Mask 0" icon="io_flag.bmp" mask="0xFF"/>
440 </registers>
441 </module>
442 </hardware>
443 </device>