APSD9960手势转接板的circuitpython驱动程序

adafruit-circuitpython-apds9960的Python项目详细描述


简介

Documentation StatusDiscordBuild Status

ApDS960是一种检测手势、接近检测的专用芯片。 以及I2C以上的环境光颜色 Adafruit as a breakout

安装和依赖项

此驱动程序取决于:

请确保circuitpython文件系统上的所有依赖项都可用。 这很容易通过下载来实现 the Adafruit library and driver bundle

从pypi安装

在支持的gnu/linux系统(如raspberry pi)上,可以在本地安装驱动程序from PyPI。为当前用户安装:

pip3 install adafruit-circuitpython-apds9960

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

sudo pip3 install adafruit-circuitpython-apds9960

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

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

用法示例

硬件设置

将车辆识别号连接到3.3伏或5伏电源,接地连接到接地,将SCL和SDA连接到相应的针脚。

基础知识

当然,您必须导入I2C总线设备、板插脚和库:

fromboardimportSCL,SDA,A1fromadafruit_apds9960.apds9960importAPDS9960importbusioimportdigitalio

要设置设备以收集数据,请使用SCL初始化I2C设备 和SDA管脚。然后初始化库。可选地提供中断 用于邻近检测的PIN。

int_pin=digitalio.DigitalInOut(A1)i2c=busio.I2C(SCL,SDA)apds=APDS9960(i2c,interrupt_pin=int_pin)

手势

要获取手势,请先查看手势是否可用,然后获取手势代码

gesture=apds.gesture()ifgesture==1:print("up")ifgesture==2:print("down")ifgesture==3:print("left")ifgesture==4:print("right")

颜色测量

要获取颜色度量,请启用颜色度量,等待颜色数据, 然后获取颜色数据。

apds.enable_color=Truewhilenotapds.color_data_ready:time.sleep(0.005)r,g,b,c=apds.color_dataprint("r: {}, g: {}, b: {}, c: {}".format(r,g,b,c))

邻近检测< EH3> 要检查接近的对象,先查看是否有可用的手势,然后获得手势代码< >
apds.enable_proximity=True# set the interrupt threshold to fire when proximity reading goes above 175apds.proximity_interrupt_threshold=(0,175)# enable the proximity interruptapds.enable_proximity_interrupt=TruewhileTrue:ifnotinterrupt_pin.value:print(apds.proximity())# clear the interruptapds.clear_interrupt()

贡献

欢迎投稿!请阅读我们的Code of Conduct 在帮助这个项目保持热情之前。

本地建筑

要在本地构建此库,您需要安装 circuitpython-travis-build-tools包装。

安装后,请确保您处于虚拟环境中:

然后运行生成:

斯芬克斯文件

sphinx用于根据代码中的rst文件和注释构建文档。第一, 安装依赖项(请随意重用上面的虚拟环境):

python3 -m venv .env
source .env/bin/activate
pip install Sphinx sphinx-rtd-theme

现在,激活虚拟环境后:

cd docs
sphinx-build -E -W -b html . _build/html

这将把文档输出到docs/_build/html。在浏览器中打开index.html以 查看它们。它还将(由于-w)错误的任何警告,像特拉维斯将。这是个很好的方法 本地验证它将通过。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
异常如何在java中优雅地处理FileNotFoundexception   java线程卡在BlockingQueue上。无缘无故   类网格程序w/java   StrutsJava:动态应用Velocity脚本   java在运行时重写/禁用方面   java Apache POI无法正确读取Excel单元格中的秒数   具有不同用户权限的Java文件夹/文件创建   java我可以检查Firebase ValueEventListener onDataChanged是否已被调用吗?   尽管获得了用户权限,java Android开发文件权限仍被拒绝   java如何使用JPA映射map<EnumType,Double>?   java是否使用UI线程显示toast消息?   JAVAlang.IllegalArgumentException:不支持的元素:rss   java Android setRequestedOrientation活动和视图生命周期   安卓如何在Java中定义支票盒?   在Java中,对于大输入,字符串解析长期失败   使Java在XP中按计划任务运行读取env用户变量时出现问题   任务“:workflowsjava:NodeDriver”的梯度执行失败。main()   java如何检测是否只设置了部分属性?   在客户端web服务上使用JBossWS时,java无法找到/更改log4j的默认配置   java LibGDX写入文本文件并接收各种错误