1. Регистры портов цифрового ввода/вывода информации.
2. Регистры портов, обслуживающих периферийные устройства (АЦП,UART, компараторы, таймеры, внешние прерывания)
3. Регистры портов, обслуживающих работу МП.
Регистры – устройства памяти, расположенные на кристалле процессора или микроконтроллера, необходимые для хранения промежуточных вычислений, к ним обращаются лишь на программном уровне с помощью команд.
Регистры ввода/вывода предназначенные для обмена информацией с внешней средой как на программном уровне, так и на аппаратном.
Регистры портов, обслуживающих работу процессора:
Регистры Spl, Sph (стековая память)
Регистры SREG.
RAM (Read Access Memory) производит доступ к памяти, традиционно использовали для обозначения ОЗУ.
DDR A – задание направления выдачи информации для регистра.
PORT A – это непосредственно триггер, который запоминает выводимую информацию. Это устройство статистическое.
PINE A – регистр не предназначенный для хранения долговременной информации и отображающий напряжение на ножке А.
Адреса регистров ввода-вывода, их имена и функции приведены в табл.1.
Табл. 1 Регистры ввода/вывода AVR-контроллера
Адрес I/O (Адрес RAM) Обозначение Функция
$ 3D ($5D) SPL Указатель стека (младший байт)
$ 3E ($5E) SPH Указатель стека (старший байт)
$ 3F ($5F) SPEG Регистр статуса (признаков или флаговый регистр)
$ 00 ($20) PINF Выводы входов порта F
$ 01 ($21) PINE Выводы входов порта E
$ 02 ($22) DDR E Регистр направления данных порта E
$ 03 ($23) PORT E Регистр данных порта E
$ 04 ($24) ADCL Младший байт регистра данных АЦП
$ 05 ($25) ADCH Старший байт регистра данных АЦП
$ 06 ($26) ADCSR Регистр управления и статуса АЦП
$ 07 ($27) ADMUX Регистр мультиплексора АЦП
$ 08 ($28) ACSR Регистр управления и статуса аналогового ком.
$ 09 ($29) UBRR Регистр управления скоростью порта UART
$ 0A ($2A) UCR Регистр управления порта UART
$ 0B ($2B) USR Регистр статуса порта UART
$ 0C ($2C) UDR Регистр данных порта UART
$ 0D ($2D) SPCR Регистр управления порта SPI
$ 0E ($2E) SPRC Регистр статуса порта SPI
$ 0F ($2F) SPDR Регистр данных порта SPI
$ 10 ($30) PIN D Выводы входов порта D
$ 11 ($31) DDR D Регистр направления данных порта D
$ 12 ($32) PORT D Регистр данных порта D
$ 13 ($33) PINC Выводы входов порта C
$ 14 ($34) DDR C Регистр направления данных порта C
$ 15 ($35) PORT C Регистр данных порта C
$ 16 ($36) PIN B Выводы входов порта B
$ 17 ($37) DDR B Регистр направления данных порта B
$ 18 ($38) PORT B Регистр данных порта B
$ 19 ($39) PIN A Выводы входов порта A
$ 1A ($3A) DDR A Регистр направления данных порта A
$ 1B ($3B) PORT A Регистр данных порта A
$ 1C ($3C) EE CR Регистр управления EEPROM
$ 1D ($3D) EE DR Регистр данных EEPROM
$ 1E ($3E) EE ARL Младший байт адреса EEPROM
$ 1F ($3F) EE ARH Старший байт регистра адреса EEPROM
$ 20 ($40) Резерв Резерв
$ 21 ($41) WDTCR Регистр управления сторожевого таймера
$ 23 ($42) Резерв Резерв
$ 24 ($43) OCR2 Регистр выхода таймера/ счетчик №2
$ 24 ($44) TCNT2 Таймер/счетчик №2
$ 25 ($45) TCCR2 Регистр управления таймера/счетчика №2
$ 26 ($46)
ICR1L
Младший байт регистра захвата
таймера/счетчика №1
$ 27 ($47)
ICR1H
Старший байт регистра захвата
таймера/счетчика №1
$ 28 ($48)
OCR1BL
Младший байт регистра в сравнения выхода таймера/счетчика №1
$ 29 ($49) OCR1BH Старший байт регистра в сравнения выхода таймера/счетчика №1
$ 2A ($4A) OCR1AL Младший байт регистра A в сравнения выхода таймера/счетчика №1
$ 2B ($4B) OCR1AH Старший байт регистра A в сравнения выхода таймера/счетчика №1
$ 2C ($4C) TCNT1L Младший байт таймера/счетчика №1
$ 2D ($4D) TCNT1H Старший байт таймера/счетчика №1
$ 2E ($4E) TCCR1B Регистр управления В таймера/счетчика №1
$ 2F ($4F) TCCR1A Регистр управления А таймера/счетчика №1
$ 30 ($50) ASSR Регистр статуса асинхронного режима.