跳转到主要内容

适用于Raspberry Pi的Pimoroni Fan Shim的Python库

项目描述

Fan Shim for Raspberry Pi

Build Status Coverage Status PyPi Package Python Versions

安装

来自PyPi的稳定库

  • 只需运行 sudo pip install fanshim

来自GitHub的最新/开发库

  • apt install git python3-pip
  • git clone https://github.com/pimoroni/fanshim-python
  • cd fanshim-python
  • sudo ./install.sh

参考

您应首先设置一个FANShim类的实例,例如

from fanshim import FanShim
fanshim = FanShim()

风扇

用以下方法打开风扇

fanshim.set_fan(True)

用以下方法关闭它

fanshim.set_fan(False)

您还可以使用以下方法切换风扇

fanshim.toggle_fan()

您可以使用以下方法检查风扇的状态

fanshim.get_fan() # returns 1 for 'on', 0 for 'off'

LED

Fan Shim包含一个RGB APA-102 LED。

使用以下方法将其设置为任何颜色

fanshim.set_light(r, g, b)

r、g和b的参数应该是介于0和255之间的数字,描述您想要的颜色。

例如,全红色

fanshim.set_light(255, 0, 0)

按钮

Fan Shim包含一个按钮,您可以将动作绑定到按下、释放和保持事件。

当按钮被按下时执行某些操作

@fanshim.on_press()
def button_pressed():
    print("The button has been pressed!")

或者当它被释放时

@fanshim.on_release()
def button_released(was_held):
    print("The button has been pressed!")

或者当它被按下足够长的时间以触发保持时

fanshim.set_hold_time(2.0)

@fanshim.on_hold()
def button_held():
    print("The button was held for 2 seconds")

您绑定到on_release()的功能会传递一个was_held参数,这可以让您知道按钮是否被按下了比配置的保持时间更长的时间。如果您想将一个动作绑定到“按下”并将另一个绑定到“保持”,您应该检查此标志并在on_release()处理程序中执行您的操作

@fanshim.on_release()
def button_released(was_held):
    if was_held:
        print("Long press!")
    else:
        print("Short press!")

要配置按钮应该保持的时间量(以秒为单位),请使用

fanshim.set_hold_time(number_of_seconds)

如果您需要停止Fan Shim轮询按钮,请使用

fanshim.stop_polling()

您可以使用以下方式重新启动:

fanshim.start_polling()

备用软件

0.0.5

  • 用APA102库替换Plasma API
  • 添加设置LED全局亮度的支持
  • 添加禁用按钮和/或LED的支持
  • 将packages/requires移动到setup.config,现在最低版本为Python 2.7

0.0.4

  • 准备Fan SHIM使用旧版Plasma API

0.0.3

  • 修复:降低轮询频率并使其可定制,针对PR #6

0.0.2

  • 修复:修复退出时的错误

0.0.1

  • 初始发布

项目详情


下载文件

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

源代码分发

fanshim-0.0.5.tar.gz (5.1 kB 查看散列)

上传时间

构建的分发

fanshim-0.0.5-py3-none-any.whl (4.8 kB 查看散列)

上传时间 Python 3

fanshim-0.0.5-py2-none-any.whl (4.8 kB 查看散列)

上传时间 Python 2

支持者:

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