avr-fw-modules/core/src/fp_normalize_arc.c

19 lines
269 B
C
Raw Normal View History

2017-09-27 13:25:39 +02:00
#include "hwo/fixpoint.h"
/* "Normalize" an arc to range 0..360° */
fixpoint_t fp_normalize_arc(fixpoint_t arc)
{
fixpoint_t a;
if ((arc >= 0) && (arc < fp_make(360)))
return arc;
a = arc % fp_make(360);
if (a < 0)
return a + fp_make(360);
return a;
};