Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
SREG | Status Register Akkumulator | 0x3F | 0x5F |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|
I | T | H | S | V | N | Z | C |
Bit | Name | Bedeutung | Möglichkeiten | Befehl |
---|---|---|---|---|
7 | I | Globales Interrupt Flag | 0: Interrupts ausgeschaltet | CLI |
1: Interrupts erlaubt/eingeschaltet | SEI | |||
6 | T | Bitspeicher | 0: Gespeichertes Bit ist 0 | CLT |
1: Gespeichertes Bit ist 1 | SET | |||
5 | H | Halbübertrags-Flag | 0: Kein Halbübertrag aufgetreten | CLH |
1: Halbübertrag aufgetreten | SEH | |||
4 | S | Vorzeichen-Flag | 0: Vorzeichen positiv | CLS |
1: Vorzeichen negativ | SES | |||
3 | V | Zweierkomplement-Übertrags-Flag | 0: Kein Übertrag aufgetreten | CLV |
1: Übertrag aufgetreten | SEV | |||
2 | N | Negativ-Flag | 0: Ergebnis war nicht negativ/kleiner | CLN |
1: Ergebnis war negativ/kleiner | SEN | |||
1 | Z | Null-Flag | 0: Ergebnis war nicht Null/ungleich | CLZ |
1: Ergebnis war Null/gleich | SEZ | |||
0 | C | Übertrags-Flag | 0: Kein Übertrag aufgetreten | CLC |
1: Übertrag aufgetreten | SEC |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
SPL/SPH | Stackpointer | 003D/0x3E | 0x5D/0x5E |
Name | Bedeutung | Verfügbarkeit |
---|---|---|
SPL | Low-Byte des Stackpointers | Ab AT90S2313 aufwärts, nicht bei 1200 |
SPH | High-Byte des Stackpointers | Ab AT90S8515 aufwärts, nur bei Devices mit >256 Byte internem SRAM |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
MCUCR | MCU General Control Register | 0x35 | 0x55 |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|
SRE | SRW | SE | SM | ISC11 | ISC10 | ISC01 | ISC00 |
Bit | Name | Bedeutung | Möglichkeiten |
---|---|---|---|
7 | SRE | Ext.SRAM Enable | 0=Kein externes SRAM angeschlossen |
1=Externes SRAM ansprechen | |||
6 | SRW | Ext.SRAM Wait States | 0=Kein extra Wait Zyklus bei externem SRAM |
1=Zusätzlicher Wait State bei externem SRAM | |||
5 | SE | Sleep Enable | 0=Ignoriere SLEEP Befehl |
1=SLEEP-Befehle befolgen | |||
4 | SM | Sleep Mode | 0=Idle Mode (Halbschlaf) |
1=Power Down Mode (Tiefschlaf) | |||
3 | ISC11 | Interruptsteuerung Pin
INT1 (Verknüpft mit GIMSK) | 00: Low-Pegel löst Interrupt aus |
01: Undefiniert | |||
2 | ISC10 | 10: Fallende Flanke löst Interrupt aus | |
11: Ansteigende Flanke löst Interrupt aus | |||
1 | ISC01 | Interruptsteuerung Pin
INT0 (Verknüpft mit GIMSK) | 00: Low-Pegel löst Interrupt aus |
01: Undefiniert | |||
0 | ISC00 | 10: Fallende Flanke löst Interrupt aus | |
11: Ansteigende Flanke löst Interrupt aus |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
GIMSK | General Interrupt Maskenregister | 0x3B | 0x5B |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|
INT1 | INT0 | - | - | - | - | - | - |
Bit | Name | Bedeutung | Möglichkeiten |
---|---|---|---|
7 | INT1 | Interrupt durch externen Pin INT1 (Verknüpft mit Modus in MCUCR) | 0: Externer INT1 ausgeschaltet |
1: Externer INT1 eingeschaltet | |||
6 | INT0 | Interrupt durch externen Pin INT0 (Verknüpft mit Modus in MCUCR) | 0: Externer INT0 ausgeschaltet |
1: Externer INT0 eingeschaltet | |||
0...5 | (Nicht benutzt) |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
GIFR | General Interrupt Flag Register | 0x3A | 0x5A |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|
INTF1 | INTF0 | - | - | - | - | - | - |
Bit | Name | Bedeutung | Möglichkeiten |
---|---|---|---|
7 | INTF1 | Interrupt durch externen Pin INT1 aufgetreten | Automatisch Rücksetzen durch Bearbeitung der Int-Routine oder Rücksetzen per Befehl |
6 | INTF0 | Interrupt durch externen Pin INT0 aufgetreten | |
0...5 | (Nicht benutzt) |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
TIMSK | Timer Interrupt Maskenregister | 0x39 | 0x59 |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|
TOIE1 | OCIE1A | OCIE1B | - | TICIE1 | - | TOIE0 | - |
Bit | Name | Bedeutung | Möglichkeiten |
---|---|---|---|
7 | TOIE1 | Timer/Counter 1 Überlauf-Interrupt | 0: Kein Int bei Überlauf |
1: Int bei Überlauf | |||
6 | OCIE1A | Timer/Counter 1 Vergleichszahl A Interrupt | 0: Kein Int bei Erreichen Stand A |
1: Int bei Erreichen Stand in A | |||
5 | OCIE1B | Timer/Counter 1 Vergleichszahl B Interrupt | 0: Kein Int bei Erreichen Stand B |
1: Int bei Erreichen Stand in B | |||
4 | (Nicht benutzt) | ||
3 | TICIE1 | Timer/Counter 1 Capture-Ereignis Interrupt | 0: Kein Int bei Capture |
1: Int bei Capture | |||
2 | (Nicht benutzt) | ||
1 | TOIE0 | Timer/Counter 0 Überlauf-Interrupt | 0: Kein Int bei Überlauf |
1: Int bei Überlauf | |||
0 | (Nicht benutzt) |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
TIFR | Timer Interrupt Flag Register | 0x38 | 0x58 |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|
TOV1 | OCF1A | OCF1B | - | ICF1 | - | TOV0 | - |
Bit | Name | Bedeutung | Möglichkeiten |
---|---|---|---|
7 | TOV1 | Timer/Counter 1 Überlauf erreicht | Interrupt-Modus: Automatisches Rücksetzen bei Bearbeitung der zugehörigen Int-Routine ODER Polling-Modus: Rücksetzen per Befehl |
6 | OCF1A | Timer/Counter 1 Vergleichszahl A erreicht | |
5 | OCF1B | Timer/Counter 1 Vergleichszahl B erreicht | |
4 | (Nicht benutzt) | ||
3 | ICF1 | Timer/Counter 1 Capture-Ereignis eingetreten | |
2 | (Nicht benutzt) | ||
1 | TOV0 | Timer/Counter 0 Überlauf aufgetreten | |
0 | (Nicht benutzt) |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
TCCR0 | Timer/Counter 0 Control Register | 0x33 | 0x53 |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|
- | - | - | - | - | CS02 | CS01 | CS00 |
Bit | Name | Bedeutung | Möglichkeiten |
---|---|---|---|
2..0 | CS02..CS00 | Timer Takt | 000: Timer anhalten |
001: Clock = Taktfrequenz | |||
010: Clock = Taktfrequenz / 8 | |||
011: Clock = Taktfrequenz / 64 | |||
100: Clock = Taktfrequenz / 256 | |||
101: Clock = Taktfrequenz / 1024 | |||
110: Clock = abfallende Flanke externer Pin T0 | |||
111: Clock = ansteigende Flanke externer Pin T0 | |||
3..7 | (nicht benutzt) |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
TCNT0 | Timer/Counter 0 Zählregister | 0x32 | 0x52 |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
TCCR1A | Timer/Counter 1 Control Register A | 0x2F | 0x4F |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|
COM1A1 | COM1A0 | COM1B1 | COM1B0 | - | - | PWM11 | PWM10 |
Bit | Name | Bedeutung | Möglichkeiten |
---|---|---|---|
7 | COM1A1 | Compare Ausgang A | 00: OC1A/B nicht verbunden 01: OC1A/B wechselt Polarität 10: OC1A/B auf Null setzen 11: OC1A/B auf Eins setzen |
6 | COM1A0 | ||
5 | COM1B1 | Compare Ausgang A | |
4 | COM1B0 | ||
3 | (nicht benutzt) | ||
2 | |||
1..0 | PWM11 PWM10 | Pulsweitengenerator | 00: PWM aus 01: 8-Bit PWM 10: 9-Bit PWM 11: 10-Bit PWM |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
TCCR1B | Timer/Counter 1 Control Register B | 0x2E | 0x4E |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|
ICNC1 | ICES1 | - | - | CTC1 | CS12 | CS11 | CS10 |
Bit | Name | Bedeutung | Möglichkeiten |
---|---|---|---|
7 | ICNC1 | Noise Canceler am ICP-Pin |
0: ausgeschaltet, erste Flanke löst Sampling aus |
1: eingeschaltet, Mindestdauer vier Taktzyklen | |||
6 | ICES1 | Flankenauswahl bei Capture |
0: fallende Flanke löst Capture aus |
1: steigende Flanke löst Capture aus | |||
5..4 | (nicht benutzt) | ||
3 | CTC1 | Rücksetzen bei Compare Match A | 1: Zähler wird bei Gleichheit auf Null gesetzt |
2..0 | CS12..CS10 | Taktauswahl | 000: Zähler anhalten 001: Clock 010: Clock / 8 011: Clock / 64 100: Clock / 256 101: Clock / 1024 110: fallende Flanke externer Pin T1 111: steigende Flanke externer Pin T1 |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
TCNT1L/H | Timer/Counter 1 Zählregister | 0x2C/0x2D | 0x4C/0x4D |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
OCR1AL/H | Timer/Counter 1 Output Vergleichsregister A | 0x2A/0x2B | 0x4A/0x4B hex |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
OCR1BL/H | Timer/Counter 1 Output Vergleichsregister B | 0x28/0x29 | 0x48/0x49 |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
ICR1L/H | Timer/Counter 1 Input Capture Register | 0x24/0x25 | 0x44/0x45 |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
WDTCR | Watchdog Timer Control Register | 0x21 | 0x41 |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|
- | - | - | WDTOE | WDE | WDP2 | WDP1 | WDP0 |
Bit | Name | Bedeutung | WDT-Zyklus bei 5,0Volt |
---|---|---|---|
7..5 | (Nicht benutzt) | ||
4 | WDTOE | Watchdog Turnoff Enable | Vorausgehendes Setzen zum Abschalten von WDE erforderlich |
3 | WDE | Watchdog Enable | 1: Watchdog aktiv |
2..0 | WDP2..WDP0 | Watchdog Timer Prescaler | 000: 15 ms 001: 30 ms 010: 60 ms 011: 120 ms 100: 240 ms 101: 490 ms 110: 970 ms 111: 1,9 s |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
EEARL/H | EEPROM Adress Register | 0x1E/0x1F | 0x3E/0x3F |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
EEDR | EEPROM Data Register | 0x1D | 0x3D |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
EECR | EEPROM Control Register | 0x1C | 0x3C |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|
- | - | - | - | - | EEMWE | EEWE | EERE |
Bit | Name | Bedeutung | Funktion |
---|---|---|---|
7..3 | (Nicht benutzt) | ||
2 | EEMWE | EEPROM Master Write Enable | Vorausgehendes Setzen ermöglicht Schreiben |
1 | EEWE | EEPROM Write Enable | Setzen löst Schreiben aus |
0 | EERE | EEPROM Read Enable | Setzen löst Auslesen aus |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
SPCR | SPI Control Register | 0x0D | 0x2D |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|
SPIE | SPE | DORD | MSTR | CPOL | CPHA | SPR1 | SPR0 |
Bit | Name | Bedeutung | Funktion |
---|---|---|---|
7 | SPIE | SPI Interrupt Enable | 0: Interrupts disabled |
1: Interrupts enabled | |||
6 | SPE | SPI Enable | 0: SPI abgeschaltet |
1: SPI eingeschaltet | |||
5 | DORD | Data Order | 0: MSB zuerst |
1: LSB zuerst | |||
4 | MSTR | Master/Slave Select | 0: Slave |
1: Master | |||
3 | CPOL | Clock Polarity | 0: Positive Clock Phase |
1: Negative Clock Phase | |||
2 | CPHA | Clock Phase | 0: Sampling zu Beginn der Clock Phase |
1: Sampling am Ende der Clock Phase | |||
1 | SPR1 | SCK Taktfrequenz | 00: Clock / 4 |
01: Clock / 16 | |||
0 | SPR0 | 10: Clock / 64 | |
11: Clock / 128 |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
SPSR | SPI Status Register | 0x0E | 0x2E |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|
SPIF | WCOL | - | - | - | - | - | - |
Bit | Name | Bedeutung | Funktion |
---|---|---|---|
7 | SPIF | SPI Interrupt Flag | Interruptanforderung |
6 | WCOL | Write Collision Flag | Schreibkollision aufgetreten |
5..0 | (Nicht benutzt) |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
SPDR | SPI Data Register | 0x0F | 0x2F |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
UDR | UART I/O Data Register | 0x0C | 0x2C |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
USR | UART Status Register | 0x0B | 0x2B |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|
RXC | TXC | UDRE | FE | OR | - | - | - |
Bit | Name | Bedeutung | Funktion |
---|---|---|---|
7 | RXC | UART Receive Complete | 1: Zeichen empfangen |
6 | TXC | UART Transmit Complete | 1: Schieberegister leer |
5 | UDRE | UART Data Register Empty | 1: Senderegister frei |
4 | FE | Framing Error | 1: Ungültiges Stop-Bit |
3 | OR | Overrun | 1: Zeichenverlust |
2..0 | (Nicht benutzt) |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
UCR | UART Control Register | 0x0A | 0x2A |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|
RXCIE | TXCIE | UDRIE | RXEN | TXEN | CHR9 | RXB8 | TXB8 |
Bit | Name | Bedeutung | Funktion |
---|---|---|---|
7 | RXCIE | RX Complete Interrupt Enable | 1: Interrupt bei empfangenem Zeichen |
6 | TXCIE | TX Complete Interrupt Enable | 1: Interrupt bei leerem Senderschieberegister |
5 | UDRIE | Data Register Empty Interrupt Enable | 1: Interrupt bei leerem Senderegister |
4 | RXEN | Receiver Enabled | 1: Empfänger eingeschaltet |
3 | TXEN | Transmitter Enable | 1: Sender eingeschaltet |
2 | CHR9 | 9-bit Characters | 1: Zeichen mit 9 Bit Länge |
1 | RXB8 | Receive Data Bit 8 | 9.Datenbit beim Empfang |
0 | TXB8 | Transmit Data Bit 8 | 9.Datenbit beim Senden |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
UBRR | UART Baud Rate Register | 0x09 | 0x29 |
Port | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|
ACSR | Analog Comparator Control and Status Register | 0x08 | 0x28 |
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|
ACD | - | ACO | ACI | ACIE | ACIC | ACIS1 | ACIS0 |
Bit | Name | Bedeutung | Funktion |
---|---|---|---|
7 | ACD | Disable | Abschaltung des Comparators |
6 | (Nicht benutzt) | ||
5 | ACO | Comparator Output | Lesen: Ausgang des Comparators |
4 | ACI | Interrupt Flag | 1: Interruptanforderung |
3 | ACIE | Interrupt Enable | 1: Interrupts enabled |
2 | ACIC | Input Capture Enable | 1: Verbindung zu Timer 1 Capture |
1 | ACIS1 | Input Capture Enable | 00: Interrupt bei Pegelwechsel |
01: Nicht benutzt) | |||
0 | ACIS0 | 10: Interrupt bei fallender Flanke | |
11: Interrupt bei steigender Flanke |
Port | Register | Funktion | Port-Adresse | RAM-Adresse |
---|---|---|---|---|
A | PORTA | Data Register | 0x1B | 0x3B |
DDRA | Data Direction Register | 0x1A | 0x3A | |
PINA | Input Pins Address | 0x19 | 0x39 | |
B | PORTB | Data Register | 0x18 | 0x38 |
DDRB | Data Direction Register | 0x17 | 0x37 | |
PINB | Input Pins Address | 0x16 | 0x36 | |
C | PORTC | Data Register | 0x15 | 0x35 |
DDRC | Data Direction Register | 0x14 | 0x34 | |
PINC | Input Pins Address | 0x13 | 0x33 | |
D | PORTD | Data Register | 0x12 | 0x32 |
DDRD | Data Direction Register | 0x11 | 0x31 | |
PIND | Input Pins Address | 0x10 | 0x30 |