Цитата(Эдди @ May 17 2015, 18:32)

Подсказываю: есть цепные дроби.
Смотря какую "минимально возможную погрешность" ищет ТС, я так полагаю, что не требуется точность до сотых долей Гц, так что если взять частный случай с пределами от 10 до 2000 Гц, то дроби можно откидывать сразу.
Fout = Fclk / (PSC +1) / (ARR + 1)
(PSC +1) * (ARR + 1) = Fclk / Fout
Если взять худший случай, что Fout = 2000 Гц, то получим (Fclk / Fout) = 72000000 / 2000 = 36000 и здесь уже нет смысла учитывать дробную часть.
Задача сводится к разложению целого числа (Fclk / Fout) на целые множители с учетом пределов изменения множителей 1...65536.