跳转到主要内容

一个用于在不内置bitbangio模块的情况下为CircuitPython添加位带I2C和SPI的库

项目描述

介绍

Documentation Status Discord Build Status Code Style: Black

一个用于在不内置bitbangio模块的情况下为CircuitPython添加位带I2C和SPI的库。该接口旨在与bitbangio相同,因此没有位顺序或芯片选择功能。如果您的板支持bitbangio,建议使用该功能,因为其时序应该更可靠。

依赖项

此驱动程序依赖于

请确保所有依赖项都可在CircuitPython文件系统中使用。这可以通过下载 Adafruit库和驱动程序包 来轻松实现。

从PyPI安装

在支持GNU/Linux系统(如Raspberry Pi)上,您可以从PyPI 本地安装此驱动程序。为当前用户安装

pip3 install adafruit-circuitpython-bitbangio

为系统范围安装(在某些情况下可能需要)

sudo pip3 install adafruit-circuitpython-bitbangio

在当前项目的虚拟环境中安装

mkdir project-name && cd project-name
python3 -m venv .venv
source .venv/bin/activate
pip3 install adafruit-circuitpython-bitbangio

使用示例

"""
This example is for demonstrating how to retrieving the
board ID from a BME280, which is stored in register 0xD0.
It should return a result of [96]
"""

import board
import digitalio
import adafruit_bitbangio as bitbangio

# Change these to the actual connections
SCLK_PIN = board.D6
MOSI_PIN = board.D17
MISO_PIN = board.D18
CS_PIN = board.D5

cs = digitalio.DigitalInOut(CS_PIN)
cs.switch_to_output(value=True)

spi = bitbangio.SPI(SCLK_PIN, MOSI=MOSI_PIN, MISO=MISO_PIN)
cs.value = 0
while not spi.try_lock():
    pass
spi.write([0xD0])
data = [0x00]
spi.readinto(data)
spi.unlock()
cs.value = 1
print("Result is {}".format(data))

文档

本库的API文档可以在Read the Docs上找到。

有关构建库文档的信息,请参阅此指南

贡献

欢迎贡献!在贡献之前,请阅读我们的行为准则,以帮助本项目保持友好。

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分布

adafruit-circuitpython-bitbangio-1.3.15.tar.gz (37.8 kB 查看哈希值)

上传时间 源代码

构建分布

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面