Если упрощенно, цифровой порт - это два ключа: один ("верхний") замыкает пин на 5V, второй ("нижний") - на землю. Если открыт верхний ключ, на порт выводится 1, если нижний, то 0. Закрыты оба ключа - порт работает как вход, т.н. Z-состояние.
Что будет если замкнуть два цифровых порта на друг-друге?
Если на один порт вывести 1, а на второй 0, будет короткое замыкание через верхний ключ первого порта и нижний ключ второго.
Возможны ли исключения?
Да, если вы гарантируете, что состояния портов всегда будут одинаковыми (00 или 11), ничего не сгорит.
А если только один на выход с высоким сигналом, а второй на вход?
Всё ок, вход прочитает единицу, ничего не сгорит.
А если оба на выход высокого сигнала?
Как уже было сказано, кз не будет. Но переключать оба порта нужно строго одновременно, за один такт.
А если оба на вход?
Не сгорит, но если больше ничего к этим портам не подключено, вход будет читать всякий случайный мусор.
Можно ли соединять пин 5V и читающий цифровой пин?
Можно ли соединять землю и читающий цифровой пин?
В обоих случаях можно. Но если случайно переключить пин на выход, будет кз. Поэтому замыкать входы на питание и на землю лучше не напрямую, а через резистор.
Можно ли соединять пин земли и 5V?
Будет короткое замыкание источника 5V. Ну хотя бы контроллер от этого не сгорит =)