DDRC
|   14h(34h)  |    7  |    6  |    5  |    4  |    3  |    2  |    1  |    0  |  
|   -  |    -  |    DDC5  |    DDC0  |  |||||
| R | R | R\W | R\W | R\W | R\W | R\W | R\W | |
|   Начальное значение  |  0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 
ВЫВОДЫ ПОРТА B
PINC
|   13h(33h)  |    7  |    6  |    5  |    4  |    3  |    2  |    1  |    0  |  
|   -  |    -  |    PINC5  |    PINC0  |  |||||
| R | R | R\W | R\W | R\W | R\W | R\W | R\W | |
|   Начальное значение  |  0 | 0 | Z | Z | Z | Z | Z | Z | 
PINC не является регистром, по этому адресу осуществляется доступ к физическим значениям каждого из выводов порта C. При чтении PORTC, читаются данные из регистра-защелки, при чтении PINC читаются логические значения присутствующие на выводах порта.
ПОРТ C, КАК ПОРТ ВВОДА/ВЫВОДА ОБЩЕГО НАЗНАЧЕНИЯ
Все 6 бит порта C при использовании для ввода/вывода одинаковы.
Бит DDCn регистра DDRC выбирает направление передачи данных. Если бит установлен (1), вывод сконфигурирован как выход. Если бит сброшен (0) - вывод сконфигурирован как вход. Если PORTCn установлен и вывод сконфигурирован как вход, включается КМОП подтягивающий резистор. Для отключения резистора, PORTCn должен быть сброшен (0) или вывод должен быть сконфигурирован как выход.
Таблица 23. Влияние DDCn на выводы порта C
|   DDC  |    PORTC  |    In\Out  |    Подтягивающие резисторы  |    описание  |  
|   0  |    0  |    0  |    Нет  |    Третье состояние  |  
|   0  |    1  |    1  |    Да  |    PBn источник тока Iil, если извне соединен с землей  |  
|   1  |    0  |    0  |    Нет  |    Выход установлен в 0  |  
|   1  |    1  |    1  |    Нет  |    Выход установлен в 1  |  
Порт D
Порт D 8-разрядный двунаправленный порт ввода/вывода.
Для обслуживания порта отведено три регистра: регистр данных PORTD (12h, 32h), регистр направления данных - DDRD (11h, 31h) и ножки порта D - PIND (10h, 30h). Адрес ножек порта D предназначен только для чтения, в то время как регистр данных и регистр направления данных - для чтения/записи. Все выводы порта имеют отдельно подключаемые подтягивающие резисторы. Выходы порта D могут поглощать ток до 20 mA и непосредственно управлять светодиодными индикаторами. Если выводы PD0..PD7 используются как входы и замыкаются на землю, если включены внутренние подтягивающие резисторы, выводы являются источниками тока (Iil). Альтернативные функции порта приведены в таблице.
Таблица 24. Альтернативные функции порта D
| Вывод порта | Альтернативная функция | 
| PD0 | RXD (вход данных UART) | 
| PD1 | TXD (выход данных UART) | 
| PD2 | INT0 (вход внешнего прерывания 0) | 
| PD3 | INT1 (вход внешнего прерывания 1) | 
| PD4 | T0 (внешний вход таймера счетчика 0) | 
| PD5 | T1 (внешний вход таймера счетчика 1) | 
| PD6 | AIN0 (неинвертирующ.вход компаратора) | 
| PD7 | AIN1 (инвертирующий вход компаратора) | 
РЕГИСТР ДАННЫХ ПОРТА D – PORTD
|   15h(35h)  |    7  |    6  |    5  |    4  |    3  |    2  |    1  |    0  |  
|   -  |    -  |    PORTD5  |    PORTD0  |  |||||
| R | R | R\W | R\W | R\W | R\W | R\W | R\W | |
|   Начальное значение  |  0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 
|   14h(34h)  |    7  |    6  |    5  |    4  |    3  |    2  |    1  |    0  |  
|   -  |    -  |    DDD5  |    DDD0  |  |||||
| R | R | R\W | R\W | R\W | R\W | R\W | R\W | |
|   Начальное значение  |  0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 
|   13h(33h)  |    7  |    6  |    5  |    4  |    3  |    2  |    1  |    0  |  
|   -  |    -  |    PIND5  |    PIND0  |  |||||
| R | R | R\W | R\W | R\W | R\W | R\W | R\W | |
|   Начальное значение  |  0 | 0 | Z | Z | Z | Z | Z | Z | 
PIND не является регистром, по этому адресу осуществляется доступ к физическим значениям каждого из выводов порта D. При чтении PORTD, читаются данные из регистра-защелки, при чтении PIND читаются логические значения присутствующие на выводах порта.
ПОРТ D, КАК ПОРТ ВВОДА/ВЫВОДА ОБЩЕГО НАЗНАЧЕНИЯ
Бит DDDn регистра DDRD выбирает направление передачи данных. Если бит установлен (1), вывод сконфигурирован как выход. Если бит сброшен (0) - вывод сконфигурирован как вход. Если PORTDn установлен и вывод сконфигурирован как вход, включается КМОП подтягивающий резистор. Для отключения резистора, PORTDn должен быть сброшен (0) или вывод должен быть сконфигурирован как выход.
Таблица 25. Влияние DDDn на выводы порта D
|   DDDn  |    PORTDn  |    In\Out  |    Подтягивающие резисторы  |    Описание  |  
| 0 | 0 | Вход | Нет |   Третье состояние  |  
| 0 | 1 | Вход | Да | PDn источник тока Iil, если извне соединен с землей | 
| 1 | 0 | Выход | Нет | Выход установлен в 0 | 
| 1 | 1 | Выход | Нет | Выход установлен в 1 | 
Альтернативные функции порта D
AIN1 - Порт D, бит7 - инвертирующий вход аналогового компаратора. Если вывод сконфигурирован как вход (DDD7=0) и отключен внутренний подтягивающий резистор, этот вывод может работать как инвертирующий вход аналогового компаратора. В экономичном режиме триггер Шмитта отключен от цифрового входа. Это позволяет удерживать на входе напряжение близкое к Vcc/2 без заметного увеличения потребления.
AIN0 - Порт D, бит6 - неинвертирующий вход аналогового компаратора. Если вывод сконфигурирован как вход (DDD6=0) и отключен внутренний подтягивающий резистор, этот вывод может работать как инвертирующий вход аналогового компаратора. В экономичном режиме триггер Шмитта отключен от цифрового входа. Это позволяет удерживать на входе напряжение близкое к Vcc/2 без заметного увеличения потребления.
T1 - Порт D, бит 5 - тактовый вход таймера/счетчика 1. Подробнее см. описание таймера.
T0 - Порт D, бит 4 - тактовый вход таймера/счетчика 0. Подробнее см. описание таймера.
INT1 - Порт D, бит 3 - вход внешних прерываний 1. Подробнее см. описание прерываний.
INT0 - Порт D, бит 2 - вход внешних прерываний 0. Подробнее см. описание прерываний.
TXD - Порт D, бит 1 - выход передатчика UART. Если разрешена работа передатчика UART, независимо от состояния DDRD1 этот вывод сконфигурирован как выход.