Module Reference¶
I2C¶
i2c_bit
- Single bit registers¶
adafruit_register.i2c_bit
¶
Single bit registers
- Author(s): Scott Shawcroft
-
class
adafruit_register.i2c_bit.
ROBit
(register_address, bit, register_width=1, lsb_first=True)[source]¶ Single bit register that is read only. Subclass of
RWBit
.Values are
bool
Parameters:
i2c_bits
- Multi bit registers¶
adafruit_register.i2c_bits
¶
Multi bit registers
- Author(s): Scott Shawcroft
-
class
adafruit_register.i2c_bits.
ROBits
(num_bits, register_address, lowest_bit, register_width=1, lsb_first=True, signed=False)[source]¶ Multibit register (less than a full byte) that is read-only. This must be within a byte register.
Values are
int
between 0 and 2 **num_bits
- 1.Parameters:
-
class
adafruit_register.i2c_bits.
RWBits
(num_bits, register_address, lowest_bit, register_width=1, lsb_first=True, signed=False)[source]¶ Multibit register (less than a full byte) that is readable and writeable. This must be within a byte register.
Values are
int
between 0 and 2 **num_bits
- 1.Parameters: - num_bits (int) – The number of bits in the field.
- register_address (int) – The register address to read the bit from
- lowest_bit (type) – The lowest bits index within the byte at
register_address
- register_width (int) – The number of bytes in the register. Defaults to 1.
- lsb_first (bool) – Is the first byte we read from I2C the LSB? Defaults to true
- signed (bool) – If True, the value is a “two’s complement” signed value. If False, it is unsigned.
i2c_struct
- Generic structured registers based on struct
¶
adafruit_register.i2c_struct
¶
Generic structured registers based on struct
- Author(s): Scott Shawcroft
-
class
adafruit_register.i2c_struct.
ROUnaryStruct
(register_address, struct_format)[source]¶ Arbitrary single value structure register that is read-only.
Values map to the first value in the defined struct. See struct module documentation for struct format string and its possible value types.
Parameters:
-
class
adafruit_register.i2c_struct.
Struct
(register_address, struct_format)[source]¶ Arbitrary structure register that is readable and writeable.
Values are tuples that map to the values in the defined struct. See struct module documentation for struct format string and its possible value types.
Parameters:
-
class
adafruit_register.i2c_struct.
UnaryStruct
(register_address, struct_format)[source]¶ Arbitrary single value structure register that is readable and writeable.
Values map to the first value in the defined struct. See struct module documentation for struct format string and its possible value types.
Parameters:
i2c_bcd_datetime
- Binary Coded Decimal date and time register¶
adafruit_register.i2c_bcd_datetime
¶
Binary Coded Decimal date and time register
- Author(s): Scott Shawcroft
-
class
adafruit_register.i2c_bcd_datetime.
BCDDateTimeRegister
(register_address, weekday_first=True, weekday_start=1)[source]¶ Date and time register using binary coded decimal structure.
The byte order of the register must* be: second, minute, hour, weekday, day (1-31), month, year (in years after 2000).
- Setting weekday_first=False will flip the weekday/day order so that day comes first.
Values are
time.struct_time
Parameters:
i2c_bcd_alarm
- Binary Coded Decimal alarm register¶
adafruit_register.i2c_bcd_alarm
¶
Binary Coded Decimal alarm register
- Author(s): Scott Shawcroft
-
class
adafruit_register.i2c_bcd_alarm.
BCDAlarmTimeRegister
(register_address, has_seconds=True, weekday_shared=True, weekday_start=1)[source]¶ Alarm date and time register using binary coded decimal structure.
The byte order of the registers must* be: [second], minute, hour, day, weekday. Each byte must also have a high enable bit where 1 is disabled and 0 is enabled.
- If weekday_shared is True, then weekday and day share a register.
- If has_seconds is True, then there is a seconds register.
Values are a tuple of (
time.struct_time
,str
) where the struct represents a date and time that would alarm. The string is the frequency:- “secondly”, once a second (only if alarm has_seconds)
- “minutely”, once a minute when seconds match (if alarm doesn’t seconds then when seconds = 0)
- “hourly”, once an hour when
tm_min
andtm_sec
match - “daily”, once a day when
tm_hour
,tm_min
andtm_sec
match - “weekly”, once a week when
tm_wday
,tm_hour
,tm_min
,tm_sec
match - “monthly”, once a month when
tm_mday
,tm_hour
,tm_min
,tm_sec
match
Parameters: - register_address (int) – The register address to start the read
- has_seconds (bool) – True if the alarm can happen minutely.
- weekday_shared (bool) – True if weekday and day share the same register
- weekday_start (int) – 0 or 1 depending on the RTC’s representation of the first day of the week (Monday)
SPI¶
Coming soon!