dcf77_internal.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2019 HAW Hamburg
3  *
4  * This file is subject to the terms and conditions of the GNU Lesser
5  * General Public License v2.1. See the file LICENSE in the top level
6  * directory for more details.
7  */
8 
19 #ifndef DCF77_INTERNAL_H
20 #define DCF77_INTERNAL_H
21 
22 #ifdef __cplusplus
23 extern "C" {
24 #endif
25 
29 typedef union {
33  struct values {
34  uint64_t start : 1,
35  wheater : 14,
36  calling : 1,
38  mesz : 2,
39  shift_sec : 1,
40  start_time : 1,
41  minute_l : 4,
42  minute_h : 3,
43  minute_par : 1,
44  hour_l : 4,
45  hour_h : 2,
46  hour_par : 1,
47  day_l : 4,
48  day_h : 2,
49  wday : 3,
50  month_l : 4,
51  month_h : 1,
52  year_l : 4,
53  year_h : 4,
54  date_par : 1,
55  buff : 5;
56  } val;
57  uint64_t bits;
58 } dcf77_bits_t;
63 enum {
67 };
68 
69 #ifdef __cplusplus
70 }
71 #endif
72 
73 #endif /* DCF77_INTERNAL_H */
@ DCF77_STATE_RX
Device is in RX mode.
@ DCF77_STATE_IDLE
Device is in idle state.
@ DCF77_STATE_START
Device is searching the start for a new minute.
Struct of bitfields.
uint64_t wday
Number of Bits for weekday value.
uint64_t shift_sec
Number of Bits for leap-second value.
uint64_t minute_l
Number of Bits for lower minute value.
uint64_t mesz
Number of Bits for mesz value.
uint64_t minute_par
Number of Bits for minuteparity value.
uint64_t year_h
Number of Bits for higher year value.
uint64_t hour_l
Number of Bits for lower hour value.
uint64_t minute_h
Number of Bits for higher minute value.
uint64_t start_time
Number of Bits for start_Bit value.
uint64_t date_par
Number of Bits for dateparity value.
uint64_t wheater
Number of Bits for weather value.
uint64_t buff
Number of Bits for experimental buffer value.
uint64_t mez_mesz_shift
Number of Bits for shift value.
uint64_t day_l
Number of Bits for lower calenderday value.
uint64_t hour_par
Number of Bits for hourparity value.
uint64_t year_l
Number of Bits for lower year value.
uint64_t calling
Number of Bits for calling value.
uint64_t hour_h
Number of Bits for higher hour value.
uint64_t day_h
Number of Bits for higher calenderday value.
uint64_t start
< Struct of bitfields
uint64_t month_l
Number of Bits for lower month value.
uint64_t month_h
Number of Bits for higher month value.
Timeinformation bitfields for DCF77 devices.
uint64_t bits
Value of Bits in a received cycle.