ILYAUL, так тема про то, что человек написал инициализацию ADCSRA в 2 инструкции, и такой код оказывается неработоспособным, но вы настаиваете, что инициализация должна выполняться именно так. Есть такой момент, что если производить запись в регистры АЦП когда бит ADEN ещё не установлен, не понятно, запишется что-нибудь или нет, ведь блок выключен и enable на регистры не подаётся. Так вот, если выставлять ADEN в ADCSRA в одной команде вместе с остальными битами, то запись в остальные биты может не производиться, поскольку enable ещё не выставлен (ведь он защёлкнется только в этом такте), именно поэтому ADCSRA = _BV(ADEN); вынесено в отдельную команду. И следующей командой может идти запись в остальные биты ADCSRA, поскольку в этом случае блок АЦП гарантированно включен.
|