diff --git a/_static/accelerometer.jpg b/_static/accelerometer.jpg new file mode 100644 index 0000000..cc90eb9 Binary files /dev/null and b/_static/accelerometer.jpg differ diff --git a/adafruit_circuitplayground/express.py b/adafruit_circuitplayground/express.py index 4a0d8f8..bdab841 100755 --- a/adafruit_circuitplayground/express.py +++ b/adafruit_circuitplayground/express.py @@ -1,8 +1,10 @@ +import adafruit_lis3dh import adafruit_thermistor import analogio import array import audioio import board +import busio import digitalio import math import neopixel @@ -60,6 +62,32 @@ def __init__(self): self._touch_A6 = None self._touch_A7 = None + # Define acceleration: + self._i2c = busio.I2C(board.ACCELEROMETER_SCL, board.ACCELEROMETER_SDA) + self._lis3dh = adafruit_lis3dh.LIS3DH_I2C(self._i2c, address=0x19) + self._lis3dh.range = adafruit_lis3dh.RANGE_8_G + self._lis3dh._write_register_byte(adafruit_lis3dh.REG_CTRL5, 0b01001000) + self._lis3dh._write_register_byte(0x2E, 0b10000000) + + @property + def acceleration(self): + """Obtain data from the x, y and z axes. + + .. image :: /_static/accelerometer.jpg + + This example prints the values. Try moving the board to see how the + printed values change. + + .. code-block:: python + + from adafruit_circuitplayground.express import cpx + + while True: + x, y, z = cpx.acceleration + print(x, y, z) + """ + return self._lis3dh.acceleration + @property def touch_A1(self): """Detect touch on capacitive touch pad A1. diff --git a/conf.py b/conf.py index b5811bc..104523b 100644 --- a/conf.py +++ b/conf.py @@ -20,7 +20,7 @@ 'NeoPixel': ('https://circuitpython.readthedocs.io/projects/neopixel/en/latest/', None)} # Libraries we depend on but don't need for generating docs. -autodoc_mock_imports = ["board", "analogio", "digitalio", "neopixel", "adafruit_thermistor", "audioio", "touchio"] +autodoc_mock_imports = ["board", "analogio", "digitalio", "neopixel", "adafruit_thermistor", "audioio", "touchio", "adafruit_lis3dh", "busio"] # Add any paths that contain templates here, relative to this directory. templates_path = ['_templates']