для чтения значения TCNT1H надо сначала прочитать значение TCNT1L, т.к. доступ к TCNT1H осуществляется через временный регистр, и значение в этом регистре обновляется при доступе к TCNT1L. Для записи, сначала задаём TCNT1H, затем TCNT1L. Так со всеми 16-ти битными регистрами.