46
46
from adafruit_register import i2c_bit
47
47
from adafruit_register import i2c_bcd_datetime
48
48
49
+ try :
50
+ import typing # pylint: disable=unused-import
51
+ from busio import I2C
52
+ from time import struct_time
53
+ except ImportError :
54
+ pass
55
+
49
56
__version__ = "0.0.0-auto.0"
50
57
__repo__ = "https://github.com/adafruit/Adafruit_CircuitPython_DS1307.git"
51
58
@@ -94,7 +101,7 @@ class DS1307:
94
101
datetime_register = i2c_bcd_datetime .BCDDateTimeRegister (0x00 )
95
102
"""Current date and time."""
96
103
97
- def __init__ (self , i2c_bus ) :
104
+ def __init__ (self , i2c_bus : I2C ) -> None :
98
105
self .i2c_device = I2CDevice (i2c_bus , 0x68 )
99
106
100
107
# Try and verify this is the RTC we expect by checking constant fields.
@@ -115,12 +122,12 @@ def __init__(self, i2c_bus):
115
122
raise ValueError ("Unable to find DS1307 at i2c address 0x68." )
116
123
117
124
@property
118
- def datetime (self ):
125
+ def datetime (self ) -> struct_time :
119
126
"""Gets the current date and time or sets the current date and time then starts the
120
127
clock."""
121
128
return self .datetime_register
122
129
123
130
@datetime .setter
124
- def datetime (self , value ) :
131
+ def datetime (self , value : struct_time ) -> None :
125
132
self .disable_oscillator = False
126
133
self .datetime_register = value
0 commit comments