summaryrefslogtreecommitdiff
path: root/digital
diff options
context:
space:
mode:
authorFlorent Duchon2012-05-03 23:56:55 +0200
committerFlorent Duchon2012-05-04 00:06:29 +0200
commit956c4bb433b65602f43ea079970b9758c630360e (patch)
tree753a9d166f6c994c612c3fcc06c589d1713c30d6 /digital
parentdda9e97de72a90a0164ecbe50c9618606b3abd6c (diff)
digital/beacon: add raw2degree() function
Diffstat (limited to 'digital')
-rw-r--r--digital/beacon/src/codewheel.c6
-rw-r--r--digital/beacon/src/codewheel.h3
2 files changed, 9 insertions, 0 deletions
diff --git a/digital/beacon/src/codewheel.c b/digital/beacon/src/codewheel.c
index 092f6b57..fb8914c2 100644
--- a/digital/beacon/src/codewheel.c
+++ b/digital/beacon/src/codewheel.c
@@ -86,6 +86,12 @@ void codewheel_set_rebase_offset(uint16_t offset)
codewheel.rebase_offset = offset;
}
+/* This function converts the angle value from row format to degrees */
+float codewheel_convert_angle_raw2degrees(uint16_t raw_value)
+{
+ return (float)raw_value*(float)360/(float)CODEWHEEL_CPR;
+}
+
/* Codewheel complete turn IRQ vector for CodeWheel*/
ISR(TIMER3_COMPA_vect)
{
diff --git a/digital/beacon/src/codewheel.h b/digital/beacon/src/codewheel.h
index 7abe3f0e..f0ec26f5 100644
--- a/digital/beacon/src/codewheel.h
+++ b/digital/beacon/src/codewheel.h
@@ -62,4 +62,7 @@ uint16_t codewheel_get_rebase_offset(void);
/* This function saves the counter value used when a codewheel reset is requested */
void codewheel_set_rebase_offset(uint16_t offset);
+/* This function converts the angle value from row format to degrees */
+float codewheel_convert_angle_raw2degrees(uint16_t raw_value);
+
#endif