X-Git-Url: https://git.ayoreis.com/Adafruit_Blinka-hackapet.git/blobdiff_plain/df96dea96ee239b1459b01181ba1ac1ca0a45064..4852f3298a59665563530bbf66f3641eccbe39bd:/README.rst diff --git a/README.rst b/README.rst index 24db28b..30c64ed 100755 --- a/README.rst +++ b/README.rst @@ -6,7 +6,7 @@ Introduction :alt: Documentation Status .. image:: https://img.shields.io/discord/327254708534116352.svg - :target: https://discord.gg/nBQh6qu + :target: https://adafru.it/discord :alt: Discord .. image:: https://travis-ci.com/adafruit/Adafruit_Blinka.svg?branch=master @@ -17,27 +17,37 @@ Introduction :target: https://github.com/psf/black :alt: Code Style: Black -This repository contains a selection of packages mirroring the CircuitPython API -on hosts running micropython. Working code exists to emulate the CircuitPython packages; +This repository contains a selection of packages emulating the CircuitPython API +for devices or hosts running CPython or MicroPython. Working code exists to emulate these CircuitPython packages: -* **board** - breakout-specific pin identities -* **microcontroller** - chip-specific pin identities * **analogio** - analog input/output pins, using pin identities from board+microcontroller packages -* **digitalio** - digital input/output pins, using pin identities from board+microcontroller packages * **bitbangio** - software-driven interfaces for I2C, SPI +* **board** - breakout-specific pin identities * **busio** - hardware-driven interfaces for I2C, SPI, UART -* **time** * - substitute functions monkey-patched to time module +* **digitalio** - digital input/output pins, using pin identities from board+microcontroller packages +* **keypad** - support for scanning keys and key matrices +* **microcontroller** - chip-specific pin identities +* **micropython** - MicroPython-specific module +* **neopixel_write** - low-level interface to NeoPixels +* **pulseio** - contains classes that provide access to basic pulse IO (PWM) +* **pwmio** - contains classes that provide access to basic pulse IO (PWM) +* **rainbowio** - provides the colorwheel() function +* **usb_hid** - act as a hid-device using usb_gadget kernel driver +For details, see the `Blinka API reference +`_. Dependencies ============= -The Micropython compatibility layers described above are intended to provide a CircuitPython-like API for devices which -are running CPython or Micropython. Since corresponding packages should be built-in to any standard -CircuitPython image, they have no value on a device already running CircuitPython and would likely conflict in unhappy ways. +The emulation described above is intended to provide a +CircuitPython-like API for devices which are running CPython or +Micropython. Since corresponding packages should be built-in to any +standard CircuitPython image, they have no value on a device already +running CircuitPython and would likely conflict in unhappy ways. The test suites in the test/src folder under **testing.universal** are by design -intended to run on *either* CircuitPython *or* Micropython+compatibility layer to prove conformance. +intended to run on *either* CircuitPython *or* CPython/Micropython+compatibility layer to prove conformance. Installing from PyPI ===================== @@ -67,15 +77,27 @@ To install in a virtual environment in your current project: Usage Example ============= -At the time of writing (`git:7fc1f8ab `_), -the following sequence runs through some basic testing of the digitalio compatibility layer... +The pin names may vary by board, so you may need to change the pin names in the code. This +example runs on the Raspberry Pi boards to blink an LED connected to GPIO 18 (Pin 12): .. code-block:: python - from testing import test_module_name - test_module_name("testing.universal.digitalio") + import time + import board + import digitalio + + PIN = board.D18 + + print("hello blinky!") + + led = digitalio.DigitalInOut(PIN) + led.direction = digitalio.Direction.OUTPUT -An example log from running the suites is `here `_ . + while True: + led.value = True + time.sleep(0.5) + led.value = False + time.sleep(0.5) Contributing ============ @@ -97,7 +119,7 @@ install dependencies (feel free to reuse the virtual environment from above): python3 -m venv .env source .env/bin/activate - pip install Sphinx sphinx-rtd-theme + pip install Sphinx sphinx-rtd-theme Adafruit-PlatformDetect Now, once you have the virtual environment activated: