summaryrefslogtreecommitdiff
path: root/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'main.c')
-rw-r--r--main.c46
1 files changed, 46 insertions, 0 deletions
diff --git a/main.c b/main.c
new file mode 100644
index 0000000..f130906
--- /dev/null
+++ b/main.c
@@ -0,0 +1,46 @@
+#include "main.h"
+#include "max7219.h"
+#include "clock.h"
+#include "timebase.h"
+#include "dcf77.h"
+
+
+int main( void )
+{
+ PORTA = 0xFF; // enable pull ups
+ PORTB = 0xFF;
+ DDRA |= 1<<PA4;
+ display_init();
+ display_off();
+ timebase_init();
+ sei();
+ for(;;){
+ scan_dcf77();
+#if 1
+ if( DCF77_PIN & 1<<DCF77 )
+ PORTA |= 1<< PA4;
+ else
+ PORTA &= ~(1<<PA4);
+#endif
+ if( timeflags & 1<<ONE_SECOND ){
+ timeflags = 0;
+ clock();
+ if( synchronize == 0 )
+ continue;
+ if( synchronize == 1 && time.hour == 3 ){
+ if( time.minute == 20 )
+ display_off();
+ if( time.minute == 28 )
+ synchronize = 2;
+ continue;
+ }
+ if( time.hour == 4 )
+ synchronize = 1;
+
+ DDRA &= ~(1<<PA4);
+ display_clear();
+ display_time();
+ display_out();
+ }
+ }
+}