насчёт как запихнуть - в avr-gcc есть gcclib, и в нём есть функция double atan2(double x, double y). работает с вещественными числами, 32bit. больше, чем надо, но это самое простое в реализации. а avr-gcc тут ох как предстоит... где можно посмотреть про алгоритм гиперболического косинуса? (я так же встречал гиперболический арктангенс).

точность тут великая не требуется, но на больших углах обзора (заглянуть за плечо) ощущается некоторая нелинейность (на headmouse4zoom). как-то напрягает слегка.