генератора, можно задействовать для других целей, как обычные порты ввода/вывода. Семейство
По умолчанию МК семейств

* * *
Подробности
При установке ячеек следует учитывать, что состояние CKSEL = 0000 (зеркальное по отношению к наиболее часто употребляемому значению для кварцевого резонатора 1111) переводит МК в режим тактирования от внешнего генератора, и в этом состоянии его нельзя даже запрограммировать без подачи внешней частоты. Также, если вы попытаетесь установить режим с низкочастотным резонатором, то от высокочастотного МК уже не запустится, а далеко не все программаторы могут работать при таких низких частотах тактирования. Поэтому при манипуляциях с ячейками, и не только CKSEL, нужно быть крайне осторожным и хорошо представлять, что именно вы устанавливаете. Подробнее об этом говорится в
Портов ввода/вывода (повторим, что их не следует путать ни с регистрами ввода/вывода, ни с последовательными портами МК для обмена информацией с внешними устройствами) в разных моделях может быть от 1 до 7. Номинально порты 8-разрядные, в некоторых случаях разрядность ограничена числом выводов корпуса и может быть меньше восьми. Порты обозначаются буквами
Для сокращения числа контактов корпуса в подавляющем большинстве случаев внешние выводы, соответствующие портам, кроме своей основной функции (двунаправленного ввода/вывода) несут также и дополнительную. Отметим, что кроме как для вывода
Типичным примером многообразия функций портов может служить базовый для
Выводы портов в достаточной степени автономны, и их режим может устанавливаться независимо друг от друга. По умолчанию при включении питания все дополнительные устройства отключены, а порты работают на вход, причем находятся в третьем состоянии с высоким импедансом (т. е. с высоким входным сопротивлением). Работа на выход требует специального указания, для чего в программе нужно установить соответствующий нужному выводу бит в регистре направления данных (этот регистр обозначается DDRx, где
Для установки выхода в состояние единицы нужно отдельно установить соответствующий бит в регистре данных порта (обозначается PORTx), а для установки в 0 — сбросить этот бит. Направление работы вывода (вход-выход, регистр DDRx) и его состояние (0–1, PORTx) путать не следует.
Регистр данных PORTx фактически есть просто выходной буфер — все, что в него записывается, тут же оказывается на выходе. Но если установить вывод порта на вход (т. е. записать в регистр направления DDRx логический ноль), как это сделано по умолчанию, то регистр данных PORTx будет играть