Нет, именно переключает, проверено. Я не это имел ввиду, допустим необходимо переключать вывод(ы) с входа на выход лог 1 и обратно, или с выхода лог 0 на вход с подтяжкой и обратно. В одних случаях предпочтительней устанавливать сначала DDRx, а потом PORTx. В других наоборот. В обоих случаях будет некоторое время существовать левое состояние вывода МК. Идеально могло бы быть, если бы биты направления и состояния были бы в одном порту и их можно было бы менять одновременно. Или был бы временный промежуточный регистр (как в 16-рр-ных счётчиках) для предварительной записи, а окончательная запись например в DDRx происходила бы одновременно с записью в PORTx, как то так. Или реальная запись например в DDRx происходила бы фиксировано на два такта позже чем такая же запись в PORTx. Я что то такое имел ввиду