1 # SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
3 # SPDX-License-Identifier: MIT
5 `analogio` - Analog input and output control
6 ============================================
7 See `CircuitPython:analogio` in CircuitPython for more details.
8 Not supported by all boards.
10 * Author(s): Carter Nelson, Melissa LeBlanc-Williams
14 from adafruit_blinka.agnostic import detector
16 # pylint: disable=ungrouped-imports,wrong-import-position,unused-import
18 if detector.board.microchip_mcp2221:
19 from adafruit_blinka.microcontroller.mcp2221.analogio import AnalogIn
20 from adafruit_blinka.microcontroller.mcp2221.analogio import AnalogOut
21 elif detector.board.greatfet_one:
22 from adafruit_blinka.microcontroller.nxp_lpc4330.analogio import AnalogIn
23 from adafruit_blinka.microcontroller.nxp_lpc4330.analogio import AnalogOut
24 elif detector.board.any_odroid_40_pin:
25 from adafruit_blinka.microcontroller.generic_linux.sysfs_analogin import AnalogIn
26 elif detector.board.any_siemens_simatic_iot2000:
27 from adafruit_blinka.microcontroller.am65xx.analogio import AnalogIn
28 from adafruit_blinka.microcontroller.am65xx.analogio import AnalogOut
29 elif detector.chip.RK3308:
30 from adafruit_blinka.microcontroller.generic_linux.sysfs_analogin import AnalogIn
31 elif detector.chip.RK3399:
32 from adafruit_blinka.microcontroller.generic_linux.sysfs_analogin import AnalogIn
33 elif detector.chip.RK3588:
34 from adafruit_blinka.microcontroller.generic_linux.sysfs_analogin import AnalogIn
35 elif detector.chip.RK3568:
36 from adafruit_blinka.microcontroller.generic_linux.sysfs_analogin import AnalogIn
37 elif detector.chip.RK3566:
38 from adafruit_blinka.microcontroller.generic_linux.sysfs_analogin import AnalogIn
39 elif detector.chip.RV1103:
40 from adafruit_blinka.microcontroller.generic_linux.sysfs_analogin import AnalogIn
41 elif detector.chip.RV1106:
42 from adafruit_blinka.microcontroller.generic_linux.sysfs_analogin import AnalogIn
43 elif detector.chip.IMX6ULL:
44 from adafruit_blinka.microcontroller.generic_linux.sysfs_analogin import AnalogIn
45 elif detector.chip.STM32MP157:
46 from adafruit_blinka.microcontroller.generic_linux.sysfs_analogin import AnalogIn
47 elif detector.chip.A10:
48 from adafruit_blinka.microcontroller.generic_linux.sysfs_analogin import AnalogIn
49 elif detector.chip.A20:
50 from adafruit_blinka.microcontroller.generic_linux.sysfs_analogin import AnalogIn
51 elif "sphinx" in sys.modules:
53 elif detector.board.pico_u2if:
54 from adafruit_blinka.microcontroller.rp2040_u2if.analogio import (
55 AnalogIn_Pico as AnalogIn,
57 elif detector.board.feather_u2if:
58 from adafruit_blinka.microcontroller.rp2040_u2if.analogio import (
59 AnalogIn_Feather as AnalogIn,
61 elif detector.board.qtpy_u2if:
62 from adafruit_blinka.microcontroller.rp2040_u2if.analogio import (
63 AnalogIn_QTPY as AnalogIn,
65 elif detector.board.itsybitsy_u2if:
66 from adafruit_blinka.microcontroller.rp2040_u2if.analogio import (
67 AnalogIn_ItsyBitsy as AnalogIn,
69 elif detector.board.OS_AGNOSTIC_BOARD:
70 from adafruit_blinka.microcontroller.generic_agnostic_board.analogio import AnalogIn
71 from adafruit_blinka.microcontroller.generic_agnostic_board.analogio import (
75 raise NotImplementedError("analogio not supported for this board.")