一个python模块,用于控制官方覆盆子pi 7“触摸显示屏的功率和亮度。

rpi-backlight的Python项目详细描述


RPI背光

Travis CILicensePyPIDocumentationBlackIssues

A Python module for controlling power and brightness of the official Raspberry Pi 7" touch display.

Example

注意:此gif是使用旧v1 api创建的,因此请不要将其用作api引用

功能

  • 更改显示亮度平滑突然
  • 打开或关闭显示器电源
  • 获取当前亮度
  • 获得最大亮度
  • 获取显示器电源状态(开/关)
  • 命令行界面
  • 图形用户界面

要求

  • 一个raspberry pi包括一个正确组装的7“触摸显示屏v1.1或更高版本 (查看显示器的电路板以查看其版本)运行基于Linux的操作系统
  • Python3.5+
  • 可选:pygobject对于gui,已经安装在最近的raspbian上

安装

从pypi安装:

$ pip3 install rpi-backlight

注意:创建此udev规则以更新权限,否则必须运行 python代码、gui和cli在更改电源或亮度时作为根用户:

$echo'SUBSYSTEM=="backlight",RUN+="/bin/chmod 666 /sys/class/backlight/%k/brightness /sys/class/backlight/%k/bl_power"'| sudo tee -a /etc/udev/rules.d/backlight-permissions.rules

模拟器

用于在没有物理显示的情况下进行测试(例如,在主Linux/MacOS/Windows计算机上) 你可以用^{}

用法

api

python shell中的示例:

>>>fromrpi_backlightimportBacklight>>>>>>backlight=Backlight()>>>backlight.brightness100>>>backlight.brightness=50>>>backlight.brightness50>>>>>>withbacklight.fade(duration=1):...backlight.brightness=0...>>>backlight.fade_duration=0.5>>># subsequent `backlight.brightness = x` will fade 500ms>>>>>>backlight.powerTrue>>>backlight.power=False>>>backlight.powerFalse>>>

cli

打开终端并运行rpi-backlight

$ rpi-backlight -b 100$ rpi-backlight --set-brightness 20 --duration 1.5
$ rpi-backlight --get-brightness
20$ rpi-backlight --get-power
on$ rpi-backlight --p off
$ rpi-backlight --get-power
off$ rpi-backlight --set-power off :emulator:
$

有关所有可用选项,请参见docs

图形用户界面

打开终端并运行rpi-backlight-gui

Graphical User InterfaceGraphical User Interface (2)

向lxde面板添加快捷方式

Panel result

docs

测试

测试使用pytest,安装时使用pip3 install pytest

现在,从存储库根目录运行:

$ python3 -m pytest

贡献

请免费打开一个问题的错误报告和讨论新的功能-拉新的功能或错误修复的请求也欢迎!

许可证

源代码和这个存储库中的所有其他文件都是由mit授权的 许可证,因此您可以轻松地在自己的项目中使用它。参见^{}了解 更多信息。

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

推荐PyPI第三方库


热门话题
java是否存在这样一种场景:Java7的Hashmap实现优于Java8的实现   java如何打印这些完整的数组?   java BuildException:未能执行aapt   java如何使用类。未知类型的集合返回的cast()   java准备语句返回错误的值   webview 安卓中的java显示身份验证对话框   java如何重命名列名JPA Hibernate   java查询从特定用户和特定时间段的Oracle表(通过比较原始表和备份表)中选择修改的行   java Youtube视频仅在三星S6设备上加载时自动暂停   未调用java RecyclerView getItemViewType   使用JSch setCommand执行带有源选项的java Shell ping命令时失败   java Hibernate:无法删除|删除分离的实例   Java Spring@MappedSuperclass字段作为子类中的@Id字段   java Android:确定单击了哪个按钮,因为该按钮未在xml中定义   如何计算java阵列内存使用率   使用Java查找按字母顺序排列的第一个字符串   javascript注销功能刷新页面,但页面仍已登录   当接口作为参数提供时,java依赖项注入不起作用   java中带原语的字符串扭曲