Files
RingClock/Core/Src/clock.c
2026-03-26 19:26:58 +01:00

56 lines
638 B
C

/*
* clock.c
*
* Created on: Mar 26, 2026
* Author: ewars
*/
#include "clock.h"
// define LED marking 12:00 or 00:00
#define LED_ZERO_OFFSET 10
uint8_t clock_convert_hours(uint8_t hours){
int8_t h = 0;
uint8_t led = 0;
// input check
if(hours < 24){
if(hours > 12){
h = hours - 12;
}
else{
h = hours;
}
led = 2 * h + LED_ZERO_OFFSET;
if(led > 23){
led -= 24;
}
}
return led;
}
uint8_t clock_convert_min_sec(uint8_t min_sec){
float led = 0;
if(min_sec < 60){
led = (float) min_sec/(60/24);
led += LED_ZERO_OFFSET;
if(led > 23){
led -= 24;
}
}
return (uint8_t) led;
}