Есть прошивка для тини2313, которая призвана генерить тинькой смещённую частоту. То есть внутри тиньки крутится таймер на 16 бит. На вход INT0 поступают прямоугольники входной частоты. В прерывании я запоминаю период между ними (то есть получаю двухбайтное целое число), далее умножаю этот период на коэффициент 0.3-3.0, округляю, привожу к целому и получаю период выходной частоты. Выходную частоту генерирую тем же самым таймером в прерывании по совпадению.
То есть формула такова: Fi * K = Fout
Вот тут и затык: как мне убрать плавучку? А то памяти у тиньки совсем мало осталось, а надо добавить функционал :( Не снизит ли точность вычисление простое домножение/деление всех чисел на 1000? И насколько это эффективней по коду? Может, есть более эффективные методы?